D-POINT: A Digital Pen With Optical-Inertial Tracking

[Jcparkyn] clearly had an interesting topic for their thesis project, and was conscientious enough to write up a chunk of it and release it to the wild. The project in question is a digital pen that uses some neat sensor fusion to combine the inputs from a pen-mounted gyro/accelerometer with data from an optical tracking system provided by an off-the-shelf webcam.

A six degrees of freedom (6DOF) tracking system is achieved as a result, with the pen-mounted hardware tracking orientation and the webcam tracking the 3D position. The pen itself is quite neat, with an ALPS/Alpine HSFPAR003A load sensor measuring the contact pressure transmitted to it from the stylus tip. A Seeed Xaio nRF52840 sense is on duty for Bluetooth and hosting the needed IMU. This handy little module deals with all the details needed for such a high-integration project and even manages the charging of a single 10440 lithium cell via a USB-C connector.

Positional tracking uses Visual Pose Estimation (VPE) assisted with ArUco markers mounted on the end of the stylus. A consumer-grade (i.e. uncalibrated) webcam is all that is required on the hardware side. The software utilizes the familiar OpenCV stack to unroll the effects of the webcam rolling shutter, followed by Perspective-n-Point (PnP) to estimate the pose from the corrected image stream. Finally, a coordinate space conversion is performed to determine the stylus tip position relative to the drawing surface.

The sensor fusion is taken care of with a Kalman filter, smoothed with the typical Rauch-Tung-Striebel (RTS) algorithm before being passed onto the final application. This process is running in Python using the NumPy module, as you would expect, but accelerated using the Numba JIT compiler.

Motion tracking is not news to us, we’ve seen many an implementation over the years, such as this one. But digital input pens? Why aren’t they more of a thing?

Thanks to [Oliver] for the tip!

We Like Big Keyboards And We Cannot Lie

So, let’s say you’re good at DOTA. Like, world-class good. How good do you think you’d be on a keyboard that’s 16 feet long, with a space bar the size of a person? Well, you’d need the rest of your team, that’s for sure.

Alienware have created the world’s largest mechanical keyboard and mouse, which are working, 14:1 scale representations of their AW420K keyboard and AW720M mouse. And they got Team Liquid to try it out.

While this may be a marketing ploy, it took quite a lot of work and weeks of 3D printing to faithfully reproduce those peripherals on that scale.

What’s really impressive are the custom key switches, which are described early on in the video after the break. They are nearly a foot wide with the keycap on, and they have an incredible four inches of travel.

Each of the 87 key switches is made with two snugly-fitting pieces of PVC, a thick rubber band, and of course, an actual, regular-size key switch to register the presses. Not satisfied with that, the team added a small piece of measuring tape to produce a nice clicky, tactile feedback. And, oh yeah, that space bar? The stabilizer is made from a 1″ copper pipe. Be sure to check it out in action after the break.

This just so happens to be the same size as the last keyboard we saw claiming to be the world’s largest, which was rejected from the Guinness Book because it’s not an exact replica of an existing keyboard. So, somebody call Guinness, we suppose.

Continue reading “We Like Big Keyboards And We Cannot Lie”

Flash Programmer Shows Some Nifty Tricks

A handy tool to have on the bench is a Flash chip programmer, and the ones based around the CH341A USB bus converter chip are readily available. But the chip is capable of so much more than simply programming nonvolatile memory, so [Tomasz Ostrowski] has created a utility program that expands its capabilities. The software provides easy access to a range of common i2c peripherals. He’s got it talking to smart batteries, GPIOs, environmental sensors, an OLED display, and even an FM radio module. The code can all be found in a GitHub repository. The software is Windows-only so no fun and games for Linux users yet — but since it’s open source, new features are just a pull request away.

The CH341A is much more than an i2C controller, it also supports a surprising range of other interfaces including SPI, UARTs, and even a bidirectional parallel printer port. Maybe this software will serve to fire the imagination of a few others, and who knows, we could see more extended use of this versatile chip. Oddly we’ve featured these programmer boards before, though in a tricky flashing job.

Custom Aluminum Monitor Stand For The Home Office

