by atreidae » Sun Jun 22, 2014 11:20 pm
Progress..
NOTE: Turns out this is an MSBFirst SPI bus and not an LSBFirst SPI bus. all these packet captures were taken assuming LSBFirst (default on my app)
I'll update this after I recapture it all.
After turning one of my Arduino boards into a Logic analyser (with a whopping 1k of memory I get 2ms at 200mhz! Time to buy a Bus Pirate) I've managed to find the interesting data and I'm starting to decode the SPI bus.
When pressing a button
LCD pulls CS low.
Motherboard responds with 0x80 (RTS?)
LCD Transmits 0x50 (ACK) followed by a two byte key code (checksum maybe)
Motherboard responds 0x50 (ACK?)
At the moment (due to my noobishness) im assuming Mode 1 and LSB first. hence all my measurements assume this
Pins for those playing at home.
I'm probing the 14 pin connector attaching the LCD to the board
Pin 1 is closest to the center of the PCB
#WARNING THERE IS 12V+ IN THIS CONNECTOR
Pin 1, Unknown, reads Low
Pin 2, Unknown, reads Low
Pin 3, +12V. Only present when LCD connected (backlight maybe?)
Pin 4, 5V rail for Micro on LCD board
Pin 5, SPI Bus, MOSI (i think)
Pin 6, SPI Bus, MISO (i think)
Pin 7, SPI Bus, SCLK
Pin 8, SPI Bus. Chip/Slave Select
Pin 9, Unknown, Reads low
Pin 10, Unknown, reads low
Pin 11, Reads low. occasionally spikes. havent looked into
Pin 12, normally High
Pin 13, blank
Pin 14, Looks like another +5 rail
(edit, dumping some more of my notes, just incase I evaporate)
Key First Byte Second Byte
CD 0xd8 0x64
Pause 0x68 0x84
FM 0x4 0xD4
AM 0x84 0x34
ASM 0x44 0xB4
LOC 0xC4 0x74
Time 0x98 0x24
EQ 0x78 0x94
Eject 0xF0 0x58
On 0xA0 0x8
Off 0x50 0xA8
Seek < 0x80 0x30
Seek > 0x60 0x88
Tune < 0xFF 0x50
Tune > 0XD0 0x68
FR 0xA8 0x4
FF 0x58 0xA4
Track Scan 0x38 0xE4
Track Repeat 0xE8 0x44
Track Random 0x48 0xB8
1 0xB8 0x14
2 0xFF 0x50
3 0xC8 0x78
4 0x70 0x98
5 0x90 0x28
6 0x20 0xF0
Rotary encoder in 0xF8 0x54
Optical encoder uses a different format
Right
MOSI 55,00,00,00,00,10
MISO 00,80,10,80,50,00
Left
MOSI 55,00,00,00,00,90
MISO 00,80,90,80,D0,00
Last edited by
atreidae on Mon Jun 23, 2014 12:02 pm, edited 1 time in total.