Thursday, 10 March 2016

Intel Genuino 101

Intel Genuino 101

It’s no secret that Intel has been trying to break into the maker market. The company’s Quark chip, a process shrink of the ancient Pentium microarchitecture, proved a poor alternative to mainstream microcontrollers in the Galileo. Then its successor, the Edison, paired the Quark with an Atom core in an attempt to rectify performance issues, but lost out to rivals thanks to a maker-unfriendly form factor and highdensity connections. Will Intel’s third attempt, the Genuino 101, finally win over the maker community?


While Intel’s previous attempts were ‘Arduino Certified’ devices, the 101 is an actual Arduino: in the US, it’s known as the Arduino 101 while it gets the Genuino 101 moniker overseas thanks to the ongoing trademark dispute between Arduino.cc and Arduino.org.

It’s good to see Intel ditching its attempts to reinvent the wheel, and instead opting to massage its new button-sized Curie computing module into the Arduino Uno form factor. Unlike the Edison, which required a bulky breakout board to make it suitable for amateur use, the Genuino 101 is as amateurfriendly as any Arduino. It’s even compatible with existing Shield devices, although its use of 3.3V logic with 5V overvoltage protection means that any marginal components that fail to trigger on a 3.3V ‘high’ signal won’t operate as expected.

For Intel, though, the decision must have been tough; a quick glance at the spec sheet – or even the company’s selection of example projects – shows that the Curie module, with its integrated accelerometer, is designed with wearable computing tasks in mind.

The Uno form factor is many things, but it’s far from well suited to wearable projects. I wouldn’t be surprised to see the Genuino 101 followed by a Flora-style wearable equivalent in the near future.

As with the Edison, the Genuino 101 sees the Quark paired with a secondary processor; while the Atom was used to work around the Quark’s poor general-purpose performance on the Edison, this time it plays the role of central processor with an Argonaut RISC Core (ARC) – an architecture originally developed for use as the Nintendo Super FX chip, fact fans – acting in the role of microcontroller.

The split is invisible to the user; the Quark core runs a real-time operating system (RTOS), which handles the on-board Bluetooth radio and other, as yet unspecified, tasks. The ARC, meanwhile, is what runs your Arduino Sketch once it’s been uploaded. Intel promises to release the source to the RTOS in March, which may allow you to run your own code on the Quark; for now, the ARC is the only core accessible to end users.

Having been disappointed by the I/O performance of the Quark in the Galileo – and amused by Intel’s tacit admission that it was a poor fit, as evidenced by the presence of the ARC in the Genuino 101 – I was eager to put the Curie through its paces. Having put together a benchmark suite, I put the Genuino 101 head to head against an Arduino Nano, which is based on the same ATmega328 microcontroller as the popular Arduino Uno.

The switch to the ARC core has certainly helped the I/O performance; the Genuino 101 was able to switch a digital pin on and off at a frequency of 169.9kHz, compared to the Nano’s 94.1kHz. Integer performance measured considerably higher too – the Genuino 101 ran through Dhrystone at 27.69 MIPS while the Nano hit a peak of 6.25 MIPS (for reference, my accelerated Amiga A500Plus gets 0.58 MIPS).

Floating-point, though, is a different story. Using the single-precision Whetstone benchmark – as the 8-bit ATmega328 is incapable of double-precision – the Genuino 101 manages 0.765 MIPS compared to the Nano’s 1.17 MIPS.

Given how the ARC processor smokes the ATmega328 in other tests, this performance difference may be addressed in future software releases, but it’s currently worth bearing in mind if you’re relying on floatingpoint arithmetic in your projects.

That’s not to say there aren’t reasons to use the Genuino 101. The on-board accelerometer is neat, if a little wasted in the Uno form factor, and the Bluetooth Low Energy (BLE) radio is easy to integrate into sketches, although there’s no handy smartphone app yet available for experimentation. One major advantage of the Genuino is also the memory – while the Uno has 32KB of flash memory and 2KB of SRAM, the Genuino 101 packs in 196KB of flash memory and 24KB of useraccessible SRAM, with the remainder of the Curie’s resources going to the RTOS.

The real power of the Genuino 101 won’t be unlocked until Intel releases the RTOS source and allows more control over the Quark processor, though, so let’s hope that happens on schedule. The Genuino 101 is available from https://shop.pimoroni.com, priced at £28 inc VAT.