When ‘Bad thing™’ happens….

As part of a wider project I have been looking at how to reuse the keyboards found on Thinkpad laptops.  The connector for these is no longer available (at least not in small quantities), however the Molex SlimStack range appears to be a compatible fit.  I was unable to find a simple breakout board for this series of connectors I decided to produce one of my own.

Now, I am used to producing very fine pitch PCBs as part of $dayjob, so I had to move away from my normal design rule set to something that can be built by the fabs used by the PCB bureaux that cater for the hobbiest (lets face it this is a simple connector breakout board – so it shouldn’t tax any fab plant; going to the hobby bureaux provides access to cheaper fabs that can easily cope with these simple boards, but may not be suitable for the stuff I run through with $dayjob, likewise those more advanced fabs I use for $dayjob would simply be too expensive for this kind of work).

My ‘goto’ guy for this is Mitch at Hackvana, having been recommended to me by a friend, Colin (G8TMV), who has also used Hackvana for several projects, his boards are a little bit smaller than the behemoth that is OpenTAC - actually quite a complex, if only 4 layer board, that Mitch produced for me (photo).

Anyway, back to this story…

I dutifully followed the design rules posted on the Hackvana website (indeed I still owe them a set of Altium Templates but that will be another post), and emailed Mitch version 1.00 CAM files.

I got a response very quickly pointing out that I hadn’t quite complied with the design rules (some of my overlay lines were too thin – turns out I didn’t care if they came out or not).  More importantly though, Mitch suggested that if I shrank my board ever so slightly that the cost would be massively reduced!

Lets just take a moment to think about this.  Here am I with a farily good expectation of the price I am going to pay, I have submitted files to be made, and my supplier has come back and said:

[That will be] USD30.  They'd be USD19 if you can get them to fit within 5x5cm.

Now $30 is a low price for 10 boards no matter how small.  $19 is a fantastic price, and it was all of a matter of a few minutes work to fit inside the smaller size constraint…

PCB Layout
PCB Layout

Great, I made the changes, sent through the updated CAM files and awaited my lovely boards…

Well yesterday came and I got a message form my wife telling me that the boards had arrived.  I got home and inspected them.

PCBs have arrived
PCBs have arrived

Something looks wrong, can you spot the problem?

Faulty board
Faulty board

 

If you haven’t spotted the problem; there is a plated, arc / partial hole, on the top left of the board (all boards) that is joining the ground plane to pins 5 and 6 of the connector.

I double checked that I hadn’t screwed up by opening the CAM files (into a different package than I created them in) then sent an email containing the above photo to Mitch at Hackvana detailing my problem (and prodded in IRC).  Within 3 minutes I got a response:

That's really not on!

Can you please send me another photo that shows the extent of the problem?
Ie, does it apply to just one board, or does it apply to some (percentage
affected?) or all?

I will get replacements made and shipped to you ASAP.

A short exchange of emails later, including the first photo showing the problem on all of the boards and me explaining that I don’t need the replacement PCBs back in any hurry (I am off to Debconf so will be unable to do anything with these boards even if they arrived tomorrow)

Now that is customer service!  OK it is unrealistic to expect a responce of 3 minutes, but a fast response, acknowledging the problem, and offering to do something about is what I expect, and all to rarely receive.

Customers have a right to expect what they order to arrive on time and defect free.  This should be the norm and so nothing of note here.  However things do, occasionally, go wrong.  In this case I suspect that the board adjacent to mine had a stray pad that for whatever reason got missed (at the prices I am paying it would be unrealistic to expect the fab plant to notice this – hoped for but not expected) and this encroached into the panel space that had been allocated to my board.

Occasionally though, things do go wrong, and ‘Bad thing™’ happens….

Just how a company reacts in these situations is what separates a good company from the bad.   Had this been one of the faceless automated PCB bureaus out there, I suspect that I would still be trying to contact customer support, with Hackvana, however I am now awaiting my replacement boards happy in the knowledge that they have seen the problem and are putting it right.

Of cause what separates a good company from a truly excellent one is that they put measures in place to stop this from happening again…  Only time will tell on that front, but for now, even though I still don’t have my boards, I’m still a happy customer.

OpenTAC sprint, Cambridge

Last weekend saw a small group get togeather in Cambridge to hack on the OpenTAC.  OpenTAC is an OpenHardware OpenSoftware test platform, designed specificly to aid automated testing and continious intergration.

Aimed at small / mobile / embedded targets OpenTAC v1 provides all of the  support infrastructure to drive up to 8 DUTs (Device Under Test) to your test or CI system.
Each of the 8 EUT ports provides:

  • A serial port (either RS232 levels on an DB9 socket, or 3V3 TTL on a molex kk plug)
  • USB Power (up-to 2A with a software defined fuse, and alarm limits)
  • USB data interconnect
  • Ethernet

All ports on the EUT interface are relay issolated, this means that cables to your EUT can be ‘unplugged’ under software control (we are aware of several SoC development boards that latch up if there is a serial port connected before power is applied).

Additionly there are 8 GPIO lines that can be used as switch controls to any EUT (perhaps to put a specific EUT into a programming mode, reboot it or even start it)

 

Anyway, back to the hacking weekend. ..

 

Joining Steve McIntyre and myself were Mark Brown, and Michael Grzeschik  (sorry Michael, I couldn’t find a homepage).  Mark traveled down from Scotland whilst Michael flew in from Germany for the weekend.  Gents we greatly apprecate you taking the time and expence to join us this weekend.  I should also thank my employer Toby Churchill Ltd. for allowing us to use the office to host the event.

A lot of work got done, and I beleive we have now fully tested and debugged the hardware.  We have also made great progress with the device tree and dvice drivers for the platform.  Mark got the EUT power system working as proof of concept, and has taken an OpenTAC board back with him to turn this into suitable drivers and hopfully push them up stream.  Meanwhile Michael spent his time working on the system portion of the device tree; OpenTAC’s internal power sequancing, thermal managment subsystem, and USB hub control.  Steve  got to grips with the USB serial converters (including how to read and program their internal non-volatile settings).  Finally I was able to explain hardware sequancing to everyone, and to modify boards to overcome some of my design mistakes (the biggest was by far the missing sence resistors for the EUT power managment)