Exploring the new Arduino/Genuino 101


The 101 is enormous fun. Making a faster, roomier Arduino with only a slight increment in price over the original is already pretty great, but adding Bluetooth and sensors makes the 101 various orders of magnitude better than the Uno. And, it makes creating gesture-enabled interfaces ridiculously simple.

I only have two gripes: The real-time operating system (RTOS) and framework developed by Intel for the Curie chip are not yet open source. At the time of writing (February), Intel says they will open source the code in March [14], but I have seen how companies have often pushed back the date for opening their code again and again, until it has become useless. I hope Intel keeps its promise and completely frees the 101 of proprietary software.

Regardless of whether it does so, however, this is not the open source way. It is already troubling to have Arduino, the flagship enterprise of free hardware, backing a board with a proprietary firmware. However, doubly worrying is the fact that this policy of "closed now, open later" runs against open source principles. The open source way dictates that you should publish soon – bugs and all – and publish often, so others can get in there and help improve your code. Intel's stance on this strikes me as trying to have their cake and eat it, without sharing a slice with anybody else.

My other gripe is that I'd like the 101 to be much smaller. It's current form factor is too unwieldy to fit comfortably into wearables, controllers, or toys. The shape and size of the Arduino Micro – long, narrow, and compact  – would be much better (Figure 7).

Figure 7: The biggest problem with the 101 is its size. The form factor of the Micro would be ideal for toys, remotes, robots, and wearables.

So Intel, free the Arduino 101 already! Can we haz a 101 Micro, plz?


  1. Intel Edison: http://www.intel.com/content/www/us/en/do-it-yourself/edison.html
  2. Arduino/Genuino 101: https://www.arduino.cc/en/Main/ArduinoBoard101
  3. "Using an analog port expander, part 1" by Paul Brown, Raspberry Pi Geek, issue 13, 2015: http://www.raspberry-pi-geek.com/Archive/2015/13/Reading-and-writing-from-an-analog-multiplexer
  4. "Using an analog port expander, port 2" by Paul Brown, Raspberry Pi Geek, issue 15, 2015: http://www.raspberry-pi-geek.com/Archive/2016/15/Write-your-own-drivers-for-Arduino
  5. Arduino IDE: https://www.arduino.cc/en/Main/Software
  6. Madgwick's sensor fusion algorithm: http://www.x-io.co.uk/open-source-imu-and-ahrs-algorithms/
  7. Panda 3D: https://www.panda3d.org
  8. Auawise, Yaw_Axis.svg, Wikipedia. Attribution-ShareAlike 3.0 Unported: http://creativecommons.org/licenses/by-sa/3.0/
  9. "An efficient orientation filter for inertial and inertial/magnetic sensor arrays" by Sebastian O.H. Madgwick, 2010: http://www.x-io.co.uk/res/doc/madgwick_internal_report.pdf
  10. Blender 3D: https://www.blender.org/
  11. Model helicopter by sielxm: http://tf3dm.com/3d-model/a-low-poly-helicopter-35242.html
  12. Download the code for this article from GitHub: https://github.com/pbrown66/Arduino-101
  13. YouTube video showing how the program works: https://youtu.be/JE8npkbd-pU
  14. Intel to open source the RTOS for the 101 in March 2016: https://www.arduino.cc/en/Main/ArduinoBoard101#overview

Buy this article as PDF

Express-Checkout as PDF

Pages: 8

Price $2.95
(incl. VAT)

Buy Raspberry Pi Geek

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content