GRAYnomad Nature Photography :: The QUUB


Quub is an open-source, micro controller system based on a core processor, addressable daughter boards, and remote IO modules.

The Quub system has the following features.

  • The core processor board is an Adafruit ItsyBitsy M4 module, this features a SAMD51 32-bit Cortex M4 processor running at 120MHz.
  • Small form factor, nominally 2.4 x 2.4 inches (60x60mm).
  • Addressable daughter boards can be stacked above or below the core processor.
  • 20-way backplane using stackable headers or a physical backplane just like the "old days".
  • The backplane has provision for I2C, SPI, 2x UART, analogue in and out, and addressing daughter boards.
  • Up to 16 daughter boards can be addressed and can therefore share the same system IO lines.
  • Options for "vectored" interrupts to be generated by any or all of the 16 daughter boards.
  • A unique method of attaching four "walls", IE vertical PCBs that have access to all the backplane signals. These walls can be blank or have active circuitry. Either way they make the Quub design "self enclosing", no need for a box.
  • An optional "mezzanine " expansion module, useful for small adons such as a real time clock or SD card socket.
  • Unique module IDs can be read by the core processor so it knows exactly what IO is connected.

The Quub is a general-purpose embedded microprocessor system, the form factor can accommodate designs from the simplest flashing-LED project to a complex multi-processor robot controller.

If you need a system with over 200 analogue inputs, or maybe 40+ serial ports, or more than 500 digital IO connections, no problems, Quub can do that and more. And if that's not enough hook up multiple Quub stacks together.

Simple systems like Arduino and Picaxe have been around for some time now while at the other end of the complexity/power spectrum it seems that a new Linux-based 1GHz ARM board is being release every second day.

All current systems either pay lip service to add-on functions or are hamstrung by a backplane design that does not allow multiple "shields" to be used without many clashing issues. The Quub aims to rectify that.

Backplane — With the vast array of I2C and SPI peripheral IO chips now available it makes sense to have a backplane with just a few signals that communicate with slave devices using one of these popular serial interfaces.

The Quub then is designed to rely heavily on these serial communication methods with the majority of the IO performed by smart peripheral ICs or dedicated CPUs working as co-processors.

But most systems have these serial interfaces, what's different about the Quub backplane?

  • The main difference is that on a Quub system you can address the plugged-in modules, this means that you can for example have up to 16 identical modules and there are no pin-clashing issues. Or you can use modules from different sources and not have to worry about them using the same pins.
  • Interrupts. The Quub backplane allows up to 60 vectored interrupts to be provided by modules, that's four per module. So when an event happens you can deal with it very quickly.

You want Linux? — While the design of a Linux-based ARM7 board with HDMI, USB OTG and all the modern goodies is outside the scope of the current Quub brief, such a board could be designed to plug into a Quub backplane. That said there a multiple options for a high-end ARM boards these days and the Quub will not try to compete with them.

The Quub can however be used as an IO sub-system to these more powerful systems, many of which are somewhat IO challenged.