This is going to be less of an update and more of a road map for future updates as my free time permits.
Center console media controls to get max ergonomics points and make my system easier to use day-to-day. I've had this idea for a sometime, but after seeing a couple cars a the USACI finals with something similar it sparked my interest. Unfortunately after doing some research a wired remote for an Alpine head unit is not as simple as a resistor ladder.
Each command starts with a 8ms high(5v) and then 4.5ms low(0v). Then a series of high and low signals represented by 1's and 0's. I think I'm going to use a small arduino controller to interpret button presses and for now will just have volume up / down, and track up / down on momentary buttons.
Not totally sure what components I want to use for this anyone have any ideas.
Turns out counterfeit arduinos are a thing so going to get it from the source.
Arduino Uno: hhttp://store-usa.arduino.cc/products/a000066
Momentary Rocker: http://www.digikey.com/product-detai...SW311-ND/81509
One switch on the bottom left and one on the bottom right of the gear selector bezel. Could easily add double click or long press functions if I decide I want to do more later.
3.5mm jack
Sleeve -GND
Ring - No Connection
Tip - SIGNAL
Known Alpine codes:
I spent a little time and made a working program with a virtual arduino. I used a small resistor ladder so I could distinguish the different buttons. I made boolean arrays of each command I want then depending on the button pressed pass them to a function that outputs it to the HU with the delays.(Start) 110101111101101110101011
Vol Up 11011011110101101
Vol Dn 01101101111101101
Mute 10101101111011101
Pst up 10101011111011110
Pst dn 01010101111111110
Source 10110111110110110
Trk up 10111011110110101
Trk dn 01011101111110101
Power 01110111111010110
Ent/Play 01010111111111010
Band/prog 01101011111101110
Pause 01010111111111010
Band/ta 01101011111101110
Defeat 01101111111011010
Folder/memory up 10101011111011110
Folder/Memory down 01010101111111110
(End) 1010101
Example:
Fiberglass mid bass enclosure this will most likely have to wait until the semester is over, but I would like to remove the back of my door cards enclosure and build a fiberglass box that will mount to the door frame to hopefully isolate the mid bass driver from the plastic door card. Not only will this kill some unwanted noise it should allow me to raise the high pass filter without it sounding like the door is going to come apart.boolean volUp[48] = {1,1,0,1,0,1,1,1, 1,1,0,1,1,0,1,1, 1,0,1,0,1,0,1,1, 1,1,0,1,1,0,1,1, 1,1,0,1,0,1,1,0, 1,1,0,1,0,1,0,1};
output(volUp);
//---------OUTPUT-----------------------------------------------
void output(boolean signal[]) {
//first send 8ms high
digitalWrite(alpPin, HIGH);
delay(8);
// send 4.5ms low
digitalWrite(alpPin, LOW);
delayMicroseconds(4500);
for (int i = 0; i <= 47; i++) {
//send bit for 0.5ms
if (signal[i] == 1 ) {
digitalWrite(alpPin, HIGH);
} else {
digitalWrite(alpPin, LOW);
}
delayMicroseconds(500);
// wait 0.5ms
digitalWrite(alpPin, LOW);
delayMicroseconds(500);
}
// send 41ms low
digitalWrite(alpPin, LOW);
delay(41);
}