monome / serialosc

multi-device, bonjour-capable monome OSC server

Home Page:http://monome.org/docs/serialosc/osc

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Device detection fails on Windows 10 for Adafruit Trellis

nexxyz opened this issue · comments

I could not get serialosc-detector ond a fresh install of Windows 10 to detect my device.

From what I can tell, it is looking in the registry for a possible match. it uses "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\FTDIBUS" for this, from what I can tell. However, even using the most recent FTDI drivers, this path does not exist in the registry for me. The device is using the FTDI drivers, but is still listed under "USB" here.

Might have to do with this being a DIY variant, see here:
https://llllllll.co/t/diy-monome-compatible-grid-w-adafruit-neotrellis/28106/491

@nexxyz what kind of DIY device exactly? does it actually have the FTDI chip?

@artfwo Thanks - thought the same thing right after I posted. You are right, it might not. It is this one:
https://github.com/okyeron/neotrellis-monome/tree/master/neotrellis_monome_teensy

Based on a teensy 3.2

How would I go about getting it to work on Windows if it is not FTDI-based? Or could an alternative method of enumerating USB COM Devices work somehow?

EDIT: Maybe a cleaned-up version of something like this? (C port of the C++ EnumSerialPorts)?

the code you linked also reads registry to query serial devices, so i think you can try changing the registry key in detector to whatever teensy uses and rebuilding serialosc.

if that works well and doesn't cause any conflicts, we can extend the detector to query teensy keys as well for sure.

As far as I could see the code provided multiple ways of detecting serial ports.

Unfortunately I am at the moment not set up for writing and compiling C code. I can read it fine (I think), but I would not really know what I‘m doing.

Is there any alternative way of having serialosc connecting to a particular device?

Is there any alternative way of having serialosc connecting to a particular device?

yes, by running serialosc-device and passing the com port ID as an argument, i.e. serialosc-device COM1.

but this might not work with your grid, as libmonome relies on the registry keys too to get the device serial number.

Ah yes, I tried it before and it seemed to fail. I was just not sure I had called it correctly.

Will try to see if I can get the build running and see if I can get it working on a fork, (unless you would be willing to take a shot at it).