arduino 2d simulator

I was wondering if there is an ardino "simulator" where we could upload our code and attach components in a 2d environment. I thought it would be awesome for prototypes since you could modify on a computer and then build the final version. Does anyone know of any such thing?
Maybe this isint in the right area but tell me if it isint and i will move the post accordingly.

Thanks
it struck ME as a good idea... :smiley:
but then again im a noob.... :-/

This has been up some times before, and I agree that it is a good idea. But, it takes only a few seconds to upload to the arduino so the gain would be minimal.

I've actully thought about making a simulator with C++ and SDL/OpenGL, but this is too much for a one-man-team, so it would be something that I would've needed assitance on making. Maybe there are someone that would be interested in sharing some ideas?

I think it would be a good idea but mapping/emulating all the op codes etc would be a pain, especially for EACH device.

It may be something for the future but for the mean time, I doubt you'd get my gain.

I think a better use of the time would be to create a unit testing framework, there may well be something like that when you use another IDE - I havent checked yet

I do not foresee simulating the opcodes, or registers or something like that. If one finds such information interessting, I suggest using the AVR Studio.

I have a simple app in mind. Just not simple enough for me to write on my own, at least no right now.

I imagine that you would paste a sketch into a simple text pane, and then press some kind of 'simulate' button, and then you get a picture of an arduino and now you see symbols for pins that are input, and a different cymbol for output. Maybe '-->' and '<--'.
And a color code for HIGH, LOW. such as black / red.

And, if user presses a pin with the cursor, he gets to choose input/output and high/low.

And that's it for the framework.

I would add possibilities for additional hardware to get contributed. By enabling a simple set of functions to enable 'scripting'. So one could make switches LEDs and maybe LCDs.

For instance:
onStateChange( byte pin ) : void
setGraphic( char* file ) : bool
setPinMode( byte pin ) : void
setPinState( byte pin ) : void

And a simple drag and drop graphical editor for making the circuits.

But, it might be true that it is a waste of time.

Ah sorry I misunderstood.

Considering the sheer number of various outputs and inputs (infrared rangers, Pots etc), providing a diagram would take a long time and just add to the work-load of library devs.

Still an interesting idea though

I think the typical user would be the eager beginner, that simply wants to see something happen from their modification of the blink sketch.

I remember that I searched for this as well , before I got the arduino, after I ordered it.

Considering the sheer number of various outputs and inputs (infrared rangers, Pots etc), providing a diagram would take a long time and just add to the work-load of library devs.

Still an interesting idea though

I'm kind of interested in this (could also allot for more streamlined prototyping for seasoned users, saving costs of ordering parts and such. (I'm no pro, but I imagine it could help)

Perhaps an arduino "emulator" that has an interface with SPICE to simulate pulses/signals (behaviors written in a tweaked Arduino IDE) and send them to virtual external hardware.

SPICE: http://bwrc.eecs.berkeley.edu/Classes/icbook/SPICE/