Here’s one that proves a hardware project can go beyond blinking LEDs and dumping massive chunks of data onto a serial console. Those practices are fine for some, but [dimtass] has found a more elegant hack for a more civilized age. His 3D Millennium Falcon model gets orientation data from his IMU as an an HID device.
The hardware involved is an MPU6050 6-axis sensor that is interfaced with a Teensy 3.2 board. [dimtass] documents his approach to calibrating the IMU going a bit further by using a Python script to generate offsets. We’ve advocated using Jupyter notebooks in the past and this is a good example of Jupyter plotting the data and visualizing the effect of the offsets in a second pass.
When in action, the Teensy reads IMU data and sends it over a USB RAW HID interface. For the uninitiated, HID transfers are more reliable than USB CDC transfers (virtual serial port) because they use smaller data chunks per event/transaction and usually don’t require special drivers. On the computer side, [dimtass] has written a small application that gets the IMU values over the RAW HID and then provides it to the visualization application.
A 3D Millennium Falcon model is rendered in Unity, the popular open source game development engine. Even though Unity has an API, this particular approach is more OS specific using a shared-memory technique. The HID application writes to a file (/tmp/hid-shared-buffer) which is then read by Unity to make orientation changes to the rendered model.
Continue reading “Millenium Falcon HID: Get Unity To Talk To Teensy”






The payload container is a hollow tube with a 3D printed threaded adaptor attached to one end. Payload goes into the tube, and the tube inserts into a hole in the bulkhead, screwing down securely. The result is an easy way to send up something like a GPS tracker, possibly with a LoRa module attached to it. That combination is a popular one with high-altitude balloons, which, like rockets, also require people to retrieve them after not-entirely-predictable landings. LoRa wireless communications have very long range, but that doesn’t help if there’s an obstruction like a hill between you and the transmitter. In those cases, 




