Teensy can find SX1509 Expander Breakout Board but not communicate with it

Jforest

Member
Heyo!

I'm trying to hook up a series of buttons to my Teensy 4.0, but I didn't have enough pins for the amount of buttons I'm using (trying to create an instrument with 2 octaves, that's 23 buttons total, the 24th is the root note that plays if no button is pressed), so I got an SX1509 Expander Breakout Board from Sparkfun. Unfortunately, I've hit a roadblock when setting it up. Using Teensy's Scanner example the serial monitor reads that it has found the board at the correct default address, but when I try to use io.begin in my own project (io being the name of the SX1509 object) it fails to communicate. I've attached some screenshots and the project itself, if anyone can help it'd be greatly appreciated. For wiring, I have SDA linked to pin 17 and SCL to pin 16, as I'm using pins 19&18 for a Teensy Audio Shield Rev D. I've made sure to call Wire2.begin instead of just Wire.begin or Wire1.begin, though the Scanner example seems to be finding the board at Wire1, which is odd, so I have tried using Wire1.begin, to no avail. I have GND and 3.3V wired to their respective pins as well.

Any help would be amazing :)
 

Attachments

  • Screenshot 2026-04-19 131015.png
    Screenshot 2026-04-19 131015.png
    11.6 KB · Views: 14
  • fail.png
    fail.png
    2.7 KB · Views: 13
  • fail2.png
    fail2.png
    7.9 KB · Views: 13
  • Time.ino
    5.2 KB · Views: 13
Back
Top