Project: LED RC Scoreboard
#1
Project: LED RC Scoreboard
The past couple of months I've spent entirely too much time in my basement writing code, and cobbling together a system to repurpose some old LED signs into a live scoreboard on the wall of our track. Tonight, I finally had the opportunity to test it during racing. I think it turned out okay.
Our club, CORRC.org, supports a permanent indoor track in Denver, CO. It's a great group of guys that have all invested a lot of time, effort and money into the facility in an attempt to make it something great. I wanted to give them something that would set the track apart from all others.
I wrote the software (called LED Selektor) in Python. It runs on Windows alongside RC Scoring Pro. To display live race info, it uses the same XML file (generated by RCSP) that LiveRC leverages to put their results online. Practice laps get a bit more tricky. RCSP can be configured to send info during practice to BetaBrite's which are single line LED displays. In order to capture that information and display it on my signs, I had to use a program called com0com to create dummy pairs of COM ports. RCSP connects to one end, and my software connects to the other and reads the information back out. It then strips all the Alpha protocol stuff off the message (used to format messages on LED signs) and reformats it for use on my displays. What ends up happening is that you get a running counter of the last 8 laps, and how long you've been on the track practicing. It looks like this:
The big sign up top just shows the time when there's no racing going on. I did, however, write into my program the ability to set a timer on the top sign letting you know when the next round of racing will start. So, it will display something like: ROUND1 15:42. The time is a countdown timer, and when it reaches zero, it's time for round1 to start.
Anyway, I've got some ideas of new features I would like to add, and I need to still work out more bugs and make it more robust, but it's definitely usable, and seems to be a great addition to our facility.
Unfortunately, because the hardware used here is old and hard to find, it's not really something I could see someone using at another track. The program I wrote is very specific to our particular hardware. That said, if you're the developer type, and want to tackle a similar project, I would look for multiline signs made by Adaptive/AMS/Alpha/EMC, and hope their serial communication works. From there, look up the Alpha protocol white paper and have some fun.
+ YouTube Video | |
#4
Tech Initiate
That looks great... Have you considered making the code open source?
#5
that's great....
#6
NICE
Very nice!!!!
I have a few Alpha/Adaptive signs.... but my race software shows nowhere near as much info. Do you need any special/custom chip in the sign?
http://www.rctech.net/forum/attachme...sion-wgrii.jpg
I have a few Alpha/Adaptive signs.... but my race software shows nowhere near as much info. Do you need any special/custom chip in the sign?
http://www.rctech.net/forum/attachme...sion-wgrii.jpg
#11
thats awesome, wish we could have this at our track
#12
The dad of one of the RCRacingTV presenters in the UK builds these;
They aren't cheap but almost all of the permanent tracks have them.
I think the best combination would be a top section like ours, but with the bottom section with names etc like yours.
Very impressive though
They aren't cheap but almost all of the permanent tracks have them.
I think the best combination would be a top section like ours, but with the bottom section with names etc like yours.
Very impressive though
#13
That has to be the best score board I have ever seen, congrats!
Hope it gives you many years of good service!
The layout is 100% imo and the fact that you're still adding to its options is cool too.
Hope it gives you many years of good service!
The layout is 100% imo and the fact that you're still adding to its options is cool too.
#15
I'm a big fan and beneficiary of OSS, and fully support it. I'm not opposed to sharing the source of this program, but I would be a little bit ashamed. Python is a new language to me, plus I only write code as a hobby, so it's not exactly beautiful. A real programmer would laugh me out of the building.
My big sign (4200C) has a special chipset in it because it was custom built by Adaptive for Avaya phone systems to display call stats in call centers. I didn't know this when I bought it, I figured it was a normal 4200C. The serial connection on it seems to be locked out, and I figured I was out of luck. But, it has a network interface on it, so I connected my laptop to that port directly, fired up tcpdump and started sniffing the traffic. The NIC on the sign was trying to ARP, and revealed its IP address. I set my computer to an IP on the same network, connected to its only open port (tcp/3001) and dumped commands to it just like I would the signs over serial. Lo and behold, it worked! So my 8 line signs talk over 9600 baud serial, which is why they're a little slow to refresh, and the 4200C talks over a private network via a second NIC on the scoring machine.
I wish. This hardware was all made in 2005, so it's actually fairly new. I got lucky in that regard, 'cause they've been manufactured since 1998. That said, the 8 line directors go for $4000/each new, and the 4200C is closer to $5000. I spent less than $500 for the 3 signs used, but those deals aren't around often enough to make a business out of it. It was just a project for fun. This sort of thing is kind of a convergence of my hobbies, programming and RC.
Yeah, I had never thought that all the way through. I think once the novelty wears off, you'll just see people glance up now and then. It's an okay problem to have I think!