It's been a rough few days with sleepless nights and hair pulling as I navigate setting up Python 3.7 on a Raspberry Pi. After messing with several different methods of installing Python and PIP only to end up with a PIP SSL error I stumbled upon a blog post by Josh which actually worked. At a high level, you have to download and compile the Python and SSL libraries so that Python actually knows where to locate the SSL library. I didn't see the SSL issue with other versions of Python but this seemed to be a very common issue with 3.7. I tried a number of solutions and Josh's was the only one that worked.
After solving the SSL issue I started putting my project together only to find that HIDAPI Python library was having issues reading the USB device. Rebooting the Pi seemed to do the trick. The HIDAPI library relies on libusb-1.0 which is a C library that gives applications easy access to USB devices. Why this reboot was required to make it work I am not sure but I also looked at another article which referenced other USB drivers along with HIDAPI that was helpful to understanding how to install the HIDAPI library on the Pi.
I think this section of the project has consumed the most time. Even more so than writing the code for the project itself. It seem to take forever to get the Pi setup to run the code. Not that I haven't run into similar issues with Pi and Nodejs reading USB devices but its still painful to deal with when it happens.
Later this week I will write up a full post on the project with code.
Intro to project: