|Windows 10 And The Seduction Of Arduino|
|Written by Harry Fairhead|
|Monday, 04 May 2015|
Microsoft seems to be trying hard to break into the embedded hardware market with Window 10. It even plans to put it on the Arduino. Surely this humble open source hardware doesn't have a processor big enough to to take on even a cut down version of Windows 10?
Microsoft has invented a way to get Windows into one of the most successful development boards of all time - the Arduino. Two innovative pieces of software make the Arduino into a Windows peripheral, or a Windows Phone into an Arduino peripheral, aka a shield.
Windows Virtual Shields is a really clever idea and is the one that has the most potential. The idea is actually very simple. Add a Bluetooth connection to an Uno and a software library. Then upload an app to your Windows Phone and the Arduino can access its sensors and services. So, for example, the Arduino can read the phone's GPS, accelerometer, access the web, use the touch display and use the speech synthesis recognition. For example, the demo that comes with the basic software allows you to switch and LED on and off simply by saying "on" and "off".
In other words, for around $25 you can use a Windows 10 phone as a multipurpose peripheral to the Arduino. Of course, you have to have a suitable Windows Phone ready to be used - if not then you have to factor in its cost - about $100. Even in this case it might be worth it because currently the Arduino doesn't have a speech recognition shield and at $100 a bottom end Lumia Phone seems a bargain.
Notice that the actual control software is running on the Arduino and all of the coding is done using the Arduino IDE in the usual way. This seems a little like the tail wagging the dog as the Windows Phone is going to have a much more powerful processor than the Arduino's AVC. Windows Remote Arduino switches things around and lets WinRT Universal apps use the Arduino as a peripheral.
As in the case of the Virtual Shield a Bluetooth connection is made between the Arduino and the Windows 10 machine. Now, however, it is the Windows 10 device that is running the program and it can toggle I/O lines and generally use the I/O offered by the Arduino. You can now write a Windows 10 Universal app that flashes an LED when an onscreen button is pressed.
You can see that they two approaches complement each other and which is right for your project depends on where you what the data to reside and how much processing power you want. If you simply want an Arduino Sketch to read your phone's GPS then the Virtual Shield is best. If, however, you want to write a complex control program that gathers data and posts it to the web then perhaps Windows Remote is best.
These two pieces of software bring Windows and the Arduino closer together and the the Arduino people seem very happy about it. As the Arduino blog says:
"It’s a special day for the Makers’ community. Massimo Banzi is in San Francisco attending Build Conference, the biggest developer event of the calendar year for Microsoft and today Microsoft is announcing a strong partnership with Arduino: Windows 10 is in fact the world’s first Arduino certified operating system!"
The "alternative" Arduino blog on the breakaway arduino.org (see our report on the Arduino split) makes no mention of the new partnership and it may be that the partnership between Microsoft and Banzi's arduino.cc becomes a factor in sorting out the legal dispute between the two Arduino camps.
Some makers seem impressed by the whole idea and to be honest it is difficult not to see the possibilities of using an Arduino as a Windows peripheral or vice versa. However, many open source fans are horrified that Microsoft should be welcomed into the Arduino's camp with proprietary software. In fact, there is a complaint that "closed source" and "Arduino certified" are contradictory terms.
Microsoft may be making .NET and the libraries that implement Remote Arduino and Virtual Shields open source, but there is no sign of Windows 10 going in the same direction. And, of course, Windows Phone is not only closed source, but a walled garden due to the need to use the Windows Store to install apps.
So which is it?
The seduction of a powerful and free expansion for the Arduino or a rejection of proprietary licenced software and licenced development in general.
To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin, or sign up for our weekly newsletter.
or email your comment to: email@example.com
|Last Updated ( Monday, 04 May 2015 )|