Jan-16-2021, 05:35 PM
I'm still learning about the interface on the neotrellis, but each board has it's own I2c connection.
I realize now, that I had the wrong idea of what was needed here. Pin 5 has nothing to do with reading the I2c output, it's a clock pin.
-----------------
Each board also needs an address (same as midi does) to identify itself on the I2C Buss which is
set by soldering the pads on the back of the board (obviously each board must have an address that is different from any other device hooked up to I2c. There is an example (for two boards) here: https://learn.adafruit.com/adafruit-neotrellis.
And this page shows tiling 4 neotrellis boards together: https://learn.adafruit.com/adafruit-neotrellis/tiling using a single I2C connection.
Tiling 32 should be similar
The connection to the pi would be just one I2c connector. (or directly to MCP2221A).
Have you done this on your board?
The only connection between the pi and the neotrellis should be an I2c connector (this thought might change after I have my hardware hooked up)
-----------------
I was going to write a decoder, which requires detection of button down, button up, and a time delay between and resampling in order to prevent key bounce. That's already been done in the hardware, the work on the pi would be different, too early to see how at this point.
-----------------
I expect something like:
I think this can be done directly to a main computer, simply by converting the I2c to USB (thus the MCP2221A General Purpose I2c to USB converter), elimination the Pi or the M4.
It's too soon for me to determine this until I have a working setup.
-----------------
Please tell me more about how you have the 32 boards hooked to each other.
I realize now, that I had the wrong idea of what was needed here. Pin 5 has nothing to do with reading the I2c output, it's a clock pin.
-----------------
Each board also needs an address (same as midi does) to identify itself on the I2C Buss which is
set by soldering the pads on the back of the board (obviously each board must have an address that is different from any other device hooked up to I2c. There is an example (for two boards) here: https://learn.adafruit.com/adafruit-neotrellis.
And this page shows tiling 4 neotrellis boards together: https://learn.adafruit.com/adafruit-neotrellis/tiling using a single I2C connection.
Tiling 32 should be similar
The connection to the pi would be just one I2c connector. (or directly to MCP2221A).
Have you done this on your board?
The only connection between the pi and the neotrellis should be an I2c connector (this thought might change after I have my hardware hooked up)
-----------------
I was going to write a decoder, which requires detection of button down, button up, and a time delay between and resampling in order to prevent key bounce. That's already been done in the hardware, the work on the pi would be different, too early to see how at this point.
-----------------
I expect something like:
- reading the I2c
- finding the address on in-coming packet (board number)
- the button number should be decoded by now, I don't yet know) but if not:
determining button that is actually pushed based on board location within the 32 board matrix.
I think this can be done directly to a main computer, simply by converting the I2c to USB (thus the MCP2221A General Purpose I2c to USB converter), elimination the Pi or the M4.
It's too soon for me to determine this until I have a working setup.
-----------------
Please tell me more about how you have the 32 boards hooked to each other.