Showing posts with label Arduino. Show all posts
Showing posts with label Arduino. Show all posts

Thursday, October 27, 2011

Reverse engineering? The new Wiring S board

In the fall of 2008 I started researching Arduino for an introductory article for Elektor. In that article I wrote that Arduino can be seen as a simplification of Wiring. The Arduino environment is very much like Wiring but slightly simplified and the Arduino Diecimila, the board of choice in 2008, was much simpler than the Wiring microcontroller board that had more I/O ports available. It is difficult to prove that the huge success of Arduino is due to this simplification, but the fact is that the current estimate is that more than 300,000 Arduino boards have been sold world-wide, which is pretty impressive.

The people behind Wiring must have been a bit jealous of this success achieved by others with their work so they started simplifying too. The result is the brand new Wiring S board that is almost the same size as an Arduino Uno. The Wiring S team apparently decided that they wanted to do things slightly different than the Arduino team, so the board looks a lot like an Arduino, but it is not compatible. Where Arduino uses mostly ATmegaXX8 controllers, the Wiring S board is based on an ATmegaXX4 controller (ATmega644 on my 1.0 board). The connectors look very similar, and are positioned in a similar way, but there are 5 instead of 4 and the pin-out is different. Also the project is open hardware, but the design files are in KiCAD instead of Eagle.

Seeeduino (left) and Wiring S (right)


It is rather interesting to see how Arduino is becoming more and more complex with programmable USB interface chips, all kinds of different processors and more connectors whereas the Wiring S board is almost like an old Arduino Diecimila but with a bigger processor. The board even offers the possibility to replace the FTDI USB/serial converter chip by an FTDI cable which brings it very close to the even older Arduino Serial. The two teams seem to be working in opposite directions.

For the people who would like to have the best of both worlds, they should use Wiring because the Wiring environment is capable of handling Arduino boards, whereas the Arduino environment does not handle Wiring boards and a Wring Play Shield is available that allows you to stick Arduino shields on the Wiring S board.

The Wiring S board is simply rectangular with its extension connectors on a 0,1” grid and 4 mounting holes placed in a logical manner. I do not like the position or the shape of the reset button; it is too hard & difficult to press. The solder side of my board was not cleansed properly and this seemed to be true for the whole batch received by my distributor. Maybe this is a pre-series problem?

Retro yellow LEDs!


Will the Wiring S meet with the same success as Arduino? Hard to say, I guess not, it is probably too late now.

Wednesday, August 3, 2011

LabVIEW, Arduino & Android

During lunch today I picked up the words LabVIEW and Arduino. Now that got me interested (or excited, as they would say here) and it turned out that a technical session about hacking Arduino with LabVIEW would take place later in the afternoon. So I attended and learned some very interesting things indeed.

First of all that it was not only about Arduino. To be totally honest, Arduino was a bit of a minor topic, the more important topics concerned interfacing to the Kinect, the Wiimote, iRobot, Neato and Android systems. Nevertheless they did do Arduino too. NI uses interns to develop all sorts of fun applications with their products. Waterloo Labs - who earned their fifteen minutes of fame about a year ago when they drove a car using an iPhone and posted a video about it on YouTube - is in it too.

So how do you interface Arduino to LabVIEW? It is pretty simple. You load Arduino with a special sketch to create an I/O server. Then in LabVIEW you install some VIs for Arduino. You should also install the NI-VISA serial port drivers if you don't have them allready. That's about it. And the great thing about this is that it is all free and open source!

Let's be clear about this, you cannot create a program in LabVIEW and then run it on the Arduino. In this setup Arduino is merely an input/output device, but a very cheap and hackable one for which many shields are available and you can use all the power of LabVIEW to control it or process the data. And if you replace the serial cable by a wireless link (Bluetooth f.i.), it is almost if Arduino is running stand alone.

This is all excellent news, because now you too can interface your project to LabVIEW as long as it has a serial port. All you have to do is port the sketch to your hardware and adapt the VI.


All this stuff and much more, like how to hack the Kinect or the Wiimote, is on LabVIEW hacker dot com