| Millenium Falcon HID: Get Solidarity to Communicate to Teensy

Here is one that proves a challenge can transcend blinking LEDs and dumping huge chunks of information onto a serial console. The ones practices are positive for some, however [dimtass] has discovered a extra chic hack for a extra civilized age. His three-D Millennium Falcon style will get orientation knowledge from his IMU as an an HID software.

The concerned is an MPU6050 6-axis sensor this is interfaced with a Teensy 3.2 board. [dimtass] paperwork his way to calibrating the IMU going a little bit additional through the usage of a Python script to generate offsets. We have now advocated the usage of Jupyter notebooks prior to now and it is a just right instance of Jupyter plotting the information and visualizing the impact of the offsets in a 2nd go.

When in motion, the Teensy reads IMU knowledge and sends it over a USB RAW HID interface. For the uninitiated, HID transfers are extra dependable than USB CDC transfers (digital serial port) as a result of they use smaller knowledge chunks in step with match/transaction and normally do not require particular drivers At the pc aspect, [dimtass] has written a small utility that will get the IMU values over the RAW HID after which supplies it to the visualization utility.

A three-D Millennium Falcon style is rendered in Solidarity, the preferred open supply recreation construction engine. Although Solidarity has an API, this actual manner is extra OS explicit the usage of a shared-memory method. The HID utility writes to a record (/tmp/hid-shared-buffer) which is then learn through Solidarity to make orientation adjustments to the rendered style.

[dimtass] supplies a variety of main points at the equipment used to deliver his challenge to lifestyles and it may be an ideal start line for extra initiatives that want interfacing sensors with a visualization machine. We now have noticed tactics to flip an individual’s head right into a joystick and if you wish to have a deeper dive into Solidarity, glance no additional.

by means of