The Aithon board is a fully integrated microcontroller board with a 32-bit ARM Cortex-M4 and a powerful, easy to use software library.
What is it?
The Aithon board is a microcontroller board that combines the power of a 32-bit ARM Cortex-M4 with several integrated features that make robot building and experimentation fun. We set out to create a board that is as easy to use as the Arduino, but with more processing power and a complete, fully integrated set of features.
This project started out as a robot controller board designed to meet the needs of local robot builders, but we realized the design would be great for enthusiasts as well as for students in any high school or university-level robotics class. If you are involved in FIRST robotics, take a serious look at the Aithon board. So, here we are on Kickstarter. We need your help to get this board out to the robotics community.
We provide libraries to make it easy to use, but at the same time, the board's capabilities will not limit the electronics expert. We are believers in open source hardware and software. All schematics and library source code will be available for download.
The Aithon board is packed with a variety of great features which are built around a 32-bit ARM microcontroller running at 168MHz. We've listed a few of the highlights below, split up by category.
- 32-bit ARM Cortex-M4 168 MHz with FPU (STMicroelectronics STM32F407)
- 512KB flash and 192KB RAM
- Up to 17 timers
- Real time clock
- 12-bit analog to digital converter (ADC)
Board Headers and Sockets
- All digital I/O is 5V tolerant (running at 3.3V)
- 15 GPIO (not counting various bus headers)
- 8 ADC inputs and 8 PWM servo outputs
- Up to 3 USART (one shared with 1 I2C port + XBee)
- Up to 4 I2C (split between two independent buses)
- 1 SPI header
- 1 SWD header
- 1 12-bit DAC output (shared with SPI SCLK)
- mini-USB (device) and standard USB (host) ports
- XBee socket
- Bluetooth header (accepts module directly and wireless programming support)
- MicroSD card socket
- Expansion port for future expansion boards / shields (not shown in rev. 2 images)
- 7-24V input with reverse polarity protection and power switch
- Alternatively, can be powered over USB
- Optional external servo power (6-24V)
- 10A 5V switching regulator
- 5A 3.3V regulator
- Selectable digital pin power (3.3V or 5V)
Fully Integrated Hardware
- 3-axis accelerometer / 3-axis gyroscope with temperature sensor (LSM330DLC)
- 2 channel H-bridge motor driver - 5A per motor (MC33932)
- LCD port with contrast adjustment (16x2 character LCD included)
- Buzzer with software volume control
- 2 push-buttons and 2 software controlled LEDs
- Program in either C or C++ with wireless programming support over XBee or Bluetooth
- Monitoring: battery voltage, motor current (per channel), motor fault detection, USB host over-current fault, servo power voltage
- Completely open source libraries with easy to read documentation
- Full set of library functions for each aspect of the Aithon board
- Libraries written on top of ChibiOS/RT which is a fast, open source, real time operating system
Compared with Arduino
We've compared the various features and capabilities with the three main Arduino models: Uno, Mega, and Due. The chart below summarizes this comparison.
As shown above, the Aithon board has 2x the clock speed and RAM of even the fastest Arduino (Arduino Due). Also, with Arduino, if you require anything more than direct access to I/O pins, external board or shields are required. The shields required to give the Arduino Due similar capabilities to the Aithon board would cost over twice that of the Aithon board. Even with these shields, many features would be missing. Everything on the Aithon board is fully integrated. Libraries for each part of the board will be standardized and work together flawlessly, without any special configuration necessary.
The board design for Aithon started in late 2012 with more features being added consistently over an extensive development period.
The first prototype of the robotics board was assembled early this year. As is always true with first prototypes, there were many challenges that had to be overcome.
Here is what the revision 1 board looks like with more components on it.
We have since made a second revision of the board with countless fixes and improvements. The second revision is what's shown in the video and images at the top of this page. We are waiting for the third revision to arrive from manufacturing.
Recently, members from the Aithon team used the board on a robot which they entered into a local autonomous robotics competition. The video below is of a practice run of this robot.
Bluetooth Module - This will be a module based on the Roving Networks RN42 and will plug directly into the Aithon board
Motor Driver - Has two channels of up 1.2A each for controlling two additional DC motors. The motor voltage can be up to 15V. The board has screw terminals for battery voltage and motor outputs as well as three digital inputs per channel (one PWM and two direction pins).
Power Supply - The wall adapter will provide 2A of current at 5V to power the board over USB. We will do our best to provide it in your local plug, but can commit to providing standard US and UK plugs (110-240V).
The primary use of the funding we get from Kickstarter will be for a production run of Aithon boards. We have included an amount in the budget to allow for a small quantity pre-production run in order to validate the board assembly process with our manufacturer. This pre-production run will begin soon after the Kickstarter has ended.
Once we are completely satisfied that the boards meet our high standards, we will start the process for the production run. This starts with acquiring parts and getting them shipped to the manufacturer where they will be fully manufactured and assembled. Once we receive them back from the manufacturer, we will be loading our custom bootloader onto each board and running a series of quality assurance tests on the boards before packaging and shipping them to backers in September.
- John Seng, Ph.D.
John Seng is an associate professor in the Computer Science department and Computer Engineering program at California Polytechnic State University in San Luis Obispo. He enjoys building tools to help others learn about embedded systems and robotics.
- Connor Citron
Connor is a computer science graduate student at Cal Poly. He is the president elect of the Cal Poly Robotics Club. In his spare time, you will find him flameworking or building random stuff.
- Brian Gomberg
Brian is a computer engineering undergraduate student at Cal Poly. He has been interested in embedded systems and robotics for many years and has been developing the Aithon board as part of his senior project.
Risks and challenges Learn about accountability on Kickstarter
As we have done throughout the development process of the Aithon board, we will be working with highly trusted companies for the manufacturing of the boards. Both the PCB fabrication and the assembly will be done by outside companies which comes with the inherent risk of delay and manufacturing error.
We will be doing a pre-production run as soon as the Kickstarter has ended. Once we receive this first run, we will be performing a full set of tests on the boards to ensure the highest quality before starting the production run.
Additionally, there is the possibility of part shortages. We have identified multiple suppliers for the components and will be ordering parts in advance in order to ensure that any unexpected delays have minimal, if any, impact on our overall timeline.
Once we receive the final assembled boards, we will be loading our custom bootloader onto the boards. In addition, every board will be run through a comprehensive series of tests to ensure each part fully satisfies our high quality standards before it is packaged and shipped to our backers.
The Aithon libraries (and ChibiOS) use a makefile for compiling the code and programming the board. Code can then easily be compiled and uploaded to the board from the command line, and any code editor may be used. We are considering creating a more graphical interface as an option for compiling and uploading code.
Yes! We've written an extensive set of libraries which take care of all the low-level implementation details and allow you to focus solely on your application code. We plan on fully documenting the library functions and provide example programs to help you get started. Anybody who knows how to program should be able to write code for the Aithon board without any significant learning curve.
While we love the Raspberry Pi, there are many situations in which a microcontroller is better than a full-fledged processor. The main advantage of a microcontroller is the simplicity of use. You don't have to spend time setting up and configuring an operating system, you just write the code, upload it to the board, and you're done. Also, the precision of a real-time operating system like ChibiOS gives you precise control over how the microcontroller will behave. If something like image processing is required for your project, an embedded linux board should be able to run side-by-side with the Aithon board, giving you the best of both worlds. We agree with the creators of the Raspberry Pi that the microcontroller and microprocessor worlds are not in direct competition with each other.