3D Scanning A Room With A Steam Deck And A Kinect

It may not be obvious, but Valve’s Steam Deck is capable of being more than just a games console. Demonstrating this is [Parker Reed]’s experiment in 3D scanning his kitchen with a Kinect and Steam Deck combo, and viewing the resulting mesh on the Steam Deck.

The two pieces of hardware end up needing a lot of adapters and cables.

[Parker] runs the RTAB-Map software package on his Steam Deck, which captures a point cloud and color images while he pans the Kinect around. After that, the Kinect’s job is done and he can convert the data to a mesh textured with the color images. RTAB-Map is typically used in robotic applications, but we’ve seen it power completely self-contained DIY 3D scanners.

While logically straightforward, the process does require some finessing and fiddling to get it up and running. Reliability is a bit iffy thanks to the mess of cables and adapters required to get everything hooked up, but it does work. [Parker] shows off the whole touchy process, but you can skip a little past the five minute mark if you just want to see the scanning in action.

The Steam Deck has actual computer chops beneath its games console presentation, and we’ve seen a Steam Deck appear as a USB printer that saves received print jobs as PDFs, and one has even made an appearance in radio signal direction finding.

Continue reading “3D Scanning A Room With A Steam Deck And A Kinect”

Illustrated Kristina with an IBM Model M keyboard floating between her hands.

Keebin’ With Kristina: The One With The Music Typewriter

This edition’s community build comes from the Yes They Could, But Should They Have? file. Well, I ultimately say yes, this is intriguing. Redditor [dj_edit] looked at the venerable Model M and thought, this buckling-spring masterpiece can yet be improved upon. Yeah! Well, to each their own. I must say that it does sound great, especially with the solenoid feedback enabled via rotary encoder. Just check out the typing test.

To be clear, this is essentially a new keyboard that fits inside a Model M case, but that alone is quite a feat, especially if you consider the curvature of the backplate. Because of this hurdle, [dj_edit] went with 1 mm FR4 for the switch PCB, which is a nice compromise of sturdiness and flexibility.

Underneath those stunning reproduction keycaps are Kailh box white switches, which are pretty chonky-sounding on their own. But turn on that sweet solenoid action and you really get noisy.

Those box whites are sitting in hot-swap sockets, a design decision that kind of made things difficult because of the curvature. [dj_edit] ended up using an acrylic plate that gets bent to match the curvature by the switches themselves.

Continue reading “Keebin’ With Kristina: The One With The Music Typewriter”

PiEEG Offers Affordable Brain-Computer Interface

One day in the future, we may interact with our electronic devices not with physical input or even voice commands, but simply by thinking about what we want to do. Such brain–computer interfaces (BCIs), combined with machine learning, could allow us to turn our ideas into reality faster and with less effort than ever before — imagine being able to produce a PCB design simply by thinking about how the completed circuit would work. Of course as an assistive technology, BCIs would be nothing less than life-changing for many.

Today BCIs are in their infancy, but that doesn’t mean there isn’t room for hackers and makers to experiment with the concept. [Ildar Rakhmatulin] has been working on low-cost open source BCIs for years, and with the recent release of his PiEEG on Crowd Supply, thinks he’s finally found an affordable solution that will let individuals experiment with this cutting edge technology.

Implemented as a shield that can be connected to a Raspberry Pi 3 or 4, the PiEEG features 8 channels for connecting wet or dry electrodes that can measure biosignals such as those used in electroencephalography (EEG), electromyography (EMG), and electrocardiography (ECG). With the electrodes connected, reading these biosignals is as easy as running a Python script. While primarily designed for neuroscience experimentation, [Ildar] says the device is also useful for learning more about signal processing, filters, and machine learning.

Continue reading “PiEEG Offers Affordable Brain-Computer Interface”

Modern Dance Or Full-Body Keyboard? Why Not Both!

If you felt in your heart that Hackaday was a place that would forever be free from projects that require extensive choreography to pull off, we’re sorry to disappoint you. Because you’re going to need a level of coordination and gross motor skills that most of us probably lack if you’re going to type with this full-body, semaphore-powered keyboard.

This is another one of [Fletcher Heisler]’s alternative inputs projects, in the vein of his face-operated coding keyboard. The idea there was to be able to code with facial gestures while cradling a sleeping baby; this project is quite a bit more expressive. Pretty much all you need to know about the technical side of the project can be gleaned from the brilliant “Hello world!” segment at the start of the video below. [Fletcher] uses OpenCV and MediaPipe’s Pose library for pose estimation to decode the classic flag semaphore alphabet, which encodes characters in the angle of the signaler’s extended arms relative to their body. To extend the character set, [Fletcher] added a squat gesture for numbers, and a shift function controlled by opening and closing the hands. The jazz-hands thing is just a bonus.

