Haptic Smart Knob Does Several Jobs

A knob is a knob, a switch is a switch, and that’s that, right? And what about those knobs that have detents, set in stone at the time of manufacturing? Oh, and those knobs that let you jog left to right and then snap back to center — that can’t be modified…right? Well, you likely know where this is going, and in the video below the break, [scottbez1] shows off a new open source haptic input knob that can be all of these things with just some configuration changes!

The list of possibilities is long: virtual snap points, virtual spring loading, virtual detents, virtual end points. It’s a virtual smörgåsbord of configuration options that make this haptic smart knob a one stop shop for all of your knob needs. This is all possible because the knob contains a high resolution magnetic encoder chip that has a single degree resolution. The sensor is coupled, through software, to a brushless DC motor. The round LCD gives visual feedback as well.

As [Myself] on the Hackaday Discord channel noted, having configurable spacing and strength for detents, springs, and stops, is nothing short of incredible. Being able to reconfigure the knob at-will means that it can become context sensitive. It’s wonderfully unique and it’s open source, so you can make your own with the information available at GitHub.

And according to its creator, the only thing the Haptic Smart Knob can’t do is do your taxes or blend your margarita. Well, it’s open source, so perhaps some of our more enterprising readers can submit just the right pull request.

This isn’t Hackaday’s first Motorized Volume Knob feature, but it might be one of the neatest we have seen so far. Thanks to [mattvenn] on the Hackaday Discord server for the great tip!

Continue reading “Haptic Smart Knob Does Several Jobs”

Top side of the VL670 breakout board, with two USB connectors and the VL670 chip in the center.

A Chip To Bridge The USB 2 – USB 3 Divide

On Twitter, [whitequark] has  found and highlighted an intriguing design – a breakout board for the VL670, accompanied by an extensive yet very easy to digest write-up about its usefulness and inner workings. The VL670 is a chip that addresses a surprising problem – converting USB 2.0 signals into USB 3.0.

If you have a USB 2.0 device and a host with only USB 3.0 signals available, this chip is for you. It might be puzzling – why is this even needed? It’s about the little-known dark secret of USB3, that anyone can deduce if they ever have to deal with a 9-pin USB 3.0 connector where one of the three differential pairs doesn’t quite make contact.

When you see a blue “3.0” port, it’s actually USB 2 and USB 3 — two separate interfaces joined into a single connector. USB 3 uses two single-directional differential pairs, akin to PCI-E, whereas USB 2 uses a single bidirectional one, and the two interfaces on a blue connector operate basically independently of each other. There’s many implications to this that are counterintuitive if you simply take “USB 3.0” for “faster backwards-compatible USB”, and they have painful consequences.

For instance, USB 3 hub ICs have two separate hub entities inside – one for USB 3 and one for USB 2. Even if you have a USB 3 hub plugged into a USB 3 port, multiple USB 2 devices plugged into it still cannot break through the USB 2 uplink limit of 480 MBps. If you ever thought that a faster hub with a faster uplink would fix your USB 2 device speed problems – USB-IF engineers, apparently, thought differently; and you might have to find a workaround for your “many cheap SDRs and Pi 4 in a box” setup. Continue reading “A Chip To Bridge The USB 2 – USB 3 Divide”

Depraz Mouse Clone Has A USB Tail

In 1980, Logitech started selling a round, three-button input device known the Depraz mouse or Swiss mouse, which was made by — you guessed it — a Swiss company called Depraz. At the time, Logitech was primarily a software development outfit, but the success they saw in selling the Depraz mouse led them to leave logic and looping behind in order to pursue peripherals permanently.

[John Floren] recently decided to make a modern clone called the Bellwether mouse. You may remember that [John] previously restored a vintage Depraz to working condition. The only problem is that ‘working condition’ for a 40-year-old mouse is underwhelming on a modern computer.

The Bellwether mouse sports a high-end Pixart PMW3389 sensor and uses a PIC16F1454 for the controller. The most complicated part was dealing with voltage levels, because the PIC wants 5 V and the sensor only 2 V. The firmware is a mix of Microchip’s USB HID demo code and [Daniel Kao]’s Arduino code for the PWM3389 sensor.

Unlike the original Depraz’s male DE-9 connector, this updated version connects via USB. We like that [John] learned FreeCAD in order to make the body, and especially that he glued fishing weights to the underside for more heft. Check it out in action after the break. We were most curious about those switches, which at first glance look like they could be keyswitches with DSA keycaps. But no, they’re just some cool switches from the depths of Digi-Key.

Want to print yourself something more ergonomic? Perhaps you’ll click with Ploopy, the open-source trackball.

Continue reading “Depraz Mouse Clone Has A USB Tail”

A purple 3D-printed case with an LCD screen on the front and Pikachu on top

Avoid Repetitive Strain Injury With Machine Learning – And Pikachu

The humble mouse has been an essential part of the desktop computing experience ever since the original Apple Macintosh popularized it in 1984. While mice enabled user-friendly GUIs, thus making computers accessible to more people than ever, they also caused a significant increase in repetitive strain injuries (RSI). Mainly caused by poor posture and stress, RSI can lead to pain, numbness and tingling sensations in the hand and arm, which the user might only notice when it’s too late.

