Skip to main content

title

First look at breakout for the WiFi enabled and Linux powered Arduino 101 LGA module.

At first glance the Arduino Industrial 101 appears to be something of a curious board — a much less familiar member of the Arduino family, lacking header pins and with almost half of the PCB taken up by a module sporting a U.FL antenna connector. As it happens, a packet of header pin/sockets are included and can easily be fitted should they be required. While the aforementioned module integrates an Atheros AR9331 Wireless SoC (WiSoC) that is built around a MIPS processor.

title

In addition to providing optional headers, the main PCB also integrates an ATmega32U4, buttons and switches, LEDs, a Micro USB socket and DC-DC converter. Together with the WiSoC module this means that you have a wireless enabled and Linux capable SoC, plus an AVR microcontroller and some handy basic I/O. In addition to this 10/100 Ethernet connectivity is also possible, thanks to pins that are exported to the headers and via the addition of a jack socket with magnetics.

The key specifications for the Industrial 101 are as follows:

Atheros AR9331 WiSoC

  • Operating voltage: 3.3 V

  • Flash: 16MB

  • Clock speed: 400MHz

  • WiFi: 802.11b/g/n 2.4GHz

  • Ethernet: 10/100 (via headers)

  • USB: 2.0 Host (via headers)

 

ATmega32U4 Microcontroller

  • Operating voltage: 5V

  • Flash: 32KB

  • SRAM: 2.5KB

  • Clock speed: 16MHz

  • Analogue I/O: 12 (4 exported on header)

  • EEPROM: 1KB

The board also integrates a DC-DC converter and requires 5V at around 130mA.

This makes for an interesting combination of capabilities and particularly at its price point. The WiSoC providing modest resources for a Linux device, but more than enough to support embedded applications written in C, Python and other languages, that may require network connectivity and need a bit more storage than you would get with most microcontrollers. The addition of an ATmega microcontroller brings with it analogue I/O and real-time capabilities, amongst other benefits.

Setup

title

Setup for use as a classic Arduino remains as simple as it ever was and is simply a matter of downloading the IDE, before then going on to select the board type and serial port.

Of course, this Arduino also runs Linux and is supplied configured to create a wireless network with the prefix “Linino” — the name given to OpenWRT-based distribution it runs.

title

Once connected it's then possible to point a web browser at www.linino.org and from there to configure the board to connect to an existing wireless network, which is of course far more convenient and a great deal more useful!

title

A link is provided on the simple configuration page to one with more advanced options.

title

From here a wealth of status information is available, for the system, firewall, processes and logs etc. Software packages can be installed and removed, automatic start-up configured, along with task scheduling, firewall configuration and much more.

title

Linux power users need not fear either, as it's also possible to SSH into the board and carry out system admin tasks via the command-line.

Development

title

One thing that came as a pleasant surprise was that it's possible to upload sketches via WiFi and the configured board simply appears as a new (wireless connected) port. In retrospect I guess this is kind of an obvious feature for a device with WiFi, but it was unexpected and a nice touch.

title

If we go back to the command-line we can use the OPKG package manager to list installed packages and install/remove packages if so desired.

title

The novice-friendly and yet powerful Python language is configured out-of-the-box, providing a means to quickly get up and running writing applications for execution directly under Linux. With this obviously comes access to a plentiful ecosystem of libraries, performing all manner of functions and providing simple support for an array of sensors and displays etc.

Should you prefer using C or JavaScript, instructions are also provided for getting up and running with these. Not only that, but how to use AVR-GCC on the board itself to compile a sketch and upload this to the ATmega32U4, along with how to build your own Linino OS and flash the board.

First thoughts

I must admit that the term “industrial” threw me at first as the board is clearly not ruggedised and designed for use in harsh environments without additional protection. However, it makes more sense when you consider that the primary target use is in industry, as a prototyping platform for the Atheros AR9331 WiSoC powered LGA module.

While an affordable and capable platform such as this, with a path from prototype to production, is likely to be attractive to many in the connected devices business, given its combination of price point and features it's also likely to be popular with hobbyists.

The decision to base the Linux distribution on OpenWRT was an eminently sensible one, with a learning curve not quite as steep as some of the alternatives. With no shortage of development options and the combination of a Linux system with network connectivity, plus a microcontroller, providing the best of both worlds and being particularly useful with connected real-time applications.

Andrew Back

Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.
DesignSpark Electrical Logolinkedin