Reverse engineering av Volvo bilstol

Permalänk
Medlem

Reverse engineering av Volvo bilstol

Jag köpte tidigare i år en bilstol från en XC60 2018 och byggde ihop till kontorsstol men skulle vilja lyxa till det ytterligare med att få igång elinställningen men helst då på icke-destruktivt sätt och genom knappsatsen på stolen.

Jag har kopplat in 12V på matning, batterisparrelä och jord och verkar få signal på LIN och CAN ut från PSM (Power Seat Module) då jag provar att mäta signalerna analogt med nyinköpt arduino, så styrenheten lever av allt att döma när den får ström. Om jag kommer ihåg rätt är styrenheten LIN-master (kommer inte ihåg vad den styr) och CAN-slav (styrs av CEM). Dessvärre så reagerar den inte på någon knapp oavsett vad, jag har testat knappsatsen som är motståndskodad och den verkar fungera då jag får olika motstånd beroende på knapptryck.

Utöver Matning, 12V från batterisparrelä och jord så finns bara CAN och LIN vilket får mig att anta att det krävs någon form av signal på CAN eller LIN för att styrenheten skall göra det den ska men kan inte riktigt förstå varför det skulle vara nödvändigt. Det enda jag kan tänka mig är att styrenheten väntar på data om sparade personliga inställningar innan den låter sig köras.

Har någon nån idé om något jag kan ha missat? Hade tänkt att köpa en CAN shield och en LIN shield ändå kanske och skulle kanske kunna lyssna av frugans tjänstebil för att se vilken data som skickas och återskapa det, men då är det lättare att styra allt med en arduino direkt istället.

Permalänk
Medlem

troligen något att airbagen i stolen deaktiveras(antar att den har en iom så pass ny bil och typ standard på allt efter 2015 eller nått) medans du flyttar stolen då kan tänkas ev sensorer i stolen kanske kan få fnatt när stolen börjar röra sig annars.

så misstänker att knapparna pratar canbus med airbagenheten iaf.

Permalänk
Medlem
Skrivet av Rouge of Darkness:

troligen något att airbagen i stolen deaktiveras(antar att den har en iom så pass ny bil och typ standard på allt efter 2015 eller nått) medans du flyttar stolen då kan tänkas ev sensorer i stolen kanske kan få fnatt när stolen börjar röra sig annars.

så misstänker att knapparna pratar canbus med airbagenheten iaf.

Pyro/airbags är borttaget av bildemonteringen, pyro går på separat krets och har ingen koppling till något annat i stolen enligt kopplingsschema, accelerometrar för krock och dyl sitter i kaross, annat än tempgivare för stolsvärme och hallsensorer för motorer så ska det inte finnas några sensorer i stolen. Möjligt att styrenheten är inhiberad pga saknad pyro men den info kan nog bara komma till styrenheten via CAN då.

Permalänk
Medlem

Men det är inte så att stolens knappars signal skickas till en styrenhet utanför stolen och sedan tillbaka till stolens motorer?

Vet inte hur minnesfunktionen för stolarna ser ut på Volvo, om det är något i en touchdisplay eller om det sitter på stolen.
Är det i touchdisplayen så är det ju en liten risk att stolen styrs via något som sitter utanför stolen.

Permalänk
Medlem
Skrivet av CubaCola:

Men det är inte så att stolens knappars signal skickas till en styrenhet utanför stolen och sedan tillbaka till stolens motorer?

Vet inte hur minnesfunktionen för stolarna ser ut på Volvo, om det är något i en touchdisplay eller om det sitter på stolen.
Är det i touchdisplayen så är det ju en liten risk att stolen styrs via något som sitter utanför stolen.

Har lagt en del tid sedan senast och knappsatsen är motståndskodad, varje knapp levererar ett motstånd (på sin pinne) på antingen ca 580 Ohm resp. 970 Ohm, Power Seat Module (PSM) läser av varje knapp så det är en kabel till varje knapp med en gemensam jordkabel. Hur och vad PSM kommunicerar till bilen gissar jag är stolsinställningen och funktionsval då centerstackdisplayen kan användas också. Varje justeringsmotor har en hall-sensor som av allt att döma inte används för att stoppa motorerna, jag har inte provat att känna av dessa än men gissar att de används för att mäta stolsläget och därmed spara och kommunicera inställningar.

