DIY cd wisselaar
Geplaatst: ma 23 mei 2016, 22:37
Toen ik mn S40 kocht zat er een SC radio is; en ik heb deze al erg snel vervangen door een HU-555 die ik bij een sloper vond. Nu, vind een lekker muziekje best fijn, en merkte dat ik gedoe met cd's wisselen ... eigenlijk helemaal niet meer gewend was.
Dus eens gekeken naar grom en imiv, want voorop stond/staat dat ik eigenlijk geen 'nieuwerwetse' radio wil, maar net ervan hou dat de radio ook past bij de rest van het interieur (al kan ik begrijpen dat dat voor anderen misschien anders is).
Van het een uitzoeken kwam het ander, en tenslotte was ik aan het zoeken hoe het melbus-protocol (de manier hoe cd-wisselaar en radio met elkaar communiceren) in elkaar stak. Ben best wel geholpen door dingen die ik online vond; al werkte alles niet meteen zoals verwacht. Het protocol is ook niet openbaar gemaakt, dus niet volledig bekend. Vooral het gedeelte dat ervoor zorgt dat je ook cd en track informatie weergeeft op de HU kostte best wat moeite. Functioneel kan je 10 cd's met elk 99 tracks weergeven/gebruiken, dus met 990 tracks is dat best een hoop.
Na een hoop ontwikkelen, testen, debuggen, naar de auto lopen, solderen, heb ik nu volgende proefopstelling:
- arduino die de HU wijsmaakt dat er een cd wisselaar is
- raspberry pi: speelt de muziek af en heeft een extra dac (digitaal-analoog converter zodat het geluid lekker blijft); communiceert verder met de arduino
- bediening vanaf de HU radio voor cd-wisselen en track vooruit/achteruit (al heb ik de hu knoppen omgekeerd: die van cd wisselen dient nu voor track wisselen, is handiger met lange playlists)
- muziek start wanneer je cd wisselaar selecteert op de hu
- muziek stopt wanneer je gewone cd of radio selecteert op de hu
- hu geeft playlist (cd) en track weer, en update wanneer het volgende nummer begint
- raspberry pi heeft wifi, dus kan cds toevoegen vanaf mn zetel
- bluetooth verbindingen met telefoon zodat ik em ook als carkit kan gebruiken (nog niet helemaal af)
Nog te doen:
- kijken of ik een goede logic level shifter vind (hu/melbus is 5volt, raspberry pi 3.3v - en het melbus protocol gaat best snel en bidirectioneel) zodat de arduino eruit kan, maakt de oplossing gewoon wat eenvoudiger
- paar programmeerdingetjes aanpassen: bv. als er nu minder als 99 tracks in een playlist staan kan je toch nog tot track 99 gaan
- wat bedenken over hoe ik stroomvoorziening/shutdown definitief maak (bv. raspberry pi sluit af een uurtje of 2 nadat de auto geen contact meer heeft)
- alles netjes opnieuw solderen en wegwerken: het is de bedoeling dat het een onzichtbaar iets is en gewoon achter het dashboard ergens verstopt zit (of in het handschoenenkastje)
Dit alles begon eigenlijk als een 'lego'-project. Leuk om te knutselen, maar nu denk ik zelfs dat het iets leuk is eens het ook echt af is :)
Dus eens gekeken naar grom en imiv, want voorop stond/staat dat ik eigenlijk geen 'nieuwerwetse' radio wil, maar net ervan hou dat de radio ook past bij de rest van het interieur (al kan ik begrijpen dat dat voor anderen misschien anders is).
Van het een uitzoeken kwam het ander, en tenslotte was ik aan het zoeken hoe het melbus-protocol (de manier hoe cd-wisselaar en radio met elkaar communiceren) in elkaar stak. Ben best wel geholpen door dingen die ik online vond; al werkte alles niet meteen zoals verwacht. Het protocol is ook niet openbaar gemaakt, dus niet volledig bekend. Vooral het gedeelte dat ervoor zorgt dat je ook cd en track informatie weergeeft op de HU kostte best wat moeite. Functioneel kan je 10 cd's met elk 99 tracks weergeven/gebruiken, dus met 990 tracks is dat best een hoop.
Na een hoop ontwikkelen, testen, debuggen, naar de auto lopen, solderen, heb ik nu volgende proefopstelling:
- arduino die de HU wijsmaakt dat er een cd wisselaar is
- raspberry pi: speelt de muziek af en heeft een extra dac (digitaal-analoog converter zodat het geluid lekker blijft); communiceert verder met de arduino
- bediening vanaf de HU radio voor cd-wisselen en track vooruit/achteruit (al heb ik de hu knoppen omgekeerd: die van cd wisselen dient nu voor track wisselen, is handiger met lange playlists)
- muziek start wanneer je cd wisselaar selecteert op de hu
- muziek stopt wanneer je gewone cd of radio selecteert op de hu
- hu geeft playlist (cd) en track weer, en update wanneer het volgende nummer begint
- raspberry pi heeft wifi, dus kan cds toevoegen vanaf mn zetel
- bluetooth verbindingen met telefoon zodat ik em ook als carkit kan gebruiken (nog niet helemaal af)
Nog te doen:
- kijken of ik een goede logic level shifter vind (hu/melbus is 5volt, raspberry pi 3.3v - en het melbus protocol gaat best snel en bidirectioneel) zodat de arduino eruit kan, maakt de oplossing gewoon wat eenvoudiger
- paar programmeerdingetjes aanpassen: bv. als er nu minder als 99 tracks in een playlist staan kan je toch nog tot track 99 gaan
- wat bedenken over hoe ik stroomvoorziening/shutdown definitief maak (bv. raspberry pi sluit af een uurtje of 2 nadat de auto geen contact meer heeft)
- alles netjes opnieuw solderen en wegwerken: het is de bedoeling dat het een onzichtbaar iets is en gewoon achter het dashboard ergens verstopt zit (of in het handschoenenkastje)
Dit alles begon eigenlijk als een 'lego'-project. Leuk om te knutselen, maar nu denk ik zelfs dat het iets leuk is eens het ook echt af is :)