The new lights did not work any better. I put them directly to 5 volts, through 1 diode and then 2 diodes. All of them still burned out after a number of hours.
Bought a standard 6 volt bulb (screw base, 0.3 A). If I used the current base resistor of 1K, light did not get very bright and transistor got very warm. If I dropped to a 100 ohm resistor, bulb lit up great. However, the base current to the transistor was around 40 mA – greatly exceeding the max rating for each I/O line.
Ordered some LED Christmas tree lights. Maybe I can bunch 4 to 5 together to get the brightness I need. If this fails, might use small relays – the LED driver transistor will fire the relay. Then I can go to the 6 v light bulb. For now, I added an annunciator check section that runs each time you start the simulation. All of the annunciators are lit up for an instant so you can see if any have burned out.
Continued work on the software. Put in code that simulates real life of a pump or valve. (If you turn a pump on, it does not go to full flow immediately. If slowly ramps up. Same thing for flow control valves. Valve position slowly changes.
Current=Current + (Demand-Current)/100
Demand: Value of a rotary control or if a pump is started/stopped.
Current: This is the current value for the device. If a pump is off, this will be 0.
100: This determines the ‘ramp-up’ time for the device.
Each time the sim cycles through, the equation is hit and a new Current value is calculated. Eventually, the Current value will equal the Demand value.