Does anyone here do programming as a side gig? I have a project


I’m an Auto repair technician for a living, i have a good understanding of electronic principles, but lack programming knowledge/arduinos. but have recently discovered them and their capabilities and i think they can solve my problem.

The project: I’ve purchased 2015 BMW front seats to retro into a vehicle I have (not compatible platform, non BMW). The seats are power and have a module (drivers seat control module - DSCM and passenger seat control module - PSCM) that take the signals from the swtiches and the module, via transistors, powers the motors to do their respective job. The module has a power and ground input, and a Can Hi and Can Lo input. When I apply power and ground, the seat functions for 7 seconds time and then the module times out and stops functioning. if I toggle a voltage to the can Hi line, it wakes up for another 7 seconds and fall back asleep. keeping a voltage on the line does not extend wake time, still need to cycle on off after the 7 second laps. I’ve found that the module needs to receive a message via CANBUS every second, {0x130, 5, 45, 40, 21, 8F, FE} to not time out every 7 seconds.

Now I could just set up a 555 timer circuit to pulse and it will wake up when it times out. where comes in the second part of the project, the heated seats are also controlled through the module, the signal for heated seats comes from buttons in the dash, which another module sends via CANbus to the DSCM, there’s 3 levels of intensity of operation for the heated seats. So i need to figure out the signal that the DCSM looks for when the heated seat switch is operated, which i can tap into any BMW that comes in and record the can bus data and see what appears when heated seats are requested. (probably sounds simpler than it might be in reality) so i need a way of using arduino and a canbus interface to log canbus data. Then once that data is had to use the signal and an analog input into arduino to communicate that to the DSCM to turn on heated seats. now if going to the trouble of having an operational canbus i could just use it to keep the module awake instead of using the 555 timer as suggested previously.

I will add that the DSCM is designed to communicate on an existing vehicle network, so it doesn’t have a terminating resistor.

Is this feasible, or is this days upon days of work?

Define "feasible". "Somebody" will need to have access to the device. With good documentation: some days. With no documentation: will need some more time.

I may be confused about what you're asking for, but the only request I see is for someone to build a CAN bus analyzer using an Arduino. If that's what you want, it would probably be simpler and cost less to buy a cheap PC based logic analyzer that can read CAN.

I think he wants to cobble together a simple module to provide tha CAN heartbeat, and to,provide the seat-heater on/off control bits.

The smallest Arduino with a 485 interface would be plenty.
Someone with BMW CAN experience would nail it in an afternoon - probably sight unseen.

Hm ... the STM32 BluePill comes with can and is just some bucks. Don't know if CAN is in Arduino.