Carloop: connected car adapter

I wanted to make a compact internet-connected adapter for my car’s OBD-II diagnostic port.

The Photon or better yet the Electron are great options for that.

I found that the pins for a Photon luckily fit right in between the 2 rows of pins of a straight OBD-II connector so it’s possible to make a very compact OBD-II adapter with a Photon by interleaving the OBD-II connector and the headers for the Photon.

Here’s the result: Carloop

More details, pictures, hardware files on GitHub

I’ve been working with @Bspranger and @RLRJCN on the CAN bus driver for the Photon and the Electron. It’s working with the board above.

Next step is to add a library to talk ISO 15765-4 (the high-level protocol for OBD-II over CAN).

I’m thinking of tracking miles in my car (for tax purposes maybe), and sending myself maintenance reminders. What else could you do with this?

Let me know what you think!

Update: This project used to be called CANdlestick because CAN projects tend to have silly names starting with CAN like CANoe, CANape, CANdo… It is now named as Carloop


Will you be selling those boards? Love the name!

I had developed a safety means for getting CAN to SIL2 that I published at work as CAN-be-Safe. I’m sure a Google search would reveal the white paper.

I have done a ton with J1939 but nothing with ISO15765-4.

1 Like

i want! please tell me you are gonna sell these. once the electron is in wide release, the possibilities are endless

1 Like

RC a full size car, kinda like what someone did with a jeep :wink:

Im interested in emulating the petrol engine in my car so i can put an electric motor in.. might be a while till its viable, the price of oil at the moment..

1 Like

This is amazing. Would you be willing to sell them in small quantities?

1 Like

@jvanier, well done! Am I correct in assuming that instead of decoding the CAN data on the Photon, one could build a CAN to TCP pipe to a server that does the actual interaction with the bus?

1 Like

I took a look. Nice paper. I'm planning on using the unified diagnostic service library from Ford Research's open source OpenXC project to implement the OBD-II communication.

I'm considering it now thanks to the awesome feedback :slight_smile: Does anybody have experience with selling on Tindie?

It will have to wait until revision 2 since I already noticed a few problems with the first board. Plus I'll make some of the SMD components a little bigger. Hand soldering 0603 components is an pain...

Sure, why not? OTOH with the Photon being so easy to reprogram, it would be simple to update the CAN processing firmware.

Absolutely! With a server I guess you could have "infinite" protocols and logging, etc. What's great is with CAN now working, it is now up to the designer to chose (thanks again for the great work) :wink:

1 Like

I report mileage for travel to customers and would love to have a single physical button to push that would start my mileage so all I have to do is import the mileage with customer name and done! Since concur is widely used and has an API I bet this could be almost entirely automated, a simple mapping of stop point GPS Cords to customer would do the trick nicely. Automatic is close to this but I hate launching apps for basic interactions with “smart” devices. Even better is something that sees you’ve stopped at a known customer, looks back at the origination, calculates and expenses. Tolls would be the next step in this.


I would like to see some kind of interface to add a GPS receiver (e.g. Adafruit Breakout Board) or similar get all kind of data from a car.

1 Like

@jvanier great idea on utilizing the OpenXC project. I completely forgot about it.

1 Like

My idea in putting a double row of headers was to allow exactly this kind of expansion. Any additional peripheral can be connected to the appropriate pins on the Photon.

Do you have a suggestion for a more specific interface?

I too am very interested in this, I was planning on playing around with my OBD-II port. I got a bluetooth OBD-II adapter and was considering a Bluz, but this would be nice too!

1 Like

I like that this is different than a plain bluetooth OBD-II adapter so the applications can be different too.

As far as I can tell the Bluz doesn’t doesn’t have a CAN peripheral so some additional circuitry would be needed to make an OBD-II adapter with it.

Beautiful! Remember, your costs are lower at PCB houses and parts companies if you buy more units :grin:.
I’ve been stewing over buying a commercial $60 OBD-II unit…but something like this and some OBD-II documentation would be really good hands-on experience, and (end-user supplied Photon) cost a lot less.

Put me down on your list, too! Just don’t make me wait until Christmas for it…:wink:

1 Like

I’ll give an update on the hardware soon, I promise!

if you need a cheap PCB house, i got my business cards done (yes, they are PCBs) at
very cheap, very quick.


I’ve used them too. The PCBs came out quite nicely.

Just for curiosity, what’s the circuit on your business card?

It’s a photon carrier board!

1 Like

After getting some feedback, here are some updates:

  • the PCB revision 2 has optimized components
  • includes a connector for GPS
  • works with Electron too!

And here is a link in case you want put your order to be the first to get the CANdlesticks.