Shift Register Buttons Not Triggering Properly (RP2040, OpenDeck v7.10) #315
-
Custom Firmware on v7.10 - RP2040 (Raspberry Pi Pico) Problem: I can’t seem to get any pins on the shift register (74HC165N) to trigger a button (no light-up in the web config), except for Pin 6 (H), which always triggers Button 0. This behavior is consistent with or without daisy-chaining the shift registers: No other pins trigger any buttons. Could this issue be caused by a timing mismatch (e.g., clock or latch signals)? Am I missing something in the YAML or wiring? What I’ve Tested: Multimeter Test:
Shift Register Behavior Without Daisy-Chaining:
YAML
Wiring: Shift Register → Pico
I should also mentioned that I removed the following keys in my firmware (I'm not using these components) which were present in the pico.yaml which I used as a reference:
I also added inputVoltage: 3.3" under analog. Should I leave that in or remove it? Can I also remove dinMIDI ? I wasn't sure if that was just a pin allocated to physical MIDI ports. I don't plan to use it for that purpose as I just want this to be a USB-only MIDI controller. Thanks! |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 12 replies
-
For more context: I built the firmware in Ubuntu 22.04 which I ran in a UTM VM on an Apple Silicon Mac with the docker dependencies installed, added my user to docker group, and following the instructions to clone the git, run the dev.sh script environment, make clean when I change anything in the yaml before I do make TARGET=blabla.yaml which spits out the build folder. I then flashed the merged.uf2 onto the Pico. I'm also using this shift register diagram as a reference, hence the "Pins A to H". |
Beta Was this translation helpful? Give feedback.
-
In an attempt to isolate this issue even further, I'm now using a very minimal yaml config with just 1x shift register, and no multiplexers.
Interestingly, now only Pin 14 (D) and 6 (H) work. The others still nothing. Also tested with my other shift register to rule out faulty registers - same result, only Pin 14 and 6 trigger buttons. Re-tested with multimeter and button presses definitely drop the voltage from HIGH to LOW - exactly same behaviour for non-working and working pins. I've also ruled out it's not a physical faulty button by using a wire to short the A-H input pins to GND to simulate a button press. |
Beta Was this translation helpful? Give feedback.
-
Pin 15 on the shift register needs to be connected to GND. |
Beta Was this translation helpful? Give feedback.
Pin 15 on the shift register needs to be connected to GND.