Custom PCB with SAMD21 QT PY controlling TWO ADG1606BRUZ 16 input muxes! This board is 30% smaller than V3 and uses a single 16x2 pin header. There are two firmwares for this board, as the backside input pin numbering does not match the topside numbering. You can select which side you would like to be on-top... the QT PY board is much taller than the ADG1606BRUZ packages, and I plan to have the backside on-top (to aviod any unwanted contact with the boards that I connect to).
Check-out my PDF schematic !!
The SAMD21 QT PY can be programmed with the appropriate file (drag-n-drop) from the uf2_firmware folder.
Supported USBTMC commands:
MUX1:EN 1 # enable MUX1, a zero will disable the mux
MUX1:SEL 1 # select S1 input, values 1 through 16 are valid
MUX1:EN? # this query returns the state of MUX1
MUX1:SEL? # this query returns the presently selected input
*RST # disables all MUX enables
*IDN? # returns valid commands and this URL
2x16 2.54mm stacking headers can be found on Aliexpress
SAMD21 QT PY and ADG1606BRUZ ICs can be found on Digikey/Mouser.
The tinyusb_usbtmc_src files are modifications of https://github.com/hathach/tinyusb source files.