Suitability for a Zero electric motorcycle?

I’m trying to assemble a datalogging and control package for the Zero electric motorcycle community.

The OBD-II plug on a Zero does not behave normally, and aside from CAN bus access, the main feature we want is to read a serial terminal off of the main bike board.

Per How to build a cable to access the MBB - Unofficial Zero Manual, attaching to pins 8 and 9 yields the RX/TX pair for the serial terminal.

Q: Can the Carloop read from those pins in a straightforward way and be configured to primarily work that way?

I’m looking through the app examples but it’s not clear about arbitrary pin access and I’ve seen that many OBD plugs don’t even wire up vendor-allocated pins like these.

One nice-to-have feature would be if it accepted power from another port, as well.

@briantrice,

The zero electric bike forum and all the vehicle hacking looks really cool!

The Carloop is hardwired to follow the standards for OBD-II. Unfortunately, the zero bikes are not wired that way. Thanks for the link; that was exactly the information needed to help you out.

It looks like Carloop is not going to do what you want.
However, you could use it as design as inspiration to design your own solution still using a Photon/Electron/RedbearDuo.

The main clues is your interface is TTL Serial with Rx/Tx at 38400 baud.
The Carloop interface is CANbus, which is a differential (not TTL) bi-directional (Rx & Tx share the same wires).

A great resource for the OBD connector is on Wikipedia:

Carloop is hardwired for the OBD connector as follows:
Pin 6 is CAN-High
Pin 14 is CAN-Low
Pin 4 is chassis GND, which is connected to power GND in Carloop (not really required or recommended)
Pin 5 is signal GND, which is connected to power GND in Carloop
Pin 16 is Battery +12V, which provides power to Carloop

What I do not know is if the zero bike has a CANbus interface on the standard pins 6 & 14 of the OBD connector.

The reason for not providing arbitrary access to the pins is that would make Carloop more complicated (matrix switch & complex circuit board) plus it would be less protected. The other pins are “Manufacturer discretion” which could be used for something totally different that might not be compatible with Carloop or even harmful to the Carloop electronics. For example, putting CANbus voltages on a TTL Serial interface would probably damage the TTL Serial circuitry.

The Photon/Electron/RedbearDuo have Serial interfaces. In fact, Carloop connects a Serial interface to the GPS connector.

You could re-design the Carloop circuit to add connections from pins 8 & 9 to a serial interface of the microprocessor device, plus modify the power source circuitry to something that works for you.

It is doable, but it will take some work. I am doing something similar, except I am re-designing Carloop to add a K-Line interface for pins 7 & 15 of the OBD connector, which means adding a K-Line transceiver chip into the circuit.