Finns en bra video på youtube som visar inställningsmöjligheterna, min stol har dock inte armen på "hjulet" framtill för funktionsval (svankstöd, massage, sitsförlängare, ventilation) då den bara har 4-vägs svanskstöd.
https://www.youtube.com/watch?v=ausKmJAiSOg

Jag har valt att gå vidare med att styra motorer och allt direkt med en Arduino och reläer och har fått allt att fungera, håller på att skriva ut en box för elektroniken på nyinköpt 3D-skrivare nu så jag kan koppla ihop och montera allt under stolen. Med lite tur så har jag tid att skriva ihop en sammanfattning av bygget och vad jag hittat.

Hade gärna delat elschemat men kan tyvärr inte det pga upphovsrätt.

Permalänk
Medlem

Spännande! Ser fram emot bilder och en berättelse

Permalänk
Medlem
Skrivet av Strepto:

Har lagt en del tid sedan senast och knappsatsen är motståndskodad, varje knapp levererar ett motstånd (på sin pinne) på antingen ca 580 Ohm resp. 970 Ohm, Power Seat Module (PSM) läser av varje knapp så det är en kabel till varje knapp med en gemensam jordkabel. Hur och vad PSM kommunicerar till bilen gissar jag är stolsinställningen och funktionsval då centerstackdisplayen kan användas också. Varje justeringsmotor har en hall-sensor som av allt att döma inte används för att stoppa motorerna, jag har inte provat att känna av dessa än men gissar att de används för att mäta stolsläget och därmed spara och kommunicera inställningar.

Ok! kul att det fungerar
Ja, hallsensorn är nog där för att räkna rotationer på stolens motorer för att på så vis räkna ut var stolen befinner sig.
Men det borde ju även finnas ett "kalibreringsläge" för stolen, om den av någon anledning skulle tappa minnet var den befinner sig.
Men de kanske mäter strömmen i motorn och på så sätt kan läsa av när den når sitt ändläge?, och då på nytt "kalibrera" om positionen.
Hade ju varit coolt om de använde absolut position encoders men de kostar ju en del

Permalänk
Medlem
Skrivet av Strepto:

Varje justeringsmotor har en hall-sensor som av allt att döma inte används för att stoppa motorerna, jag har inte provat att känna av dessa än men gissar att de används för att mäta stolsläget och därmed spara och kommunicera inställningar.

Den sensorn används dels till minnesfunktionen, dels för att styra hur airbagen från instrumentbrädan utvecklas på amerikanska bilar. Sitter man för nära ändras hur den bagen blåses upp för att inte skada passageraren. Detta gäller dock inte på europeiska bilar. Eftersom det är lag på säkerhetsbälte här, designas airbagen bara för fallet att man har det, till skillnad från det amerikanska fallet där man försöker täcka in idioterna också.

Permalänk
Medlem

@mpat det förklarar bättre än något annat varför det inte går att köra stolen utan att PSM får prata av sig med bilen, vet att man iaf förut hade viktsensor på US-specade bilar för att styra airbag så det är logiskt att stolsläge spelar roll för det. Tack för informationen

Permalänk
Medlem
Skrivet av Strepto:

@mpat det förklarar bättre än något annat varför det inte går att köra stolen utan att PSM får prata av sig med bilen, vet att man iaf förut hade viktsensor på US-specade bilar för att styra airbag så det är logiskt att stolsläge spelar roll för det. Tack för informationen

Det är riktigt att passagerarstolen på lite äldre bilar för amerikanska marknaden hade en sorts viktsensor (en blåsa med vätska som pressades ut av vikten). Tanken är att den skall detektera om det sitter ett barn i stolen för att då kunna anpassa hur airbagen skjuts ut. Numer är det en annan lösning som bygger på en kapacitiv sensor, ungefär som en touchskärm, för att försöka detektera samma sak.