Distributed Output Boards—Our First Generation

First Generation Output Board

First Generation CAN output card

In the early 1980s we had successfully used ArcNet in factories. It was transformer coupled, ran at 2,5Mbps and had a range of hundreds of meters. After struggling with RS-485 and facing leadtimes of several months for 3,3V RS-485 buffers, we started to look for an alternative. CAN looked good, however, after years of the 68000, the horrid 8051 was just no good at trying to run a real-time kernel, and if you look at the four layer board on the left that was produced, the cost was not much less than the double sided 68008 based cards. That was 1998—fast forward to 2011. ARM devices with CAN interfaces are cheap, have excellent debugging features and run 32-bit software. We have a couple of boards and will get evaluation boards for the Luminary Micro 8962, and Energy Micro’s Gecko as well. We have purchased the Rowley Associates CrossWorks compiler toolchain and JTAG debug probe.

The old documentation from 1998 was gathered and put through LaTeX in 2011, with a download:
Distributed Output Boards—Our First Generation 499 kBytes distOutputs1.pdf

Kinetis Collage

The next set of distributed output cards will be based on popular evaluation platforms to simplify porting and for other people to repeat our instrumentation from a known good base.

The set of cards shown here are from the Kinetis K60 Tower kit from Freescale. We will be collecting various evaluation modules before finalising the hardware design of the testbed. Each device has several thousand pages of documentation. For the MQX real-time kernel supplied by Freescale, at least we will not have to document a RTOS. That is another learning curve, but the Cortex-M4 core and source level debugging will be a lot easier than prior “blind” hardware from a visibility into the core viewpoint. The 8051-based CAN device in the first distributed output card does not compare to the ARM offerings, so the chances of success should be better.