Trying to wrap my head around the best way to do this. This is also sort of an educational project, so bare that in mind.
Struggling with the best way to combine the grid with the other hardware (display + buttons + encoders) and then use the combo as a remote device in ableton (using python remote scripts to interface and do stuff).
My initial thought was:
grid plugged into arduino due’s otg usb (use monome host library for communicating), externally powered.
arduino sketch handles i/o (grids, as well as other stuff) and communicates to computer via serial (well serial over usb, via 2nd usb port on due). Mainly via serial.print(), as decoding strings in python is easy.
Python remote scripts (using pyserial to communicate with arduino due) handles interfacing between Live and Hardware. Trickiest part, for me, being the need for threading (say via asyncio, which I find confusing) to be able to poll and update hardware, via ser.read() and ser.write().
The alternative being multiple max for live devices for the various controller functions, however unclear on best way to have the other, non grid hardware work in combo with grid within the patches. Well other than using serialosc for grid, and serial communication with arduino board, which might be enough, although m4l device only approach is a bit limited, may still require python scripting.