Home‎ > ‎Projects‎ > ‎The Home Automation System‎ > ‎

2017-06-06

While waiting for the I/O board PCB to come back from fabrication I started designing the BBB cape that will house the serial drivers, power supply to the I/O board, more LEDs, and etc.  This of course is necessary because  the BBB's serial ports operate at TTL level and are not tolerant of "proper" RS232 voltages and its I/O pins must not have voltage applied until the chip boots (the reset line goes high).

First order of business is to draw the cape with some level of precision so that it will snap onto the BBB. I tried doing that in KiCad, but that experience proved too painful and I gave up for an alternative inside of 30 minutes.  KiCad does have the ability to import DXF files so I fired up QCad and transcribed the basic shield dimensions from the BBB SRM.  First little annoyance is that in the Rev C.1 of the SRM the sample board connector part numbers are for 0.050 pitch pins where as in reality they are 0.100 pitch pins.  No big deal.  Fixed that.

Tried importing the QCad generated DXF into Pcbnew (KiCad's schematic/board editor).  All of the outlines are super thick.  Like really thick.


Well that sucks.  Maybe I'll just manually change the thicknesses on all of the lines manually.  After about 10 minutes of that I decided that I would rather be a professional nails-on-a-chalkboard applier.  Off to Google I go.

Turns out that KiCad can only import DXF R12 files.  Ok no problem.  QCad Pro does support that export and I did pay for a license.  Click click and try to import again.


To help the reader out I put a green arrow pointing to the result of the import.  That's the wrong size. 


That led to hours of Google, exporting out of this, Google, importing into that, Google, run an obscure command line utility, import into Pcbnew, fail, Google... and so forth.

Finally, FINALLY came across some thread on a forum somewhere that passively remarked that when Pcbnew imports a DXF file it treats it as if the file was in MM (millimeter) units no matter what units the file is actually in.  So that shield that was drawn to be 3.some inches long is imported as being 3.some MILLIMETERS long.


So in the end I was able to produce a DXF file that Pcbnew accepted.  But on a frustration scale, this was definitely a three broken-keyboard level of frustration.  Attached to the bottom of this page are two DXF files - one in inches and one in millimeters.  Feel free to use.  Hint, you will have to 'explode' all of the blocks since Pcbnew does not support such advanced features.


SHIELD_CUTLINES_NORM_IN.dxf -- Drawing with inches as the measurement unit.
SHIELD_CUTLINES_NORM_MM.dxf -- Drawing with millimeters as the measurement unit.