Arduino as input output board

This must be the most stupid question in the whole forum, but I wasn’t able to find the answer.

Can I run my software on my PC and just use the Arduino as I/O board with C/C++, or does only work in stand alone mode?


I believe this will do what you want…

I’ve never used it myself but I suspect someone else here can help with the details.

or does only work in stand alone mode?

Even so with the firmata software it is still running stand alone.

It’s just the job it is doing is looking at the serial port for some commands about reading or writing to the ports and doing it when these come along.

With the Firmata libraries (or if you can interface to serial with your apps), the board can sort of act like an IO board, but it’s more like a smart proxy. It really is its own thing. You need to write code that reads in data from sensors and then sends that to your computer (application) for further processing.

The cool thing is that it can be an IO board with some brains. It can for example aggregate data and calculate whatever and then send that back to the computer rather than just relaying the sensor input data. It’s up to you how you want to use it, really.

That’s great! I really only wanted to be able to input commands from the computer as a form of input to the Arduino. As long as it’s capable of running complex programs at a decent speed I don’t really care where the calculations are done. I suppose running all in the PC and sending a lot of data to the Arduino would not be as fluid as running the programs directly in the Arduino.

As long as it’s capable of running complex programs at a decent speed

Well I wouldn’t go that far. Complexity is limited by the size of storage for variables and lack of floating point support with only 16MHz clock. You are talking about something less capable than an Apple II here.

Ouch! No floating point! Well, I might just multiply all by 100 and work in percentages :wink:

Ouch! No floating point!

There is floating point math avalible in the Arduino, it’s just not done directly in hardware but rather is done with software library code.


Yes when I said:-

lack of floating point support

I meant that there was no hardware support for floating point. However if you can do it all in integers it will be so much faster anyway.