Hack Your Car with WiCAN
WiCAN is a ready out-of-the-box solution for car hacking and general CAN bus development equipped with Wi-Fi and Bluetooth.
Maybe it's just because my car recently threw a check engine light in rural Pennsylvania during an 1100-mile road trip that caused this project to catch my eye on Crowd Supply or maybe it's just because I've just been more interested in cars in general over the past couple of years, but this little open source project is key for anyone wanting to keep tabs on their car's performance.
The WiCAN is an open source ESP32-C3 based CAN adapter meant for hacking your car or just general CAN bus development. The WiCAN is available in two form factors: the standard USB-CAN adapter for general development, and the OBD-II for plugging in under the dash in your car.
Modern cars are equipped with tons of sensors and mini-computers to monitor its functionality and let you know if/when something is wrong. This network of devices in your car relies on uninterrupted communication, which is what lead to the development of control area network (CAN) systems.
WiCAN is ready to go out-of-the box and it comes with vehicle-diagnostic APIs and libraries in various languages and for various operating systems. So you can create a custom solution for your car, storing your make/model's check-engine light codes for example.
WiCAN has APIs for various languages including LabView, C#, VB.Net, Delphi, and Python. It also works with many pre-existing vehicle-diagnostic libraries such as RealDash, SavvyCAN, BUSmaster, python-can/SocketCA, etc.
WiCAN connects to your existing Wi-Fi network and any device on that network, and allows you to configure Wi-Fi and CAN settings through a built-in web interface. It also has a power saving mode to detect when the voltage drops below a set threshold and it will go into sleep mode which drops its input current draw to less than 1mA.
So when you're in rural Pennsylvania and the O2 sensor monitoring the output of you're car's catalytic converter to verify it's working properly decides to start slowly dying and throwing a check engine light (forgive my elementary description here if you're a mechanic reading this), you can pull out your WiCAN and connect via the custom dashboard you've created for it from your phone. Then you can ultimately decide to clear that code after a few Google searches and call back to your regular mechanic lets you know that as long as your check engine light isn't flashing, then you can drive home instead of calling a tow truck.