Close

Number twoooooooo

A project log for CAN-obd2

This project was started as a way to display and save information from my 2008 Honda Civic's OBD2 port.

kevinjkriegerkevinjkrieger 08/13/2014 at 06:050 Comments

Who doesn't love Austin Powers? "Come here Number two". Cracks me up every time.

Anywho - It's high time for a project log update I think. I drank a couple pots of coffee this past weekend (long weekend here in Saskatchatooon) and crushed out version two of the PCB to fix a bunch of mistakes and add functionality. I like to think it's prettier as well but who am I to judge my own baby? Even if it is sssshhooooo cuuuuute.

Here's a render from OSHPark:

CAN obd2 version 2 top renderOh baby. 

So what's new?
1) I improved some of the silkscreen - generally made the small capacitor values bigger and easier to read, as well as removed things like "K2" which didn't really mean anything to a user of the board. Heck, even I forgot what the connector K2 had on it until I looked at the schematic. Now it's simply called "UART" because that's just the way it is.

2) HC05 bluetooth module. You can see this in the bottom right corner and despite being a very small module it still takes up a lot of real-estate. The lack of copper pour (ground plane) underneath the right side of it is so that the antenna can work properly.

3) LCD redesign. I completely did away with the incorrect footprint for the second option LCD. I also improved upon the basic 16 pin LCD by adding a PWM controlled LED backlight circuit and a PWM controlled contrast circuit (mosfet with low pass filter). Now I know you're worried about me and how I've never done this before, but don't you worry - I made it such that I can simply implement the previous resistor divider to control the contrast as before. 

4) Input pushbuttons now have a capacitor to ground. It was insane the amount of bounce I was getting with these buttons: FSM4JSMA. As a stop-gap solution I simply disabled interrupts for a second or so after a pushbutton interrupt fired.

5) Fixed the MCP2561 footprint. The error was that my footprint part in my KiCad library had pins going like the following on the left, instead of the correct way on the right:

1                 5                                  1               8

2                6                                 2               7

3                7                                  3               6

4                8                                  4               5

Don't know how that happened.

6) I added a K-line transceiver from Freescale!!!! Woot! It's the MC33660 and it costs $1.06 from Digikey in single quantities. I also added an optoisolator for the L-line, which apparently is only used during initialization and seems to be the dumb sibling to the K-line. Oh well.

7) Instead of the large through hole LM335, I opted for the small, cute, TC1047A as a board temperature sensor. Bonus: It doesn't require a pull up resistor. (Yes I know the lm335 comes in surface mount but I don't have any).

8) All through hole resistors are now surface mount! 

9) Naturally, I rid myself of the solder jumpers for the K-line, L-LIne and SCS line. I determined that the SCS line is pretty useless for me through some gogoogaling, so I choose to ignore.

10) Total reboot of the net connections to be able to fit everything on the same size board.  I really wanted to keep the board size the same. Both for costs and also because it is a standard board size from the "Sick of Beige"  standard. I had to remove one of the screws, but who really cares? This process involved me trying to lay out the two sided board for a couple hours before realizing I needed to flip the whole LPC11C14 180 degrees and start from scratch. So that's what I did and boy it worked! I had both monitors going, one displaying the actual physical PCB layout and one displaying the schematic diagram, which I tweaked incrementally while moving parts around the PCB and discovering how to route traces that don't intersect each other. Yay for general purpose IO pins.

Here's a render of the bottom:

Discussions