Honestly, the hack here is mostly a brain hack — learning a complex series of gestures and stringing them together fluidly isn’t easy. [Fletcher] used a few earworms to help him master the character set and tune his code; the inevitable Rickroll was quite artistic, and watching him nail the [Johnny Cash] song was strangely satisfying. We also thoroughly enjoyed the group number at the end. Ooga chaka FTW.

Continue reading “Modern Dance Or Full-Body Keyboard? Why Not Both!”

A New Gaming Shell For A Mouse

For some gamers, having a light fast polling mouse is key. [Ali] of [Optimum Tech] loved his 23-gram mouse but disliked the cord. Not seeing any options for a comparable wireless mouse, he decided to make one himself.

Trying to shortcut the process, he started with an existing wireless mouse from Razer weighing in at a hefty 58 grams. The PCB on its own weighed in at 11 grams and after swapping to a smaller battery, [Ali] had a budget of 10 to 15 grams for the shell. Here is where the meat of this project lives. The everyday objects in your life like the poles that hold up traffic signals or the device you’re reading this article on are looked at and used without much thought into why they are what they are. The design of everyday things is a surprisingly deep field and designing a curvy mouse is no exception. With a 3d version of the PCB, he went through several iterations of how to lay out the mouse triggers. The scroll wheel was removed as he didn’t need it for the game he was playing.

The shell was printed in resin and came out great. [Ali] found himself with an ultralight 4000hz wireless mouse that was thoroughly enjoyable. It’s a great example of someone diving in and designing something for their personal use. Whether it’s a mouse or a chair, we love anyone taking on a design challenge. Video after the break.

Continue reading “A New Gaming Shell For A Mouse”

Showing the dock PCB with a Pi Zero attached and wired up onto it

Is Your USB-C Dock Out To Hack You?

In today’s installment of Betteridge’s law enforcement, here’s an evil USB-C dock proof-of-concept by [Lachlan Davidson] from [Aura Division]. We’ve seen malicious USB devices aplenty, from cables and chargers to flash drives and even suspicious USB fans. But a dock, however, is new. The gist is simple — you take a stock dock, find a Pi Zero W and wire it up to a USB 2.0 port tapped somewhere inside the dock. Finding a Pi Zero is unquestionably the hardest part in this endeavor — on the software side, everything is ready for you, just flash an SD card with a pre-cooked malicious image and go!

On the surface level, this might seem like a cookie-cutter malicious USB attack. However, there’s a non-technical element to it; USB-C docks are becoming more and more popular, and with the unique level of convenience they provide, the “plug it in” temptation is much higher than with other devices. For instance, in shared workspaces, having a USB-C cable with charging and sometimes even a second monitor is becoming a norm. If you use USB-C day-to-day, the convenience of just plugging a USB-C cable into your laptop becomes too good to pass up on.

This hack doesn’t exactly use any USB-C specific technical features, like Power Delivery (PD) – it’s more about exploiting the convenience factor of USB-C that incentivizes you to plug a USB-C cable in, amplifying an old attack. Now, BadUSB with its keystroke injection is no longer the limit — with a Thunderbolt-capable USB-C dock, you can connect a PCIe device to it internally and even get access to a laptop’s RAM contents. Of course, fearing USB-C cables is not a viable approach, so perhaps it’s time for us to start protecting from BadUSB attacks on the software side.

Haptick: The Strain Gauge Based 6DoF Controller

Six degrees of freedom (6DoF) controllers are used for manipulating an object in a CAD or 3d modeling program and are often called spacemice. You can twist it, push it, and even bop it. Most work with optical encoders, shining an LED through a slit to some form of photodetector on the other side. [Matthew Schubert] wanted to make his own spacemouse, but had some new ideas of how to go about it. His two-part project, dubbed haptic, focuses on measuring the forces, not the displacement.

He decided to try thick-film resistors as strain gauges and revisit load cells and proper strain gauges later. The actual structure quickly converged on the Stewart Platform, formed from three custom PCBs. A base to sit on, a knob for the top, and a middle board designed to take the strain with SMD resistors. A Teensy 3.2 talks to the ADS131M06 ADC and streams 4k samples per second to the host computer via serial. For prototyping, the calculations were done on the PC. Continue reading “Haptick: The Strain Gauge Based 6DoF Controller”