I recently got burned by the cadsoft eagle v 6. They have discontinued their free service and it now costs $69.00 to do same. After much constirnation I relented and purchased the package. I noticed there is a cool package called fritzing with is free but does not simulate the circuit and there is another package called virtual breadboard http://www.virtualbreadboard.com/
which is awesome but I suspect that they may some day also stop being free and charge.
So I was wondering if there was any traction out there for creating an open source simulator? It would be nice to use fritzing's .xml file board definitions, but a quick glance at one of their .xml files was fruitless.
I was thinking that python would be the language to use. It can read .xmls files and interface with an sql database quickly.
Basically the database would contain all the components, ports, diagrams and connections. Users would write python classes for the components they want to see simulated. For example a, class Arduino.
Each class would have a loop and a setup procedure that would be called.
The loop procedure would look at all the connections and their values and set outputs. The setup procedure would be used to initialize the component. We could use our own python version of libraries (like wire) so that the names would be maintained with existing Arduino libraries.
So I see how this could (possibly) be done in python. The graphical interface I would prefer to leave to fritzing, assuming that the .xml format will some day make sense.
I think I can put together a python tkinter .gui to show the database and possible run a simple blink example (lm7805, 9v battery, atmega328, clock, pull-up resistor, 220 ohm resistor and led).
Just wondering if anyone was out there interested in helping to set this up. The key would be to make it open and easy for people to add components.