I recently made two different turnout and signal decoders using “spark cores”. (company name now “Particle”).
Driving the hardware power stages via Spark Cores is the simplest way to add direct wifi control to the decoders. However, because right now UDP is not really working with the TI cc3000 controller, they are not driven directly by the UDP multicast messages but by an additional local “spark cloud” server.
This setup has many advantages:
- all software is open source
- can operate with server on local LAN, not only with the spark cloud
- very easy to program, similar to arduino
- as easy to integrate into own hardware as an arduino mini
- “over the air” update of firmware possible
- no wiring except for power (12V= or 15V=)
- not too expensive, will get cheaper with the arrival of the “photon”
Here is a view of the PCB with multipurpose relay outputs – spark has some eagle files which can be used to add the “spark core”.
My second spark board can drive 2 signals (can be dimmed) with 4 aspects each plus 4 turnout motors.
My signals need 12V to 15V and have a common Kathode (common ground). Eight of the outputs of the Spark Core are used in “Analog” mode (this allows for fade-in fade-out of the signal LEDs) and drive the UDN2982 source driver. Four outputs are used in digital mode, they drive the LB1909MC H-bridges for the Tortoise® turnout motors. The turnout motors need only 10V, which is regulated with a 7810. The “7805” for the 5V Spark-Core supply is actually a switched regulator OKI515W36C to increase power efficiency and reduce heat.
The software can be found on github project Lanbahn-Spark.
More info on my model railroads on www.oscale.net.