I’ve always loved complex machines that can handle and transform huge amounts of energy to make very useful work. Among these machines, my life choices got me into the automotive field, where I’ve been working for the past 10 years. Just after school I found a job at Texa, an automotive diagnostic company, where I was writing software and reverse engineering communication protocols. My passion for efficiency and electronics made me leave that job after 5 years to pursue a career more focused on pure electric vehicles, so I joined another company where I developed power trains for EV conversions, and I even worked on a DeLorean conversion.
While working with electric cars, I stumbled upon two very interesting open source projects:the Open Vehicle Monitoring System, an IoT device to control every aspect of your car from a smartphone app, and the GEVCU, an universal ECU especially designed to handle the common problems faced when converting an ICE car to electric.
Inspired by these two devices, I want to build something that could take the best of the two approaches to very similar problems.
I have a few goals in mind.
– I want my device to be small. That is both tho satisfy my efficiency fetish, and to have it fit inside the shell of a standard ELM327 bluetooth adapter:
(This is the original bluetooth board)
– I want it to be connected to the internet. I will use a GSM GPRS module and a GPS module to provide location
– It will have an USB connector, so the user will be able to easily update firmware and, most important, load a custom firmware to temporary use it as a Reverse Engineering tool. This way, the user will not need to buy other tools and will be encouraged to develop new functionality.
– It will be cheap. I’m aiming at a price a bit higher than the OVMS.
– It will be easy to develop custom software, thanks to the mbed platform
But wait, there’s more!
I just described the hardware, but my vision is bigger than that.
The community website
Right now, if someone wants to find infos on a car’s CAN bus, he/she has to sort through a lot of noise. A lot of reverse engineered messages can usually be found on the documentation of the various projects like the OVMS, but other times they’re buried under thousands of messages on forum threads – and you may find later that they’re wrong, as it was documented a few posts later, so you have to read the entire thread to get useful info. Been there, done that. More importantly, there’s no standard way to present this kind of information.
I think that we need to create a common repository/wiki database where we can share this kind of information with a common standard, aiming at being able to automatically download a “descriptor” file that can run on an universal software. More on that later.
I want to make instructional videos on the lines of the EEVblog. I’m a very practical person, and I learn stuff only by doing it; my videos will be targeted to people like me, focusing on a defined task and explaining every step taken to get there.
For example, to teach the basics I want to make a series of videos on how I built an ECU to open the top of my car from the remote; this may be the lineup:
- Basic automotive electronics
- where to find information and schematics
- OEM diagnostic equipment
- Reverse engineering the CAN bus
- Transferring the studies into code for the ECU
And that’s about it for the general idea. Stay tuned for more info!