The Arduino project announced a third-generation Arduino single board computer featuring a dual-processor architecture, and able to run a “full Linux” OS. The Arduino TRE features both a 1GHz 32-bit TI Sitara AM335x 32-bit ARM Cortex-A8 processor, for running Linux, and an 8-bit Atmel ATmega microcontroller, for AVR-compatible control of “shield” expansion modules.
As Zoe Romano puts it in an Arduino blog post, “the Arduino TRE is two Arduinos in one.” Basically, the new ARM Cortex-A8-based Sitara AM335x’s job is to run Linux applications and manage the SBC’s PC-style interfaces (video, audio, Ethernet, USB, optional WiFi, etc.), while an Atmel ATmega microcontroller takes care of the SBC’s real-world I/O (analog inputs, digital I/O, PWM outputs, etc) and handles the interface to shields (Arduino expansion modules) in a fully AVR-compatible manner. Best of all, Romano points out, the 1GHz TI ARM processor offers up to “100 times more performance” than Arduino’s earlier Leonardo and Uno boards, writes Romano.
Arduino TRE prototype, front and back
(click images to enlarge)
It’s worth noting that the Arduino TRE isn’t the first Arduino SBC to run Linux. Its predecessor, the Arduino Yun has a vaguely similar architecture, in that it supplements the Atmel ATmega32U4-based subsystem of the Arduino Leonardo with an Atheros AR9331 WiFi module, which has an internal MIPS 24k processor running a small-footprint embedded Linux stack.
What’s unique about the TRE, however, is that its Linux OS runs on an ARM processor that’s truly integrated into the SBC’s basic architecture, as opposed to being a collateral benefit of a WiFi add-on module. As a result, the TRE will support a “full Linux” OS in contrast to the Yun’s Linino OS, a custom version of the lightweight OpenWRT embedded Linux distribution.
Views showing Arduino TRE’s real-world connectors
(click images to enlarge)
Interestingly, the development of the Arduino TRE SBC reportedly involved a “close collaboration” between Arduino and the BeagleBoard.org foundation. “The TRE design builds upon the experience of both Arduino and BeagleBoard, combining the benefits of both community based boards,” writes Romano.
The Arduino website lists these preliminary specifications for the Arduino TRE SBC:
- Atmel ATmega microcontroller subsystem:
- Atmel ATmega32u4 @ 16MHz
- 32KB flash, 2.5KB SRAM; 1KB EEPROM
- 14x DIO lines
- 7x PWM outputs
- 6x analog inputs
- Software — Arduino IDE and AVR Code
- Ti AM335x ARM SoC subsystem:
- TI Sitara AM3359AZCZ100 (ARM Cortex-A8) @ 1GHz
- 512MB DDR3L RAM; tbd SRAM; tbd flash
- 100Mbps Ethernet
- USB — 1x USB 2.0 Device port; 4x USB 2.0 Host ports
- Video — HDMI @ 1920×1080
- Audio — via HDMI; also stereo analog audio I/O
- 12x GPIO (3.3V logic)
- 4x PWM outputs (3.3V logic)
- 1x MicroSD card slot
- LCD expansion interface
- Software — “full Linux”
- Expansion — supports standard Arduino shields
- Dimensions — not listed (but estimated by LinuxGizmos to be 85 x 75mm)
- Power — not listed
“By choosing TI’s Sitara AM335x processor to power the Arduino TRE, we’re enabling customers to leverage the capabilities of an exponentially faster processor running full Linux,” stated Arduino co-founder Massimo Banzi. “Our customers now have a scalable portfolio at their fingertips, from the microcontroller-based Uno to the TRE Linux computer.”
The Arduino TRE SBC and Arduino’s evolving collaboration with TI and BeagleBoard.org will be the subject of a talk at the Maker Faire in Rome, Italy on Oct. 5.
Although the Arduino TRE SBC will not be released for production until next spring, a working prototype is on display this week during Maker Faire Rome. Further details are available at the Arduino website. The Arduino TRE blog post cited in this post is located here.