Monitor stands vary wildly in price, from a few cents for a pile of books from a thrift store to hundreds of dollars. One trendy style, as [Steven Bennett] puts it, is the “General Grievous,” with adjustable arms splayed around a central pole. While effective, it is not particularly aesthetically pleasing. [Steven] set out to make his monitor stand out of extruded aluminum.

[Steven] started with a cantilever design with a VESA adapter and a c-clamp. With some 3D-printed adapter brackets, he could attach them directly to the tracks in the aluminum. Of course, the 3D printed parts, while great for prototyping, might not be the best choice for the loads he was planning on. He sent it off to a fab to get some powder-coated steel parts. After using it for a few months, he revisited the drawing board. Moving away from the cantilever with an offset center post, he switched to a single 1×4 piece of aluminum. This allowed him to create 3D-printed attachments to hold his headphones, flash drives, and cables. A build guide is available online, as well as printable add-ons.

While it doesn’t have a built-in computer like this glorious wooden stand, we can’t deny the utility or the aesthetic of the aluminum version.

Video after the break.

Continue reading “Custom Aluminum Monitor Stand For The Home Office”

A Network Adapter Thinks It’s A CD-ROM. Restore Its True Calling!

A mildly annoying trend over recent years has been for USB hardware devices to expose a CD-ROM drive containing their drivers for Windows users. Of course there’s no real CD in there, instead the software lives on a piece of flash memory. It’s usually not a problem as they also appear on the USB bus as their true calling, but not always.

[Martijn Braam] found himself the lucky owner of a USB network adapter which seemed to see its only purpose in life to be such a drive, and since heĀ  wasn’t anxious to make another piece of e-waste, he broke it open to see if the fake CD drive could be disabled.

Inside the flimsy case he found a CoreChips SR9700 Ethernet controller, a chip for which there seems to be very little data in the wild. On the underside of the PCB was a flash chip, and as expected disabling this caused the CD drive to disappear to be replaced by the expected network card.

It’s a simple but useful hack, but there’s a little bonus for those unaware in the write-up. There’s a piece of software called USB_modeswitch that can perform this task on many cards, which is worth storing away in the event that it’s needed.

Toy Gaming Controller Makes The Big Leagues

Some of the off-brand video game consoles and even accessories for the major brands can leave a lot to be desired. Whether it’s poor build quality or a general lack of support or updates, there are quite a few things on the market not worth anyone’s time or money. [Jonathan] was recently handed just such a peripheral, a toy game controller originally meant for a small child, but upon further inspection it turned into a surprisingly hackable platform, capable of plenty of IoT-type tasks.

The controller itself was easily disassembled, and the functional buttons within were wired to a Wemos D1 Mini instead of the originally-planned ESP32 because of some wiring irregularities and the fact that the Wemos D1 Mini having the required amount of I/O. It’s still small enough to be sealed back inside the controller as well, powered by the batteries that would have powered the original controller.

For the software, [Jonathan] is using MQTT to register button presses with everything easily accessible over Wi-Fi, also making it possible to update the software wirelessly. He was able to use it to do a few things as proof-of-concept, including playing a game in PyGame and controlling a Sonos speaker, but for now he’s using it to control an LED sculpture. With something this easily modified, though, it would be pretty straightforward to use it instead for a home automation remote control, especially since it is already set up to use MQTT.

Continue reading “Toy Gaming Controller Makes The Big Leagues”

This OSHW Trackball Is Ready To Be Customized

Oh sure, Amazon can deliver any number of Logitech peripherals to your door in 48 hours, but where’s the fun in that? With open source hardware (OSHW) input devices like the Ploopy Adept Trackball, you not only get to say you built the thing yourself, but there’s also an opportunity to tune the gadget to your exacting specifications — even if that just means packing it full of RGB LEDs.

The trackball is powered by the Raspberry Pi Pico running QMK, features a high-accuracy PMW3360 sensor that can be found in commercial gaming mice, and uses a snooker ball for the business end. All the hardware is wrapped up in a 3D printed enclosure, and thanks to the VIA project, configuring the device can be done right in the browser through a web app.

Like the other devices in the (somewhat unfortunately named) Ploopy family, all of the design files for the Adept Trackball are released under the CERN license, which combined with the project’s fantastic documentation means you’ve got everything you need to build it from scratch. There are official parts kits if you don’t want to source or print all the components yourself, but as of this writing, the Ploopy Shop will only let you preorder them.