04-24-2020, 10:56 AM
Hello all,
So, complete newbie here. I've rarely touched raspberry pi's before (used a 2b+ in a final year project at uni about 5 years ago, which did have some GUI elements to it, which was pretty cool) but since being a grown up, work took over my life and I never really had the time to have a play around with these cool little things for a while.
Last year, bored, I acquired a Rpi 3b+ and official touch screen, trawling through the internet, I wanted to find a a project to revisit my uni days, when I discovered open auto. After a few attempts to compile, I con-seeded to install crankshaft, then did nothing with it for a year. Now, with the UK in lockdown, furloughed from work, I decided to get my pi out again. After messing about with crankshaft trying to get it to work with my S10 reliably, I eventually pulled the trigger on OAP. I liked how easy it was to integrate apps, with the intention of writing an app for the saab.
Bored of the OEM radio in the 900, I put together some requirements for a replacement:
- Retain the OEM look of the saab dash
- Retain the stock CD changer (weird I know, but I like it)
- Retain the stock FM radio with information displayed on the saab SID unit.
- Install the OAP touchscreen in the dash, not on top, not in the centre console.
- Make the install reverse-able, so if I ever do sell the car... then I can rip it all out like it was never there.
Possible Solutions:
- Retain the OEM radio, but hide it, either in the glovebox or elsewhere
- Use the tape deck as the AUX in for the RPI audio
- Relocate the "source", "tune up", "6 x presets" as either physical controls... or create GUI app within OAP, and use the rpi to control these.
- Relocate the volume control in place of the hazard switch location, then relocate the hazard switch in one of the switch blanks on the dash
Problems:
- The saab OEM radio, is somewhere inbetween single and double din in size.... The official Rpi screen fits... just, without a case. I think I might need to hack up the dash (or a spare one from ebay) to get this to fit nicely, and somehow find a bezel to give it that OEM look. Alternatively, if anyone knows of a 7" screen, with a smaller bezel, and/or decent case - let me know
- OAP takes about 25+ seconds to boot up. In the car, this might be OK, if say I want to take the roof down before I drive anywhere... but it would be much cooler if it was booted quicker, or perhaps booted before I switch the ignition on.
What I have so far:
- OAP running, not tried AA yet, but waiting on my amazon USB sound card to arrive
- I have written a very simple GUI app in python (first time using tkinter, and python for that matter) - All this does is emulate some of the buttons on the OEM radio, and just output them to GPIO pins. - The hardest part of this, was the "source" button, as I didn't want to have 3 separate GUI buttons, for "CD, Tape and Radio" as per the OEM radio, getting threading to work in tkinter was a pain in the internet.
- Created a circuit that cuts the 5V supply to the RPI 5 seconds after it has shutdown gracefully. - I wanted this, because the car already suffers from some quiescent parasitic battery drain (gone though 3 batteries now), which I'm still yet to properly investigate. I didn't want the pi adding to this headache. Details of this circuit here:
Raspberrypi.org/forums/viewtopic.php?t=34603
- Written a shutdown script based on a GPIO input. - I can post some code for this, once I'm happy it's working in the car.
For the boot time:
- My thinking is perhaps triggering the wake up on the door switch, then shutdown if the ignition is not switched on within 60 seconds, or shutdown if the ignition is switched off for >60 seconds. My shutdown script does this... but I need to figure out how to wire this into the car correctly to test it properly if this is going to be my final solution.
Anyway, TLDR, I spend too much time and money on various online shopping sites, the car is a Saab 900 + OAP + CD changer and FM radio
Watch this space for more updates on my project.
Regards,
Dave
So, complete newbie here. I've rarely touched raspberry pi's before (used a 2b+ in a final year project at uni about 5 years ago, which did have some GUI elements to it, which was pretty cool) but since being a grown up, work took over my life and I never really had the time to have a play around with these cool little things for a while.
Last year, bored, I acquired a Rpi 3b+ and official touch screen, trawling through the internet, I wanted to find a a project to revisit my uni days, when I discovered open auto. After a few attempts to compile, I con-seeded to install crankshaft, then did nothing with it for a year. Now, with the UK in lockdown, furloughed from work, I decided to get my pi out again. After messing about with crankshaft trying to get it to work with my S10 reliably, I eventually pulled the trigger on OAP. I liked how easy it was to integrate apps, with the intention of writing an app for the saab.
Bored of the OEM radio in the 900, I put together some requirements for a replacement:
- Retain the OEM look of the saab dash
- Retain the stock CD changer (weird I know, but I like it)
- Retain the stock FM radio with information displayed on the saab SID unit.
- Install the OAP touchscreen in the dash, not on top, not in the centre console.
- Make the install reverse-able, so if I ever do sell the car... then I can rip it all out like it was never there.
Possible Solutions:
- Retain the OEM radio, but hide it, either in the glovebox or elsewhere
- Use the tape deck as the AUX in for the RPI audio
- Relocate the "source", "tune up", "6 x presets" as either physical controls... or create GUI app within OAP, and use the rpi to control these.
- Relocate the volume control in place of the hazard switch location, then relocate the hazard switch in one of the switch blanks on the dash
Problems:
- The saab OEM radio, is somewhere inbetween single and double din in size.... The official Rpi screen fits... just, without a case. I think I might need to hack up the dash (or a spare one from ebay) to get this to fit nicely, and somehow find a bezel to give it that OEM look. Alternatively, if anyone knows of a 7" screen, with a smaller bezel, and/or decent case - let me know
- OAP takes about 25+ seconds to boot up. In the car, this might be OK, if say I want to take the roof down before I drive anywhere... but it would be much cooler if it was booted quicker, or perhaps booted before I switch the ignition on.
What I have so far:
- OAP running, not tried AA yet, but waiting on my amazon USB sound card to arrive
- I have written a very simple GUI app in python (first time using tkinter, and python for that matter) - All this does is emulate some of the buttons on the OEM radio, and just output them to GPIO pins. - The hardest part of this, was the "source" button, as I didn't want to have 3 separate GUI buttons, for "CD, Tape and Radio" as per the OEM radio, getting threading to work in tkinter was a pain in the internet.
- Created a circuit that cuts the 5V supply to the RPI 5 seconds after it has shutdown gracefully. - I wanted this, because the car already suffers from some quiescent parasitic battery drain (gone though 3 batteries now), which I'm still yet to properly investigate. I didn't want the pi adding to this headache. Details of this circuit here:
Raspberrypi.org/forums/viewtopic.php?t=34603
- Written a shutdown script based on a GPIO input. - I can post some code for this, once I'm happy it's working in the car.
For the boot time:
- My thinking is perhaps triggering the wake up on the door switch, then shutdown if the ignition is not switched on within 60 seconds, or shutdown if the ignition is switched off for >60 seconds. My shutdown script does this... but I need to figure out how to wire this into the car correctly to test it properly if this is going to be my final solution.
Anyway, TLDR, I spend too much time and money on various online shopping sites, the car is a Saab 900 + OAP + CD changer and FM radio
Watch this space for more updates on my project.
Regards,
Dave