Pinball Clock [180307-1]
Shows time and date and even plays a simple pinball game on your computer or mobile device via WiFi!
Vintage displays always attract attention, not only because they look nice. In this project they also make noise, so passage of time will not stay unnoticed…
Elektor presented numerous projects with old displays like Nixies, Numitrons and VFD tubes, but until now we only had one thermometer project that used electromechanical (EM) pinball score reels units, and a remake of this device with a pinball credit reel unit to display temperature. About time for a follow-up, let’s make a clock with score reels this time. Not exactly the most original application for recycling old displays, but it is one with the highest practical value and WAF (until it’s 12 o’clock…. But we will discuss that later).
To honour the displays’ original application, there’s even a simple pinball machine inside that can be played on your computer or mobile device and uses the reels where they were designed and intended for: score keeping!
There are many pinball clock designs to be found on the internet, but as far as we know this will be one of the more sophisticated and anachronistic designs thus far, with an ESP8266 connecting the clock via WiFi to the internet for time and date synchronization. All settings of the clock can be accessed and adjusted via WiFi (smartphone, tablet or PC). Time and date can also be set manually and a battery-backed DS3231 Real Time Clock IC will keep track of the time with 5ppm accuracy, even with the power switched off.
You can set a daily (or should we say: nightly) interval during which the clock will be silenced, the score reels and chimes will not be active then. Alternatively, you can switch the display on and off manually (or pull the power plug, of course).
During normal operation time will be displayed either in 12 or 24 hours format, and it shows the date (either in normal or US format) every 30 minutes.
Most pinball machines built from the mid 50’s until mid 70’s of the last century relied on electromechanical score reels (AKA score drums) for displaying a player’s score. The operating principle hasn’t changed much over the years: a short pulse is applied to a coil, which causes the reel to increment one step for every pulse. A switch detects the reel’s zero position, allowing the pinball machine to reset the score to zero when a new game is started.
In real life things are a bit more complicated, there are other switches on a score reel unit, for example a contact that signals if the reel has completed its step, one that closes in position ‘9’ (carry to higher decade), and some reels can even register every digit position for free play scores and the so-called ‘match’ feature. But we don’t use these contacts in our project, the coil and zero switch are the only electrical parts of interest for the clock.
There was one important change in design of score reels: the diameter of the drums was reduced from 5” until the early 60’s, to 4” and even later to 3”. The inertia of the larger counters limited the timing of score handling, smaller reels could easier keep up with faster gameplay. That’s one of the reasons why older pinball machines sound slower, less ‘snappy’ than more recent models. To mimic the pace and sound of the real pinball machine (i.e. the real games where the reels were designed for), our clock display can also be adjusted to the size of the score drums.
Pinball score drums can only be incremented, which for instance means that a reel at position ‘1’ can only be reset to ‘0’ by pulsing it nine times. Needless to say that this will definitely be the noisiest clock ever presented in Elektor. To be absolutely sure of that, and for the real ‘pinheads’ amongst us: an optional three tone electromechanical pinball chime can be connected to strike quarter, half and full hours.
The latter feature could be the most expensive part to add to the clock, since these chimes are becoming increasingly difficult to find and –in other words- more and more expensive. Alternatively, you can use a single bell from an older pinball machine.
Coils in electromechanical pinball machines are AC powered, with the exception of the flippers and so-called pop bumpers in later models. In brief, AC-coils can also be DC-operated, but at a lower voltage than their AC rating. Please note that this document is about permanently powering AC-relays with DC. In this clock and in pinball machines (most) solenoids are only powered with short pulses, so it’s very unlikely that the coils will overheat. This could only happen when a coil is permanently energised if the clock is malfunctioning, in that case a fuse will blow and cut the current before the coil fries. In real pinball life, a stuck-closed score switch will result in an evil smelling, burnt score reel coil that blows the 10A+ fuse when the windings’ isolation is melted and the coil is turned into a solid short-circuit, these coils where never designed to be permanently powered!
With the exception of early Williams games (before 1963: 50VAC), the coil voltage of both Williams and Gotllieb pinball machines was 28VAC during the EM age, all Bally EM games used 50VAC. All score drums will work fine on approx. 35VDC, although a lower voltage (+/- 20VDC) will also do for Gottlieb and Williams.
The schematic of the pinball clock (see Figure 1) isn’t too complicated, but let’s explain all sections in more detail anyway.
Power supply
The power supply of our clock is rather straight-forward. A 2 x 12VAC toroidal transformer (secondary windings in series) is connected to K4, resulting in a +/- 32VDC coil voltage at the positive terminal of the bridge rectifier D1..D4. That is… in theory, in practice the unloaded transformer will have a much higher output voltage, resulting in a coil voltage of more than 35VDC. If you have Willams or Gotllieb score reels, a 2 x 9V transformer will do too.
IC1 is a LM2576 stepdown converter that supplies the 3.3V for the digital section of the hardware for the pinball clock. To be on the safe side, we used a HV version with a maximum input voltage of 60V, ‘normal’ LM2576s have an absolute maximum rating of 40V at the input. LED1 will light when the 3.3V power supply is switched on.
One note about the electrolytic capacitor C1, one of the few through-hole electronic components in this project, that may look a bit odd on the PCB, but this was a deliberate choice. First of all: it’s difficult –if not impossible- to find a big SMD electrolytic capacitor with a voltage rating of more than 35V, through hole versions are much easier to find. On top of that, for the sake of mechanical stability a through-hole capacitor is to be preferred and (most important!) readily available with maximum voltage rating of 50V (or even higher).
The coils of the score reels and chimes are controlled with NTF3055 N-channel MOSFETs, which have a sufficiently low Vth to reliably pulse the coils with 3.3V logic outputs. In our first prototype these FETs were directly controlled by the ESP8266’s GPIO-pins. This proved to be a bad choice: the ESP8266 doesn’t have many IO’s and some of them have special functions during power up, making it very tricky to keep the coils completely switched off during startup. IC3, an MCP2300 I2C I/O expander, made the hardware a lot easier to control and it also offers a kind of protection/buffering between the ESP and the power FETs.
In the first design the four zero-switches were connected to the ESP’s ADC to save IO pins. Although this ADC is not really accurate, this solution proved to be reliable enough to keep it this way. The ESP will only detect a change in ADC value in this application, it can only determine if a zero switch opens after the coil of a score reel is pulsed, i.e. when this reel has reached its zero position. This means that during a complete reset all reels will turn, even if they were already at position zero.
A 1k2 resistor must be soldered across all four ‘zero’ switches (see Figure 2), all these switches in series connected to K3.
If there is no change in ADC value after 12 subsequent pulses on one reel, FAULT LED2 will light and pulsing this particular coil will be suspended until the clock is reset, but first check the zero switches and their wiring before you do so. This feature is not only implemented to protect your nerves, but also to protect the coil from heating up by being pulsed to reach a zero-position that will never register.
An I2C OLED display can be connected to K6 to display clock status information of the clock. This connector can also be used for future developments, like adding an I2C temperature sensor.
S2 is the reset push button, if you keep S1 depressed until S2 is released, the ESP8266 will start in bootloader mode, enabling the user to reprogram the clock via UART connector K1. S2 can also revert the clock to default (factory) settings, this can be useful if the clock is to be connected to a different WiFi network. To do so, reset the clock and press S1 while the red FAULT LED is lit.
IC2 is the highly accurate (only 5 p.p.m!) DS3231 I2C Real Time Clock, a CR2032 coin cell battery will keep the correct time even when the pinball clock is switched off. This means that you don’t have to adjust the clock manually every time after power up if it isn’t synchronized via NTP.
Building the pinball clock
First you’ll need four score reels, be sure you have them before you buy any other hardware for this project. Three-tone chimes, or maybe a single pinball bell would be a bonus, but these are not absolutely necessary to build the clock and even if you have them: chances are that you will disconnect very soon them to keep the noise down.
Although most parts on the PCB are SMDs, soldering will not be too difficult if you use a small soldering iron and thin (preferably <1mm) soldering wire. Solder one pad of each component first and check if all other connections are well aligned with the PCB and double-check the orientation/polarity of the semiconductor parts and electrolytic capacitors before you solder the other pads.
Clean the score drums and do not forget to install a 1N4007 (or equivalent) freewheel diode on all coils, the same goes for the optional chime solenoid(s). Connect the coil tabs at the cathodes of the diodes to the V+ connection on the PCB (at K2 for the reels, K5 for the chimes). The other side of the rightmost score drum (minutes) coil must be wired to RL1, the second (ten minutes coil) to RL2 on K2 and so on, the highest note of the chimes to CH1 on K5 etc.
The resistors for score reel zero detection will be soldered directly to the tabs of the zero position switches of the score drum units. After that these switches must be daisy-chained and the ends of this chain are wired to K3.
Elektor presented numerous projects with old displays like Nixies, Numitrons and VFD tubes, but until now we only had one thermometer project that used electromechanical (EM) pinball score reels units, and a remake of this device with a pinball credit reel unit to display temperature. About time for a follow-up, let’s make a clock with score reels this time. Not exactly the most original application for recycling old displays, but it is one with the highest practical value and WAF (until it’s 12 o’clock…. But we will discuss that later).
To honour the displays’ original application, there’s even a simple pinball machine inside that can be played on your computer or mobile device and uses the reels where they were designed and intended for: score keeping!
There are many pinball clock designs to be found on the internet, but as far as we know this will be one of the more sophisticated and anachronistic designs thus far, with an ESP8266 connecting the clock via WiFi to the internet for time and date synchronization. All settings of the clock can be accessed and adjusted via WiFi (smartphone, tablet or PC). Time and date can also be set manually and a battery-backed DS3231 Real Time Clock IC will keep track of the time with 5ppm accuracy, even with the power switched off.
You can set a daily (or should we say: nightly) interval during which the clock will be silenced, the score reels and chimes will not be active then. Alternatively, you can switch the display on and off manually (or pull the power plug, of course).
During normal operation time will be displayed either in 12 or 24 hours format, and it shows the date (either in normal or US format) every 30 minutes.
Most pinball machines built from the mid 50’s until mid 70’s of the last century relied on electromechanical score reels (AKA score drums) for displaying a player’s score. The operating principle hasn’t changed much over the years: a short pulse is applied to a coil, which causes the reel to increment one step for every pulse. A switch detects the reel’s zero position, allowing the pinball machine to reset the score to zero when a new game is started.
In real life things are a bit more complicated, there are other switches on a score reel unit, for example a contact that signals if the reel has completed its step, one that closes in position ‘9’ (carry to higher decade), and some reels can even register every digit position for free play scores and the so-called ‘match’ feature. But we don’t use these contacts in our project, the coil and zero switch are the only electrical parts of interest for the clock.
There was one important change in design of score reels: the diameter of the drums was reduced from 5” until the early 60’s, to 4” and even later to 3”. The inertia of the larger counters limited the timing of score handling, smaller reels could easier keep up with faster gameplay. That’s one of the reasons why older pinball machines sound slower, less ‘snappy’ than more recent models. To mimic the pace and sound of the real pinball machine (i.e. the real games where the reels were designed for), our clock display can also be adjusted to the size of the score drums.
Pinball score drums can only be incremented, which for instance means that a reel at position ‘1’ can only be reset to ‘0’ by pulsing it nine times. Needless to say that this will definitely be the noisiest clock ever presented in Elektor. To be absolutely sure of that, and for the real ‘pinheads’ amongst us: an optional three tone electromechanical pinball chime can be connected to strike quarter, half and full hours.
The latter feature could be the most expensive part to add to the clock, since these chimes are becoming increasingly difficult to find and –in other words- more and more expensive. Alternatively, you can use a single bell from an older pinball machine.
Coils in electromechanical pinball machines are AC powered, with the exception of the flippers and so-called pop bumpers in later models. In brief, AC-coils can also be DC-operated, but at a lower voltage than their AC rating. Please note that this document is about permanently powering AC-relays with DC. In this clock and in pinball machines (most) solenoids are only powered with short pulses, so it’s very unlikely that the coils will overheat. This could only happen when a coil is permanently energised if the clock is malfunctioning, in that case a fuse will blow and cut the current before the coil fries. In real pinball life, a stuck-closed score switch will result in an evil smelling, burnt score reel coil that blows the 10A+ fuse when the windings’ isolation is melted and the coil is turned into a solid short-circuit, these coils where never designed to be permanently powered!
With the exception of early Williams games (before 1963: 50VAC), the coil voltage of both Williams and Gotllieb pinball machines was 28VAC during the EM age, all Bally EM games used 50VAC. All score drums will work fine on approx. 35VDC, although a lower voltage (+/- 20VDC) will also do for Gottlieb and Williams.
The schematic of the pinball clock (see Figure 1) isn’t too complicated, but let’s explain all sections in more detail anyway.
Power supply
The power supply of our clock is rather straight-forward. A 2 x 12VAC toroidal transformer (secondary windings in series) is connected to K4, resulting in a +/- 32VDC coil voltage at the positive terminal of the bridge rectifier D1..D4. That is… in theory, in practice the unloaded transformer will have a much higher output voltage, resulting in a coil voltage of more than 35VDC. If you have Willams or Gotllieb score reels, a 2 x 9V transformer will do too.
IC1 is a LM2576 stepdown converter that supplies the 3.3V for the digital section of the hardware for the pinball clock. To be on the safe side, we used a HV version with a maximum input voltage of 60V, ‘normal’ LM2576s have an absolute maximum rating of 40V at the input. LED1 will light when the 3.3V power supply is switched on.
One note about the electrolytic capacitor C1, one of the few through-hole electronic components in this project, that may look a bit odd on the PCB, but this was a deliberate choice. First of all: it’s difficult –if not impossible- to find a big SMD electrolytic capacitor with a voltage rating of more than 35V, through hole versions are much easier to find. On top of that, for the sake of mechanical stability a through-hole capacitor is to be preferred and (most important!) readily available with maximum voltage rating of 50V (or even higher).
The coils of the score reels and chimes are controlled with NTF3055 N-channel MOSFETs, which have a sufficiently low Vth to reliably pulse the coils with 3.3V logic outputs. In our first prototype these FETs were directly controlled by the ESP8266’s GPIO-pins. This proved to be a bad choice: the ESP8266 doesn’t have many IO’s and some of them have special functions during power up, making it very tricky to keep the coils completely switched off during startup. IC3, an MCP2300 I2C I/O expander, made the hardware a lot easier to control and it also offers a kind of protection/buffering between the ESP and the power FETs.
In the first design the four zero-switches were connected to the ESP’s ADC to save IO pins. Although this ADC is not really accurate, this solution proved to be reliable enough to keep it this way. The ESP will only detect a change in ADC value in this application, it can only determine if a zero switch opens after the coil of a score reel is pulsed, i.e. when this reel has reached its zero position. This means that during a complete reset all reels will turn, even if they were already at position zero.
A 1k2 resistor must be soldered across all four ‘zero’ switches (see Figure 2), all these switches in series connected to K3.
If there is no change in ADC value after 12 subsequent pulses on one reel, FAULT LED2 will light and pulsing this particular coil will be suspended until the clock is reset, but first check the zero switches and their wiring before you do so. This feature is not only implemented to protect your nerves, but also to protect the coil from heating up by being pulsed to reach a zero-position that will never register.
An I2C OLED display can be connected to K6 to display clock status information of the clock. This connector can also be used for future developments, like adding an I2C temperature sensor.
S2 is the reset push button, if you keep S1 depressed until S2 is released, the ESP8266 will start in bootloader mode, enabling the user to reprogram the clock via UART connector K1. S2 can also revert the clock to default (factory) settings, this can be useful if the clock is to be connected to a different WiFi network. To do so, reset the clock and press S1 while the red FAULT LED is lit.
IC2 is the highly accurate (only 5 p.p.m!) DS3231 I2C Real Time Clock, a CR2032 coin cell battery will keep the correct time even when the pinball clock is switched off. This means that you don’t have to adjust the clock manually every time after power up if it isn’t synchronized via NTP.
Building the pinball clock
First you’ll need four score reels, be sure you have them before you buy any other hardware for this project. Three-tone chimes, or maybe a single pinball bell would be a bonus, but these are not absolutely necessary to build the clock and even if you have them: chances are that you will disconnect very soon them to keep the noise down.
Although most parts on the PCB are SMDs, soldering will not be too difficult if you use a small soldering iron and thin (preferably <1mm) soldering wire. Solder one pad of each component first and check if all other connections are well aligned with the PCB and double-check the orientation/polarity of the semiconductor parts and electrolytic capacitors before you solder the other pads.
Clean the score drums and do not forget to install a 1N4007 (or equivalent) freewheel diode on all coils, the same goes for the optional chime solenoid(s). Connect the coil tabs at the cathodes of the diodes to the V+ connection on the PCB (at K2 for the reels, K5 for the chimes). The other side of the rightmost score drum (minutes) coil must be wired to RL1, the second (ten minutes coil) to RL2 on K2 and so on, the highest note of the chimes to CH1 on K5 etc.
The resistors for score reel zero detection will be soldered directly to the tabs of the zero position switches of the score drum units. After that these switches must be daisy-chained and the ends of this chain are wired to K3.
Discussion (11 comments)
Rop 3 years ago
Rop Oostveen
+31655797419
roppiedroppie@hotmail.com
drwass2 4 years ago
I just love the vintage mechanical pinball machines and weird types of clocks.
Looking at your article on making a clock of pinball wheels appealed to me.
I could not understand the schematic where the zero switches were all wired in series.
It seemed to me, that you would have to run each wheel, one at a time untill it passed zero, and then
move all the wheels around from 1 up to zero again. a lot of noise and time.
My score wheels have two input lines.
One line goes through the zero switch and then to the coil, and the other goes directly to the coil.
For counting, you would put pulses in the line that goes to the coil and it would always count up by one.
rolling over from zero to one again.
Pulsing the other line would only count up until the wheel was at zero where it would then stop moving and ignore any pulses.
So, to set ALL the wheels to zero, as is typically done at the start of any pinball game, one would pulse ALL the wheels with at least ten pulses on the line that goes thru the zero switch.
This way any wheel, not at zero would continue to count up untill it reached zero.
All wheels move at the same time if needed.
Did I miss something?
Lucky 4 years ago
BTW: it is not advised to move all reels at the same time, it will overload the power supply
Michail1 4 years ago
Are you sure your reels work like that?
This project has a power line PER reel so that they can be adjusted indepenantly.
1 ground for all and 4 power lines (1 for each reel)
The ESP has a single input for the position of each real. The 0 position each have a resistor inline. So, if all reels are on 9, the greatest resistance is on the input. Each reel in the 0 position shorts the resistor. So, as each reel hits 0, the resistance drops. All on 0000 means there is about 0ohms. This is how the clock keeps track of the reel positions.
Either the reels you have will not work, or you need to make a change in your harness to allow them to be individually controlled. I have several types of reels as I thought I bought up the worlds supply and have not seen the type you're describing.
Take a look at the wiring diagram Elektor has:
https://www.elektormagazine.com/image/original/97381
Resistor 28-31 each are 1K2.
Lucky 4 years ago
I don't understand what you mean with the two input lines on your reels, do you know what brand you have, or can you post a picture? Normally the zero switches are not in the circuit for powering the coil.
drwass2 4 years ago
The wheel shown in photo below has a switch that closes when in the 9 position and a switch that opens at the 0 position. Other wheels i have don't have the 9 switch but do have the 0 switch.
As shown in photo:
The red wire on the left goes directly to one side of the coil.
The next wire to the right, brown/yel, wire got to other side of coil & one side of zero switch.
The next wire to the right Blue/yel, goes to the other side of the zero switch which opens on 0.
The two wires all the way on the right go to the 9 position switch to perform carry over to next wheel.
So putting common voltage on left most red wires you would count up by pulsing the 2nd wire from the left. Pulses here would always move wheels and would count past zero to one again.
By putting pulses on 3rd wire from left you would only move the wheel if the zero switch was closed.
Thus, to zero any wheel, you don't have to look at or check any inputs. You just send a series of 10 or more pules to the 3rd wire from the left.
Any wheel at zero stays there, and any wheel not on zero would move until it reached zero at which time it would stop moving. You could put these pulses to ALL wheels at the same time, and only the wheels not on zero would rotate until they stopped on zero.
No need to check on any input. The old pinball and bowling machines worked this way. by using contacts for each wheel mounted in a circle and a rotating wiper usually driven by a motor to go around once and provide the ten pulses, usually at the start of the game which made the classic racket when a new game started.
By using the 9 switch to handle roll over to the next digit, and the proper wiring, you only have to pulse the unit digit to allow multi wheel display to properly count up through tens and hundreds or even thousands.
If and when I build the clock I will use a 9 switch wheel for minutes with a second wheel to handle the roll over for the tens of minutes. After 59 minutes I can send 5 or more pulses to the zero switch line of both wheels, which will move the 9 to 0 and count up the 5 to 0 all at the same time.
and obviously pules the hour unit wheel by one.
At 12:59 the next minute tick would next set all wheels to zero, by sending ten pules to all wheels using the zero switch and then have to set the hour unit to 1.
So, by wiring the zero switch, in series with an extra line to going to the coils, there is absolutely NO need to get any input from the wheels. When you want zero you just pulse the zero setting wire at least 10 times. There is no unneeded movement of any wheels. Only the non zero wheels move and they move the minimum needed to get to zero.
patrice soutoul 4 years ago
c'est simple
taper "Pinball Decagon Score Reel Unit" dans ebay.com
il y en a plein aux USa
c'est comme cela que j'ai acheté mes 4 rouleaux
amicalement
patrice
https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2047675.m570.l1313&_nkw=Pinball+Decagon+Score+Reel+Unit&_sacat=0
pierfel 4 years ago
Ou est i possible de trouver les afficheurs de flipper?
J'ai beau chercher je trouve pas?
Merci de votre aide.
Pierre Fellin
patrice soutoul 4 years ago
when and if the problems are solved i would have a complete program with all dependencies to programm my system.
thanks
best regards
merry christmas
patrice Soutoul
Davy Smits 4 years ago
When i force the clock in error state it moves all the reels correctly with a 12 pulse train
Michail1 4 years ago
Luc Lemmens 4 years ago
Davy Smits 4 years ago
Did you manage to fix it?
Davy Smits 4 years ago
Thanks
Michail1 4 years ago
I first thought it was the contacts on the reels; however, I ruled that out when I made the second clock.
Since then, I have built 11 of these clocks. I still have about 80 of the completed circuit boards left.
So, the problem is with the clock itself. I have to admit, I haven't spent any time looking into the code and only assume it happens during bootup. Since it doesn't pose a problem, I didn't look further into it.
Michail Wilson
www.voltagegoat.com
Davy Smits 4 years ago
can you tell me wich library versions you used for a working clock? and all settings in the arduino ide so i can rule those out
Best regards
Davy
Michail1 4 years ago
Adafruit MCP23008 library by Adafruit Version 1.1.0
Time by Michael Margolis Version 1.6.0
ESPAsyncUDP from github.
ArduinoJson by Benoit Blanchon Version 5.13.5
CRC 2.0.0
NTPClient by Fabrice Weinberg Version 3.2.0
Michail Wilson
www.voltagegoat.com
Davy Smits 4 years ago
i tried these already, downloaded these versions in the arduino ide,
is there a difference downloading these from the original source or through arduino ide?
Davy Smits 4 years ago
no reaction from elector, worthless
Michail1 4 years ago
M1@Michail.com
I don't mind trying to help you out as best I can.
Lucky 4 years ago
Michail1 4 years ago
Davy Smits 4 years ago
Lucky 4 years ago
You mean that the issue is solved now?
Regards,
Luc
Davy Smits 4 years ago
Patrick Denis 5 years ago
Juste pour le plaisir un lien vers une vidéo de ma réalisation de ce beau projet.
Quelques embuches mais baucoup de plaisir.
Patrick D.
https://www.youtube.com/watch?v=8rzWTgwLpAo
Davy Smits 4 years ago
that explains alot, i can see the ap, but its called nodemcu with some random numbers and letterd, not Elektot pinball clock, i attached a display and it shows booting init scorereels. Just have to wait untill all parts arive before i continue.
Lucky 4 years ago
Nope, with the current software version the clock will try to reset a working set of score reels (including zero switches) and will halt when this fails. The webpage is not accessible, but if you haven't registered the clock on your local WiFi yet (you should have had access to the webpage before to do so) you should be able to see its local access point (AP) on your WiFi devices as network called 'Elektor Pinball Clock'. You can connect to this network although the webpage will not be displayed when you try to access it at IP-address 192.168.4.1, but at least you know that the ESP8266 is up and running.
Davy Smits 4 years ago
patrice soutoul 5 years ago
i get a new pc ob windows 10
i folow all instructions include the last realease you sent.
after 9 month i will need help!!!
i propose to pay for a Mcp230008 programmed!!!
payment with Paypal with no charge
tell me the price plus shipping close to Toulouse France
thanks to answer me
soutoul.patrice atgmail.com
patrice soutoul 5 years ago
since two month i try to get a solution .
the card and the complete clock are ok since 2 months
i follow the author's instruction for programming and i can't have good results
i try to write the author 'one answer with no issue by a secretary)
i try many message
no answer ....
the program fail at the same moment
WHEN I TRY TO VERIFIER/COMPILER
THE ANSWER IS
"Utilisation de la bibliothèque WebSockets version 2.1.0 dans le dossier: C:\Users\patrice\Documents\Arduino\libraries\WebSockets
PinballClock:45:1: error: 'RTC_DS3231' does not name a type"
i use Arduino, 1.8.9
and carte Node mCU 1.0 ESP 612e MODULE
it's the first time since 1978 that i fail with an elektor module...
help
help
help
help
help
help
help
help
helphelp
help
help
Mathias Clauszen 5 years ago
if i see this correctly you use a
RTClib version 1.1.0, if please make sure you are using RTCLib by Adafruit ( at least Version 1.2.x ) as older ones don't support the DS3231 and will result in the eror you see. Also note that you need to use the latestArduino JSON 5.x library (5.13.5)
Best regards
CalM
Michail1 5 years ago
If you just need the compiled code, I am happy to provide it.
Michail1@aol.com
If you made changes to the code and wonder if that is the cause, you can send me your changes and I will try to compile for you.
patrice soutoul 5 years ago
thanks Michail1 i tried
i check ,i used Arduino 1.8.9 and all libraries you used
i get the same error
i tried the patch from Elektor
the result are the same
Bad
i go to holidays and i restart in september
thanks
best regards
ElektorLabs 5 years ago
after submitting a bugreport an no patch in the lib, here we attached a patched version that shall solve a bug if the ntp can't be found. We hope that this will be fixed somehow in the future directly in the lib
Best Regards
ElektroLabs
Michail1 5 years ago
I have no problem compiling the code with the suggested libraries.
For the two that you're having an error with, I use....
Arduino 1.8.9
ArduinoJson by Benoit Blanchon Verson 5.13.5
WebSockets by Markus Sattler Version 2.1.1
Also note, I use....
NTPClient by Fabrice Weinberg Version 3.1.0
NtpClientLib by German Martin Version 3.0.1-beta
Time by Michael Margolis Version 1.5.0
patrice soutoul 5 years ago
when...
best regards
patrice soutoul 5 years ago
i am happy for your help and satisfied to be not so fool...
best regards
patrice
ElektorLabs 5 years ago
we are currently inverstigating an issue with the current version of ntp client library, as this makes the whole system crash. We are sorry for this inconvinience but should soon be able to provide a solution to you
Best Regards
ElektorLabs
ElektorLabs 5 years ago
we are going to investigate this further. It seems since the start of the project something in the arduino support package for the ESP8266 may have changed. So we ask you for a bit of patiance until we sorted things out and can provide you with a solutions for the problem.
Best regards
ElektorLabs
patrice soutoul 5 years ago
JsonObject& root = jsonBuffer.parseObject(payload);
int bell = root["bell"];
int score = root["score"];
if(bell>=0){
Display_RingBell(bell);
}
if(score>=0){
UpdateScore(score);
}
comments in orange
invalid conversion from 'uint8_t* {aka unsigned char*}' to 'char*' [-fpermissive]
yhanks for your help
patrice soutoul 5 years ago
i was a little bit sad and for me this answer is good news
i check and i made upgrade
please see that program failed page 177/180 in red in the file
"Utilisation de la bibliothèque WebSockets version 2.1.0 dans le dossier: C:\Users\patrice\Documents\Arduino\libraries\WebSockets
C:\Users\patrice\AppData\Local\Temp\arduino_build_761502\sketch\webfunctions.cpp: In function 'void display_readstatus()':
webfunctions.cpp:550:42: error: no matching function for call to 'ArduinoJson::Internals::BlockJsonBuffer<ArduinoJson::Internals::DefaultAllocator>::BlockJsonBuffer(const size_t&)' "
i hope a miracle...
thnks
best regards patrice
ElektorLabs 5 years ago
please make sure you use a ArduinJson version 5.x for compilation and also be sure to install the RTCLib by Adafruit.
The following libraries are requiered:
To compile the code you need to include some libarys
Best Regards
ElektorLabs
John Ellenberger 5 years ago
This is my first Elektor project. Is it even possible for US folks to build these projects? Is there any resource that produces valid BOMs for the US for Elektor projects?
I am seriously reconsidering my subscription.
Michail1 5 years ago
Other than the Board and Transformer, I got everything from Mouser.
I purchased enough to make 50 completed boards. (Yes, I like building more than using them.) I had no problems in getting everything from the USA and the code compiled easily once I figured out which libraries (and versions) were needed.
eMail me directly and I may be able to help you get your project completed. Or sell you one of the completed boards I have.
This was a test of a few of them...
https://www.youtube.com/watch?v=CjvtKATv_Vc
Michail1 at aol.com
Lucky 5 years ago
With all due respect: when someone is having issues programming the code, that doesn't mean that the software does not work.
John Ellenberger 5 years ago
Like I said previously, seriously wondering whether Elektor is really practical for US folks.
Lucky 5 years ago
You're right, the 'Digikey' part numbers in the BOM are RS Components numbers actually. Any specific parts you are unable to find?
Best regards,
Luc
patrice soutoul 5 years ago
Hello in this case could you send this message to the authors Luc Lemmens and hervé Moreau. I built the clock and I have a problem when compiling Arduino I'm attaching a print screen of the compilation at the moment it stops and the error file "exit status 1 'class NTPClient' has no member named 'setNTPTimeout'" here is the message I have I think i has a problem with the Ntpclientlib library I tried to load with the address point 7 https://github.com/gmag11/ntpclient/issues/60 you recommend developing the AsyncUDp branch I do not know how to do it and that's certainly what's blocking I'm sorry to annoy you but I'm desperate for .... receive a big thank you for your help cordially patrice Soutoul (64 years old may be too old to understand)
Daniel Segel 5 years ago
That being said, this code is WAAYYY more complicated than it needs to be. If/when I get around to buildinmg this, I'll be writing my own code for it.