DavidL
RVF VIP
- Joined
- May 8, 2021
- Messages
- 237
- Location
- Metamora, MI
- RV Year
- 2002
- RV Make
- Newmar
- RV Model
- MountainAire
- RV Length
- 4370
- Chassis
- Spartan K2
- Engine
- Cummins 500hp
- TOW/TOAD
- Grand Cherokee
- Fulltimer
- No
Thought I would start a thread to discuss integrating engine / transmissions / CAN / RV-C / KIB data into RVs, Trucks and Boats.
So, as a preface, my background is from automotive. I was responsible for DaimlerChrysler's Service Strategy at a mid point of my career. During that time, I co-invented the first Wifi and then Bluetooth OBDII scan tool. Later, I worked on connecting Fiat/Chrysler vehicles to the internet (Uconnect Access program). Today, in "retirement" my personal company has created a full featured automation and media control system for homes, sports bars, restaurants and entertainment complexes.
So, with that background I have toyed with the idea to retie all of the above together in my RV to integrate all of the silly subsystems that don't integrate well together into an intuitive control system. This month finally found the time to start integrating powertrain data into the system. I have already integrated all of the media systems and for the HOOTS RV trip late this year, integrated the water systems together.
So, here's the plan: Plug a "VID" (Vehicle Interface Device) into the standard diagnostic connector. VID1 will be for all OBDII vehicles (post 1996 cars w/ gas motors). This connects to our software we call "VIC" (Vehicle Interface Controller). VIC currently runs on a Raspberry PI4. VIC software then communicates "MQTT" to our myServer 6 automation system that can run on the same Raspberry PI, or a separate one, or Windows, Linux or Mac OS. The MQTT data has the vehicle data that myServer 6 then creates server variables.
myServer 6 has a very capable user interface design tool we call "myDesigner 6". This is a drag and drop design tool for the non programmer to create custom user interfaces. So, the UI can be pretty much whatever you want. Far more customizable than any scan tool on the market.
So, I have discussed the above with several forum technically adept folks that have attempted same over the last few years. But those conversations just never matured. So, decided to prioritize, roll up the sleeves and Get Er Done. So, current status is we used an ELM inexpensive VID that connects USB (bluetooth and Wifi are also possible) to VIC running on our myServer 6 controller running on a Raspberry Pi. The VIC software talks to the ELM and polls the vehicle data buss. If data has changed, then VIC sends the changes to myServer to update variables. myServer then updates the user interface (and automation rules) to display the data in gauges, charts, button states, text, etc. As of last week, this is now all working very nicely! We can prioritize how often VIC polls VID for updates on a per data element (rpm fast, temperatures medium, fuel level slow) to optimize system performance. And since VIC only sends MQTT on a change, then myServer 6 isn't getting spammed with too much information so it can talk efficiently to all of the media, water systems, lighting, and other systems. All of this can be run locally in the RV (no requirement for Internet) or can also be connected to the Internet if you want (in a secure way).
Next steps: Design a cool "digital dashboard" user interface that looks nice. Once that is done, then I would feel it is time to show a video of how it all works.
We also just started to integrate J1939 vehicles into VID1 / VIC. Same ELM327 chips support J1939. Hopefully this will be working in a couple of weeks so I can use all of the above in my MountainAire (Cummins 500). My 2002 MountainAire also has older J1708 data which the ELM unfortunately does not support. So, that may force us to look at "VID2" which would have a different CAN protocol handling.
Once J1939 works, then next step would be to add "VID2" to support RV-C protocol. This would integrate with Silverleaf and other devices and systems to integrate existing slides, generators, fluid levels, inverters that are in newer higher end coaches.
VID3 would either support marine CAN protocols and possibly to support KIB protocol for RV subsystem integration (lighting etc) for RVs that have that technology. I have a Wakesurf Mastercraft boat that has lots of integration and control systems so this might be a personal priority.
Some of you have used "HomeAssistant" open source automation software. In parallel to the above, we have also created an integration between HA and myServer 6 so you can get the best of both ecosystems (like myServer's user interface capability).
So, I'll post some updates for those interested in this thread as the advancements are available. Feel free to post your ideas on what you would like the system to do and what your vehicle supports. If any of the technically adept would like to contribute (like KIB stuff), lets talk! I bought some KIB hardware to play with already. My RV doesn't have any KIB or RV-C.
Description for the non technical (most): See your RVs motor and transmission data (and any faults) on your own customizable dashboard you can view on your phone, tablet, windows, MAC computer (any modern device that has a browser like Chrome or Safari).
So, as a preface, my background is from automotive. I was responsible for DaimlerChrysler's Service Strategy at a mid point of my career. During that time, I co-invented the first Wifi and then Bluetooth OBDII scan tool. Later, I worked on connecting Fiat/Chrysler vehicles to the internet (Uconnect Access program). Today, in "retirement" my personal company has created a full featured automation and media control system for homes, sports bars, restaurants and entertainment complexes.
So, with that background I have toyed with the idea to retie all of the above together in my RV to integrate all of the silly subsystems that don't integrate well together into an intuitive control system. This month finally found the time to start integrating powertrain data into the system. I have already integrated all of the media systems and for the HOOTS RV trip late this year, integrated the water systems together.
So, here's the plan: Plug a "VID" (Vehicle Interface Device) into the standard diagnostic connector. VID1 will be for all OBDII vehicles (post 1996 cars w/ gas motors). This connects to our software we call "VIC" (Vehicle Interface Controller). VIC currently runs on a Raspberry PI4. VIC software then communicates "MQTT" to our myServer 6 automation system that can run on the same Raspberry PI, or a separate one, or Windows, Linux or Mac OS. The MQTT data has the vehicle data that myServer 6 then creates server variables.
myServer 6 has a very capable user interface design tool we call "myDesigner 6". This is a drag and drop design tool for the non programmer to create custom user interfaces. So, the UI can be pretty much whatever you want. Far more customizable than any scan tool on the market.
So, I have discussed the above with several forum technically adept folks that have attempted same over the last few years. But those conversations just never matured. So, decided to prioritize, roll up the sleeves and Get Er Done. So, current status is we used an ELM inexpensive VID that connects USB (bluetooth and Wifi are also possible) to VIC running on our myServer 6 controller running on a Raspberry Pi. The VIC software talks to the ELM and polls the vehicle data buss. If data has changed, then VIC sends the changes to myServer to update variables. myServer then updates the user interface (and automation rules) to display the data in gauges, charts, button states, text, etc. As of last week, this is now all working very nicely! We can prioritize how often VIC polls VID for updates on a per data element (rpm fast, temperatures medium, fuel level slow) to optimize system performance. And since VIC only sends MQTT on a change, then myServer 6 isn't getting spammed with too much information so it can talk efficiently to all of the media, water systems, lighting, and other systems. All of this can be run locally in the RV (no requirement for Internet) or can also be connected to the Internet if you want (in a secure way).
Next steps: Design a cool "digital dashboard" user interface that looks nice. Once that is done, then I would feel it is time to show a video of how it all works.
We also just started to integrate J1939 vehicles into VID1 / VIC. Same ELM327 chips support J1939. Hopefully this will be working in a couple of weeks so I can use all of the above in my MountainAire (Cummins 500). My 2002 MountainAire also has older J1708 data which the ELM unfortunately does not support. So, that may force us to look at "VID2" which would have a different CAN protocol handling.
Once J1939 works, then next step would be to add "VID2" to support RV-C protocol. This would integrate with Silverleaf and other devices and systems to integrate existing slides, generators, fluid levels, inverters that are in newer higher end coaches.
VID3 would either support marine CAN protocols and possibly to support KIB protocol for RV subsystem integration (lighting etc) for RVs that have that technology. I have a Wakesurf Mastercraft boat that has lots of integration and control systems so this might be a personal priority.
Some of you have used "HomeAssistant" open source automation software. In parallel to the above, we have also created an integration between HA and myServer 6 so you can get the best of both ecosystems (like myServer's user interface capability).
So, I'll post some updates for those interested in this thread as the advancements are available. Feel free to post your ideas on what you would like the system to do and what your vehicle supports. If any of the technically adept would like to contribute (like KIB stuff), lets talk! I bought some KIB hardware to play with already. My RV doesn't have any KIB or RV-C.
Description for the non technical (most): See your RVs motor and transmission data (and any faults) on your own customizable dashboard you can view on your phone, tablet, windows, MAC computer (any modern device that has a browser like Chrome or Safari).