Wemos gateway to ELM

For remote testing purposes we have implemented an Elm327OverHttp gateway driver in CanZE. What it does is in CanZE is requesting the two frame types used through high level primitives over http. This allows for different easy to build implementations of CANbus drivers or driver emulators. At this moment there are two services available:

  • a simple webserver running a few PHP scripts emulating a gateway to a car. There is no real car connected and the data returned are entirely static. It allows for easy testing of CanZE though without a car connected;
  • a device based on a WeMos D1 mini board and a HC-05 Bluetooth interface. The Bluetooth interface connects to an ELM327 dongle in the car and the WeMos is both a small webserver implementing said primitives and doing all the hard work talking to the dongle.

For high speed testing I am building a second WeMos based interface that connects directly to the car with a CANbus interface. Once that one is done, I will add another page in the hardware section for it.

These http based interfaces allow for testing away from the car, keeping Android Studio’s debugger connected to the phone or tablet while testing and even running CanZE in an emulator.

USB powered Wemos D1 mini + HC-05 on perf board

Wiring is very easy:

Wemos <--> HC-05
3.3V  <--> 3.3V
G     <--> GND
TX    <--> RXD
RX    <--> TXD
D1    <--> WAKEUP

The source code is available here on gitlab.