Kovan: An Autonomous Robot Controller Board

November 28th, 2012

I’ve recently been focusing on making open hardware “reference designs”. Kovan is the codename for a circuit board I designed, intended for autonomous robot control applications (fun fact: all my codenames are metro stops in Singapore). I think Kovan could benefit many niche applications, particularly those that are less cost-sensitive and require a more integrated solution than a cable-spaghetti of daughtercards plus a Raspberry Pi or Beaglebone plus USB dongles.

Kovan is highly integrated, and incorporates features such as an FPGA. The use of an FPGA to interface with the control inputs and outputs offers a unique opportunity for developers to create very precise, low-jitter control loops in VHDL or Verilog, leaving the CPU free to do other tasks. For example, the reference FPGA design uses a system clock of 208 MHz for the servo pulse width controllers, allowing for a 5-nanosecond pulse resolution programmed using 24-bit control registers.

You can grab the source for the hardware through these links: gerbers, schematics in PDF format, 3D STEP model of the circuit board, the native Altium designer source files, and the FPGA source code in verilog. Updates and new developments on the board will be posted and archived at the Kovan wiki.

The next natural question is, of course, ‘how much and where can I buy one?’ This is where things get a little bit unusual. When I release a “reference design”, it means that a third party would market the product. An example of this is the Kickstarted Safecast X geiger counter based upon the geiger counter reference design that I released in January. I’m not producing the geiger counter — International Medcom has instead picked up the design and they are producing and marketing it.

In this case, Kovan is being used by KIPR for the botball educational robotics program. Botball also had a Kickstarter campaign to pre-fund the initial build. Below is the video they produced to promote their product.

While the fully integrated controller won’t be available for sale until early next year through Botball’s store, Adafruit is kind enough to distribute a limited quantity of the motherboards on my behalf in their store. I plan on making a couple dozen boards available to interested developers who can’t wait until the full kit is available through botball. The board alone plus power supply is available for $249, whereas the full botball kit shown in the video above, including LCD, battery, case, software, etc., will go for around $400.

The reference development environment for Kovan is based upon the OpenEmbedded Angström distribution, similar to the system used by the Beaglebone. The firmware version we’re shipping inside the Adafruit boards comes with gcc and Python pre-loaded, so you can get started right away with development — no need to set up cross-compilers. You can download and build your own firmware from source if you want by following this guide. Note that this firmware is different from the one that will be provided with the Botball version, in that this firmware is entirely open source and is targeted toward developers with prior programming experience.

Keeping with a tradition started on this blog long ago, the first user to correctly guess or otherwise determine the number of vias on this circuit board will win a free Kovan board as a prize!

More about the Hardware

Features
Kovan integrates onto a single PCB all the features you need to build a self-guided robot:

    Actuator capability

  • 4x 1.2A H-bridge motor drivers
  • 4x servo drivers
    Sensing capability

  • 8x 10-bit analog inputs (5v/3.3v gang-selectable input range with individually programmable pull-ups)
  • 8x digital I/O (5v/3.3v gang-selectable levels with individually programmable pull-ups)
  • Rapid-prototyping headers (each I/O pin has adjacent +/- power rails so as to simplify sensor biasing)
  • 3-axis accelerometer
    Connectivity

  • 802.11b/g wifi
  • 2x USB 2.0 ports (suitable for video input via webcam)
  • 2x 3.3V UART (one console, one expansion)
  • IR rx & demodulator
  • IR tx (modulation to be done in FPGA)
    UI

  • LCD + touchscreen connector (natively supports 3.5″ screen)
  • Mono audio output
  • Pushbutton and status LED indicators
  • Optional digital video output driven by the FPGA (NeTV users might recognize the motif)
    Processing

  • Linux 2.6.34 running on 800 MHz Marvell ARM w/128 MB DDR2 + 2 GB microSD for firmware storage
  • FPGA co-processor enabling hard real-time control extensions & advanced image processing extensions
    Battery

  • Integrated 2-cell Li-Ion battery charger (C=1.5A)
  • Board runs for about 4 hours on a typical 1800mAh 2S1P Lipo RC pack (no motor load condition)
  • Battery plug uses Molex rectangular housing 0039013022 (Digikey WM1021-ND) with crimp terminals Molex 0039000207 (Digikey WM3116CT-ND)
  • Note: battery or battery emulator required for proper operation – board will not boot otherwise. For battery-less operation, it’s recommended to power the board using a 7.5V power supply (such as Digikey 62-1169-ND) plugged into the battery socket using the above Molex connectors. Do not simultaneously use a battery emulating power supply and a primary power supply, as this would cause the battery charger to attempt to charge the emulating power supply!

