Conversion of an old pinball playfield to an Arduino-driven, fully working pinball machine.
Project showcase by Frogger1108
A standard sized pinball machine made using parts from the home store and pinball supply houses. The game play is controlled by an Arduino.
Project tutorial by Bob Blomquist
Build a fully functional pinball machine with 4 networked Arduinos: Control, Audio, Lights, Score, with this code and my free E-book.
Project showcase by grahamasker
A previous project of an Arduino controlled pinball machine is augmented with sound and music using a WAV Trigger board.
Thanks. I had a lot of trouble using interrupts on the Arduino on this project. They are fine if you really want to "interrupt" your program, but since you continouesly get signals and you need to keep the timer running in the background I found they are causing more harm than good. The Arduino is fast enough to keep track of everything while cycling through the code as long as you don't use delays (which you shouldn't anyway :)
Is your question how this is done with the Arduino? If so, you can use any of the many tutorials covering the usage of WS2811 LEDs with the Arduino. This one here https://randomnerdtutorials.com/guide-for-ws2812b-addressable-rgb-led-strip-with-arduino/ describes the Hardware aspect, as you can see you only need external power and ground for the LEDs and one pin on the Arduino. You can control each LED individually with the FastLED library (https://github.com/FastLED/FastLED/wiki/Basic-usage). The Library includes many examples, it's really very easy, all you have to specifiy is the pin used and the number of LEDs in your string. For individual adressing, just take a look in the code:
leds = CHSV(250, 255, 255);
This tells the Arduino to set LED 25 to color hue 250 (red), saturation 255 (maximum) and brighness 255 (maximum)....this means it appears as a brightly red led.
Did you find a solution? I finished my secon machine and implemented a new routine that checks for the time each solenoid pin is HIGH. If any solendoid pin is HIGH for more than 2 seconds, all pins are set to LOW and the program shuts down to prevent any new activation. Works pretty good so far :)
Did you have success with your project?
Or connect with your social account:
New here? Create an account