Close

Button matrix scanning

A project log for Modernize Harmony 880

Modernize a Logitech Harmony 880 universal remote

mulcmumulcmu 02/22/2023 at 02:270 Comments

I found a full installation for code composer studio 6 and MSPware and ended up installing it on a windows xp vm.  It would have been way quicker to just figure out the register settings by hand.  Got test code installed on the MSP430 for the button matrix scanning.  MSP430 will stay in low power mode with all the matrix rows energized.  Interrupt on any column input will start timer for scanning the rows.  Byte value for detected key presses are transmitted over uart to the ESP32.  ESP32 code was updated to fix the screen rotation and output the key presses on the lcd.  Logic for scanning only looks for single button presses, no debouncing.  Works good enough for testing.

Next step is to start refining the MSP430 code and functionality.  I think it will control the remote button backlight leds, rx/tx to esp32, esp32 power/wakeup, and movement sensor.   This will use 6 of the 8 port 1 gpio pins.

The esp32 will just need to handle the screen, battery voltage, and the IR leds leaving room for extra scope.  i2s microphones for voice control, buzzer or haptic motor seem like some good additional features.

Discussions