2013 Name that Ware Calendar

November 28th, 2012

I almost forgot to mention this! You can get a 2013 Name that Ware calendar now at cafepress. Note that since we don’t yet have the full set of 2012 wares and winners, the photos for 2013 are still from 2011, but next year I’ll make a 2014 calendar using 2012 photos.

Name that Ware November 2012

November 28th, 2012

The ware for November 2012 is shown below.

This one should also be an easy guess, but I’m posting it because I think it’s cute and quaint, and I haven’t found any decent high-res photos of this mainboard alone on the web.

Winner, Name That Ware October 2012

November 28th, 2012

As expected, the ware for October 2012 was imminently guessable. Julien Lefort got it within minutes of the ware going up, congratulations and email me to claim your prize!

I thought it was noteworthy that the H.264 Pro Recorder’s mainboard has components on only one side — the designers opted to not put any components on the back side, not even decoupling capacitors (I tend to use underside-mounted decaps to minimize lead lengths to the IC die). Counterbalancing that is what appears to be blind/buried micro-via construction of the PCB itself. It’s an interesting and unique design methodology. The overall design is very clean, my guess is the hardware design team was located in a single facility in the US or Europe, and the layout was probably done in-house.

One man’s trash…

November 10th, 2012

I was wandering around the Hua Qian Bei district yesterday with xobs trying to buy a couple of power supplies for bringup of an open-source quad-core ARM laptop we’re building, and lo and behold, I came across this:

It’s the first time I’ve ever come across one of my former products in the Shenzhen markets. It’s kind of neat because I have intimate knowledge of how it might have ended up at this reseller’s stall. It also brought back old memories of agonizing over the logo color and placement — I think we tested over a half-dozen shades of gray before we settled on this one, and we had to fight with the printer to get the eyes just right and no smearing despite printing on a curved surface (accessories are in many ways harder than the product itself). Amusingly, this lady is selling the power supply for less than it cost us to originally buy it (you can just see the top of her head in the photo, she ducked behind the counter to find the power supplies we were buying, and I snapped the photo while she wasn’t looking).

Most of the excess inventory for this power supply ended up in the US office to handle exchanges & returns, so I’m pretty sure these are from a batch of power supplies that we had rejected. If I recall correctly, I had discovered an issue where one of the inductors in the power supply was missing the glob of glue required to hold it in place. Shipping the unit subjected the power supply to vibration, which caused the inductor to rub against a neighboring part. The rubbing could wear off the enamel on the inductor, which ultimately leads to the inductor shorting against the neighboring part. The power supply’s internal fuse correctly blows when this happens, so it wasn’t a safety issue; but the defectivity rate was around a few percent after shipping. I think a few thousand power supplies were sent back to the manufacturer over that issue. My guess is that after many years, the manufacturer finally found a sucker^H^H^H^H^H^H reseller who would peddle it in the markets.

Inspires confidence in the other ‘brand-name’ power supplies she was peddling, doesn’t it? On the other hand, I did buy a Lenovo-branded power supply that was perfect for my needs. ‘Brand new’ with plastic over the logos, it set me back only $4 a piece, and I did verify on the spot using a multimeter that the power supply did output the correct voltage. Probably good enough for development use, and at that price you just buy two in case one breaks.