After doing another project - a knight-rider-like array of red LEDs with a dial that changed the speed - I have found myself suddenly derailed into much deeper territory with
dakari_mane's suggestion that I make a Blood Bowl scoreboard.
Such a thing would need several different displays and buttons to perform various functions. A simple score counter for each team will require two single-digit displays of some form; I also envisage a turn timer as a long row of LEDs that counts up from left to right for one player, and right to left for the other as their 4-minute turn runs out. Then a turn counter to show which turn it is, and perhaps a re-roll counter. And of course all the buttons and switches to manage these, chief of which will be a classic Big Red Button to be thwacked by each player as they finish their turn.
Having no idea how to structure the software for such a thing, I decided to try putting this thing a chunk at a time, and have started with the turn timer - a row of 24 LEDs (1 per 10sec) - 8 red, 8 green, and 8 blue.
I fairly quickly got them counting up, and then doing the same from the opposite side. It was a little more work to cause a gap in the row of LEDs to swish along in the same direction between each new LED lighting up - this works rather nicely because the more LEDs are lit, the faster it must go to finish it's run in the 10 seconds, and the faster movement helps display the added sense of urgency as the last seconds count down to the end of the turn.
Then I managed to work in the button, to an extent - now you have to press it to start each turn. What's going to be more difficult is allowing the button it interrupt a turn - I can only think that I shall have to make the whole LED-swishing a function, with frequent button-checking which will exit out of the function if it is pressed.
Once that is done, I should imagine it will be trickier still to work in the other functions - although, thinking about it, only the re-roll counter will need to change mid-turn; the score and turn counters will only need to update between turns.
My programming skills are weak, and very rusty from years of disuse, so putting together all this will be quite a challenge. Hopefully the Hackspace will run an Arduino workshop sometime soon so I can get some help/advice and generally learn more about the controller.