Hoping to catch signs of RSI before it manifests itself, [kutluhan_aktar] built a device that allows him to track mouse fatigue. It does so through two sensors: one that measures galvanic skin response (GSR) and another that performs electromyography (EMG). Together, these two measurements should give an indication of the amount of muscle soreness. The sensor readout circuits are connected to a Wio Terminal, a small ARM Cortex-M4 development board with a 2.4″ LCD.

However, calculating muscle soreness is not as simple as just adding a few numbers together; in fact the link between the sensor data and the muscles’ state of health is complicated enough that [kutluhan] decided to train a TensorFlow artificial neural network (ANN), taking into account observed stress levels collected in real life. The network ran on the Wio while he used the mouse, pressing buttons to indicate the amount of stress he experienced. After a few rounds of training he ended up with a network that reached an accuracy of more than 80%.

[kutluhan] also designed a rather neat 3D printed enclosure to house the sensor readout boards as well as a battery to power the Wio Terminal. Naturally, the case was graced by a 3D rendition of Pikachu on top (get it? a mouse Pokémon that can paralyze its opponents!). We’ve seen [kutluhan]’s fondness for Pokémon-themed projects in his earlier Jigglypuff CO2 sensor.

Although the setup with multiple sensors doesn’t seem too practical for everyday use, the Mouse Fatigue Estimator might be a useful tool to train yourself to keep good posture and avoid stress while using a mouse. If you also use a keyboard (and who doesn’t?), make sure you’re using that correctly as well.

Continue reading “Avoid Repetitive Strain Injury With Machine Learning – And Pikachu”

An “unbusy” USB-C Port Doubles-up For JTAG Programming

Board space is a premium on small circuit board designs, and [Alvaro] knows it. So instead of adding a separate programming port, he’s found a niche USB-C feature that lets him use the port that he’s already added both for its primary application and for programming the target microcontroller over JTAG. The result is that he no longer needs to worry about spending precious board space for a tiny programming port; the USB-C port timeshares for both!

In a Twitter thread (Unrolled Link), [Alvaro] walks us through his discovery and progress towards an encapsulated solution. It turns out that the USB-C spec supports a “Debug-Accessory Mode” specification, where some pins are allowed to be repurposed if pins CC1 and CC2 are pulled up to Logic-1. Under these circumstances, the pin functions are released, and a JTAG programmer can step in to borrow them. To expose the port to a programmer, [Alvaro] cooked up a small breakout board with a USB-C plug and separate microcontroller populated on it.

This board also handles a small quirk. Since [Alvaro’s] choice of programming pins aren’t reversible, the USB-C plug will only work one of the two ways it can be plugged in. To keep the user informed, this breakout board sports a red LED for incorrect orientation and a green LED for correct orientation–nifty. While this design quirk sacrifices reversibility, it preserves the USB 2.0 D+ and D- pins while also handling some edge cases with regard to the negotiating for access to the port.

Stick through [Alvaro]’s Twitter thread for progress pics and more details on his rationale behind his pin choices. Who knows? With more eyes on the USB-C feature, maybe we’ll see this sort of programming interface become the norm?

[Alvaro] is no stranger to Hackaday. In fact, take a tour back to our very first Supercon to see him chat about shooting lasers at moving targets to score points on a DEFCON challenge in the past

Inputs Of Interest: Canadian MCM/70 Was Kinda Like The First Cyberdeck

Not to start a debate in the comments or anything, but what would you say was the first microcomputer, or personal computer? We suppose the answer depends on your definition. Some would argue that the PC was born at Xerox PARC with a curious portrait-mode display and a three-button mouse, while others would say it all began in a garage in either Los Altos, California or Albuquerque, New Mexico.

If you take the term ‘computer’ to mean that which can crunch big numbers fairly quickly, then the Canadian-made MCM/70 is arguably the first personal computer in that it is portable, has an alphanumeric keyboard, a display, and supports cassette storage, which could be used to extend the 8K of memory. It was an all-in-one computing solution, and it could have an optional telephone modem built in. This was a forward-thinking machine for 1974.

Continue reading “Inputs Of Interest: Canadian MCM/70 Was Kinda Like The First Cyberdeck”

Dead Mouse Reincarnated As Macropad

[Taylor] wanted to join the cool kids club and build a macropad for CAD work and video editing, but didn’t want to do it the traditional way with an Arduino. We can get behind that. In fact, [Taylor] wanted to reuse some old piece of tech if possible, which is even better. With a little luck, they found a used gaming mouse with a set of 12 tiny macro buttons on the side that were ripe for reuse. Only the scroll wheel was reported to be broken.

After verifying that all the macro buttons worked, [Taylor] tore down the mouse and extracted the daughterboard, then removed the sticker that held the rubber dome actuators in place. Then they wired up twelve Kailh box jades to the pads, doing some nice diagonal work with bare 30 AWG wire to join all the common pins together.

[Taylor] designed and printed a simple enclosure that’s a slim 21.5 mm tall including the switch plate, and then made a dozen keycaps to match. That was until [Taylor] remembered some relegendable keycaps they had lying around — the kind that let you print your own labels and trap them underneath clear plastic. The only problem was that they are stemmed for some cylindrical actuator, so [Taylor] designed an adapter piece so they would fit on MX-style sliders. Be sure to check out the build video after the break.

If for some reason box jades aren’t clicky and satisfying enough for you, try making your own maglev Hall-effect switches. These days, you even have design options.

Continue reading “Dead Mouse Reincarnated As Macropad”