PaulS:
I've lost track of what you are trying to do. Post the code from before you tried to implement this latest feature (fiasco). Try to describe what the code should do, NOT how you think it should do it. Phrase your response like you were trying to hire a programmer.
Thanks Paul and sorry for the lack of clarity here. Attached is a copy of the functioning code (both for the remote transmitter and the receiver board) before my changes.
Currently to set the time, I connect my laptop via cable to the control board, open the sketch and via the serial monitor send through the UTC time in the format yyyy,mm,dd,hh,mm,ss. This uploads to the DS3231 attached to the board and the current AEST time display on 4 of the digits on the scoreboard.
What I would prefer to do so that "anyone" can re-adjust the time in future when the RTC battery goes flat, is to upload this time via the remote that runs the scoreboard. I'd also like for them to only have to upload the current AEST instead so as to not confuse them - the code can add the 10 hours for them.
I have 15 digits across the board - 3 for temperature, 4 for current time, 4 for timer, 2 for home score and 2 for visitors score. I'd like for the # key held down for 2 seconds to trigger a "change date-time" function and display this incrementally on the "time" digits, starting with year, then month+date, then hour+day.
As the program is executed and the user presses each number, the corresponding digit on the scoreboard is to flash from "0" to "nothing" to indicate which number they're on. Then when the button is pressed for that number, it displays on the board without flashing and goes to the next digit. As the year for example is finished to be typed, the digits then display 0000 and the first "0" flashes waiting for the month+date to be pressed. At the end, the string gets uploaded (once all numbers are keyed in).
Alternatively, aarg's suggestion of left right adjustment could also be a good idea. Maybe the current year displays on the current 4 "timer" digits, the month displays on the current "home score digits", the day displays on the current "away score digits" and the time displays in the usual "time" digits. Then the keypad 4 and 6 buttons (left and right) allows the user to move to the correct digit and the 2 and 8 buttons (up and down) allow the user to increment each number up and down as required. I think this would be better, but just sounds alot harder to do.
PaulMurray - the more I've been reading online, the more I've seen that the cases numbers can't take on a number via a loop variable - they need to be set up front. Your explanation of how it works makes more sense now.
lastchancename - your suggestion is probably the best (maintenance free), however not having dealt with that type of setup before (as a novice), it adds yet another level of complexity for me. Sorry.
_Controlboard_scoreboard1_06.ino (49.3 KB)
_Remote_scoreboard1_03.ino (22.7 KB)