The Head Unit
The original “head unit” for my car was a 1 foot by 1 foot by 1 foot cube of vacuum tubes and gears. Welcome to the world of 1955 Buicks! I have shaved the face off of it and thrown away the rest. I have modified it to include a Phigit Text LCD that has a built in Phigit 8/8/8 interface (8 digital in, 8 digital out, and 8 analog in).

This picture shows a matrix orbital LCD instead of the new Phigit.

Here is how it look in my car today. I am rebuilding the whole system to use StreetDeck and some of the gear from Phigits.
The LCD

The Phigit LCD will sit just above the original 5 radio control buttons. I will cover the LCD with a clear thin glass or plastic. Paint the interior of this glass or plastic black except where the actual characters display. Leave clear area for the LED’s. We will label the buttons on the interior of the glass.
With the unit turned off, it should appear with only the alarm LED lit:
With the unit turned on:
Problem: How do I get notification from StreetDeck that a new artist/song has transpired so I can update the LCD?
4 Led’s
1. Red. Powered from Phigit LCD Display output. So I can send a warning. Use the phigit output ground and the #0 output channel.
Problem: How can I set some threshold on speed, rpm, etc so that I can sense when to turn this LED on? This is not critical. I really have no idea what event I would like to trigger this LED. I am sure something cool will turn up.
2. Green. Powered from 12 V power on. So I can see when the computer is on.
3. Green. Connected to long lead. Will connect at later point to power supply external indicator LED.
4. A Red LED that is currently under the dash associated with the alarm system.
3 Analog Inputs
1. “Volume” on outer left knob.
2. “Tone” on inner left knob.
3. Temperature probe.
Problem: What API do I use with StreetDeck to set volume at a specific level? When my volume knob is at 40%, I would like to set system volume at 40%.
Problem: I have this great tone analog input associated with the old 1955 Buick Sonomatic tone control. Any idea what I can do with it?
Problem: How do I set a variable in StreetDeck that represents my temperature so I can display it in a custom dynamic label? How do I update new temperatures to StreetDeck?
5 Digital Inputs
These will map directly to the 5 buttons on the face. The underlying switches can be normally open or normally closed. It doesn’t matter. Just make them all the same.
I understand that I can use the Windows SendMessage API to send messages to StreetDeck. No real problem here.
Power On/Off
The left knob has a power on/off associated with the volume control. This will be the signal to the computer to turn itself on /off. It is NOT fed by ACC. It will have always on 12V so I can play the thing with the key off.
Encoder
The right knob will connect to an encoder. In addition to unlimited clockwise and counter-clockwise movement, it has a press button capability. It is fed by USB.
Problem: I want to scroll down when the encoder is turned to the right and scroll up when turned to the left. I want to “select” when the encoder is pressed.
7 Button Face

The 7-button face has 7 buttons with integrated LEDs. The concept is that I can press the XM button and go to the satellite screen in StreetDeck. A Phigit 8/8/8 Interface Kit will control the 7 button face. It will detect when a button is pressed and light the appropriate LED and send a Windows SendMessage API to StreetDeck to go to the proper module.
Problem: I want to change the LED’s based upon input from the StreetDeck interface, also. To do this, I will need to know when StreetDeck changes modes. For example, if StreetDeck changes from XM to MP3, I need some sort of signal that this has happened so I can turn off the XM LED and turn on the MP3 LED.