Skip to the content
PCBKitNew board
2 layers53 × 91 mmSpacefox, the printed circuit board in 3D

A 6dof diy hid

Size
53 × 91 mm
Copper layers
2
Thickness
1.6 mm
Parts
12
Nets
22
Pads
88
Tracks, vias
56, 0
Pours
1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
3 Nov 2022
Updated
27 Jan 2024

Overview

Spacefox is an open-source printed circuit board by pepijndevos, from the pepijndevos/spacefox repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board of 53 × 91 mm with 12 parts on 22 nets, routed with 56 tracks and 0 vias.

Its parts include 1 IC and 1 connector. It belongs with the AVR (ATmega, ATtiny) boards of this library.

README

README.md

SpaceFox

A 6DOF DIY HID. A what? A 6 degrees of freedom, do it yourself, human interface device. In other words, a 3D mouse, or an open hardware SpaceNavigator. You know, one of these thingies CAD designers use to zoom around.

All the existing DIY designs out there I could find are not actually 6DOF. Some are literally a knob on a joystick. So I set out to make a better one.

This one is based on a stewart platform made from potentiometers. It was designed so that any idiot with access to a 3D printer can build one. You might even get away with some careful jigsawing!

Other true 6DOF projects

Since doing this project I've become aware of a few other people making true 6DOF DIY spacemice that may actually be worth your time.

Gallery

Watch the Youtube video:

Watch the video

Close-up of the spring-loaded potentiometers:

IMG_20230122_151121

CAD model of one of the arms:

image

CAD model of the knob:

image

CAD model of the base

image

Bill of Materials

  • 3x arm-Body + arm2-Body, 3D printed.
  • 1x top-Body, 3D printed.
  • 1x base, cut from 4 layers of 4mm triplex.
  • 1x PCB Aisler
  • 6x potentiometer, 6mm flatted shaft Farnell
  • 1x Arduino Pro Micro Sparkfun AliExpress
  • 12x ball joint rod ends, 2mm, half pad AliExpress
  • 6x torsion spring, 1mm diameter, 3mm length, 90 degrees, 8.5mm outer diameter AliExpress
  • 6x threaded rod, 2mm, 20mm length AliExpress
  • 9x Cherry MX compatible switches AliExpress
  • 9x keycaps AliExpress
  • 2mm & 3mm nuts and bolts
  • 0.1" male & female headers

Assembly instructions

  1. Put the springs on the potentionmeters and snap them onto the PCB. Solder. Cut the ends short below the PCB.
  2. Push the male and female headers together and insert them between the Arduino and PCB. Solder. (This way you ensure they end up straight)
  3. Slide the arms halfway onto the potentionmeters facing 45 degree outwards. Apply a drop of hot glue to the slot for the spring and push them all the way in. Apply hot glue to secure the arm to the shaft.
  4. Screw the rod ends onto the push rods and secure the rod ends to the arm with nuts and bolts.
  5. Secure the knob to the rod ends with bolts.
  6. Cut 4 sheets of the base plate (the middle sheet twice)
  7. Insert Cherry MX switches in the top plate
  8. Wire switches to the header on the PCB
  9. Bolt the base plates together
  10. Bolt the PCB onto the base plate
  11. Upload the Arduino code.
  12. Install spacenavd and add device-id = 1b4f:9206 to /etc/spnavrc.

Parts

12
QtyValueFootprintReferences
6R_Potentiometerantennas:TT_P120RV1, RV2, RV3, RV4, RV5, RV6
4MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
1Conn_02x09_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x09_P2.54mm_VerticalJ1
1ProMicroantennas:ProMicroU1

Questions

How big is the Spacefox PCB?

It measures 53 × 91 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Spacefox use?

12 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Spacefox KiCad files?

From the pepijndevos/spacefox repository on GitHub, at the commit this page was made from: the board is spacefox/spacefox.kicad_pcb and its schematic spacefox/spacefox.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Spacefox design in my own project?

Its repository publishes it under the Apache-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layersNrf bga, the printed circuit board in 3D

    Nrf bga

    github-linguist/linguist

    Language Savant. If your repository's language is being reported incorrectly, send us a pull request!

    12 parts14kMIT
  • 2 layers66.9 × 74.5 mmDeskHop, the printed circuit board in 3D

    DeskHop

    hrvach/deskhop

    Fast Desktop Switching Device

    12 parts7.9kGPL-3.0
  • 2 layers40 × 15 mmSensors, the printed circuit board in 3D

    Sensors

    google/mozc-devices

    Circuit diagrams and firmware source code for Gboard DIY keyboards

    12 parts3kApache-2.0
  • 2 layers42.7 × 56.5 mmTle6240 driver, the printed circuit board in 3D

    Tle6240 driver

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    12 parts1.2k
  • 2 layers49 × 25 mm5v boost regulator, the printed circuit board in 3D

    5v boost regulator

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    12 parts915
  • 2 layers28.3 × 10.3 mmTap Photosensor PCB, the printed circuit board in 3D

    Tap Photosensor PCB

    VoronDesign/Voron-Tap

    Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:

    12 parts716GPL-3.0
  • 2 layers25.4 × 70.4 mmTpmsniffer, the printed circuit board in 3D

    Tpmsniffer

    stacksmashing/pico-tpmsniffer

    A simple, very experimental TPM sniffer for LPC bus

    12 parts696