Checkout the full build video ↓
Supplies
Parts
- 1 × QT Py RP2040 Adafruit
- 1 × TLV493D Triple-Axis Magnetometer Adafruit
- 1 × STEMMA QT / Qwiic JST SH 4-pin Cable - 100mm Long Adafruit
- 2 × Tactile Button switch (6mm) Adafruit
- 3 × Adafruit LED Sequins - Emerald Green (optional) Adafruit
- 4 × Rubber Bumper Feet Adafruit
Hardware
- Round Magnets Amazon
- 6 × (6 × 2mm)
- Springs Amazon
- 3 × Compression 23/64" × 1-3/8"
- 3 × Extension 13/64" × 13/16"
- M2.5 Heat-Set Inserts Amazon
- 24 × 3.4 mm
- M2.5 Socket Head Screws Amazon
- 10 × 3mm
- 3 × 5mm
- 7 × 8mm
- 4 × 12mm
3D printing
Finishing (optional)
- Assorted Grits Sandpaper Amazon
- Glazing and Spot Putty Amazon
- Filler Primer Amazon
- Spray Paint Amazon
- Flat Matte Clear Coat Amazon
Tools
- 3D Printer Amazon
- Soldering Station/Iron. Amazon
- Helping hands Amazon
- Precision Screwdriver Set Amazon
- Wire stripper Amazon
- Sanding block
- Flux, Solder
- Hook up wire
- Flush cutters
- Hobby knife
- Tweezers and pliers
Affiliate links may be included in the parts list. I may receive a small commission at no additional cost to you.
This looks soooo nice. And the video is beautiful.
I saw you flip quickly past the spacenavd website in the video, while saying that you didn't want it to get complicated on the software side. I was going to suggest it because It buys you compatibility with a broad range of applications -- anything that supports a Spacemouse.
But the custom firmware -> USB approach is good too.
I actually do both: run spacenavd for those applications that use it, and a custom userspace (Python, probably too slow) program to push mouse/keyboard commands to applications that otherwise wouldn't. Mostly scrolling in PDFs and webpages and scrubbing/jogging in Audacity.
I guess where I'm going with this is that it might also be cool to have multiple profiles, or at least a quick way of reflashing the device. At least it's fun to play around with. You might find you like using it as a more general controller.