Arduino Wired Remote Code Scanner for Alpine

Currently I’m working on project of interfacing Alpine with Peugeot steering wheel audio controls. I have founded some codes on mp3car.com but not all of them are working on my Alpine CDE-9880R.

Because some of them doesn’t work on my HU I had first to build Arduino scanner to scan for those missing remote codes.

Although I’m sending codes as binaries it was easier for me to work with decimals on the serial console and then latter convert them to binary so I have wrote function for that as well.

Because the first part of signal is always the same there was not need to convert it at all, and it’s stored in variable iHello, so the part that is changed is the second part or 3 decimal numbers.

Now because there are 255 x 255 x 255 = 16 581 375 possible combinations I had to bring this to some reasonable number otherwise it would take very much time to find right codes so I have limited combinations a bit.

I took the lowest and the highest values from codes from link above for the first and the second decimals, and limited the third one to 2 possible numbers that I’m sending as finish 85 or 213.

Here are those codes that I have founded working on my HU:

1
2
3
4
5
6
7
8
9
10
11
12
 87 253  85 ( 01010111  11111101  01010101 ) - Pause
107 247  85 ( 01101011  11110111  01010101 ) - Band/ta
111 237  85 ( 01101111  11101101  01010101 ) - Defeat
119 235  85 ( 01110111  11101011  01010101 ) - Power
173 238 213 ( 10101101  11101110  11010101 ) - Mute
183 219  85 ( 10101101  11101110  11010101 ) - Source
187 218 213 ( 10111011  11011010  11010101 ) - Next Track
 93 250 213 ( 01011101  11111010  11010101 ) - Previous track
219 214 213 ( 11011011  11010110  11010101 ) - Volume up
109 246 213 ( 01101101  11110110  11010101 ) - Volume down
171 239  85 ( 10101011  11101111  01010101 ) - Folder/memory up
 85 255  85 ( 01010101  11111111  01010101 ) - Folder/Memory down

Because I have IR remote for my HU and defeat button is not on it I assume that it’s possible to find even more codes for it, but I didn’t needed those so I stopped here where I have everything for my first project.

Here are pictures of the interface that I have built for testing of codes. It consists of 5 buttons which have been assigned different functions and 3.5 mm female audio jack which I use for connection with HU. HU has the same 3.5 mm female jack on the back so I can use regular 3.5mm stereo cable for testing without any modifications on HU or Arduino board.

Here is the Arduino sketch file with all functions that I have used for scanning, saving and displaying codes on serial console.

Here are the instructions how to use this sketch in order to find codes.

  1. Erase eeprom with erase function to be sure that it’s clean on the start of scan.
  2. Comment out function for erase and uncomment function for saving combination on eeprom
  3. You are ready for scan now, so when you connect Arduino to your HU just press button 4 to start scan
  4. If you see any changes on HU you need to press button 4 to stop scan
  5. Using buttons 1 and 3 you can go back or forward to find that combination that you discovered
  6. When you find it, you can verify it with button 2 which repeats it again
  7. If that is combination that you are looking for. press button 5 to save it to eeprom
  8. When you have found all combinations that you are interested of, connect Arduino to computer and on serial console you will have all combinations that you have found, so copy and paste them in iFounded array
  9. Comment out functions for saving, previous and next button and uncomment functions for import of combinations, sending of previous and next combinations
  10. Now when you power up Arduino press button nr 5 to import combinations and cycle them with buttons 1 or 2 to confirm that you have right combinations saved

I have all of the codes needed to control HU, so it means that I can finish the first project and the post about it is coming soon.

Any comments are welcome.