#BuildAScoreboard

Win a 3D Printer

Winners!

After an exciting and nail-biting final, France has been crowned champions of the world.

Thank you to everyone who got on board with Mouser throughout the tournament. We had some very exciting entries. However, there can only be one winner. Which takes us to the more important announcement, the winners of our #BuildAScoreboard competition:

See how some of our participants built their scoreboards

Cheering Scoreboard You think of a traditional scoreboard as being a simple visual display with the teams and number of goals displayed. Which is enough to get the job done, but it's not particularly interesting. It doesn't make you feel a part of the action.

What I wanted was to feel involved. To experience the game as though you're there in the stadium. A stadium can be an onslaught of the senses, so I had to choose. The sense with the most correlation to the score just has to be the cheering of the crowd. The better your team is doing, the louder you chant and shout. Based on this, I decided to build an audio scoreboard. I also figured that 40,000 people cheering results in a sound essentially similar to white noise.

To make it a real-time experience, I wanted it to update live, so you know the score throughout the match. To do this, I looked for web APIs that I could get the data from. There are a few available, and I used worldcup.sfg.io. This gave the data as a JSON file. I accessed this using an ESP8266, which is like an Arduino with built-in wi-fi. They can also connect to Google Home, so I've used these all around my house to automate things like my projector screen and Christmas lights.

The BuildInitially I tested different ways to create white noise. My original idea was to build a circuit of discreet components, which would have given the white noise desired, but controlling the volume would be difficult. A stepper motor and a pot would have been a cool way to adjust the volume, but I only had one motor available and required stereo sound.

The next option was to recreate the noise in software and amplify it with a basic stereo transistor amplifier. To create the sound I used an Arduino Nano and the software-based random number generator. I outputted a PWM signal of random duty cycle (power) for a random length of time, then turned it off for another random length of time. This was then amplified by the discreet transistor amplifier and resulted in the cheering sound I was aiming for.

To control the volume, I put a scaler figure into the PWM control. Doubling the output didn't double the volume however, so for every point, I increased it significantly. This worked perfectly, ensuring the difference between points was suitably noticeable. To get a stereo effect I simply duplicated it. Bingo, we have a basic (non-networked) scoreboard.

Next was to get the live updating working. Using the ESP8266, I set it to access the API once every 30 seconds. From the API, I only needed the "home" score and the "away" score. There are various options for reading JSON, but luckily, the API has some optional parameters that provide exactly what I needed. I just translated the output into a number, sent it from the ESP8266 to the Arduino Nano via i2c and fed it into the PWM scale factor. Whenever there's a match on, the score keeps updating and whenever anyone scores a goal, the noise for their side increases.

The Result The end result was a little crude, but it did work and it was plainly obvious which side was winning. With a 3D printer, I could build an enclosure for it to make it a little prettier. I also considered using the web interface on the ESP8266 to display the teams’ flags. That way, I could have used a couple of old smartphones or tablets to connect directly to it and added to the visual effect, resulting in a multi-sensory experience.

I also considered that if I did have a 3D printer, I could turn it directly into a scoreboard. Some 3D printers can be controlled directly through a reverse-engineered USB cable. Utilising the same API on the ESP8266, it should be possible to have the 3D printer physically print the score whenever it changes!

IntroductionA sports scoreboard is a panel where the audience can see the live results of sporting events.For years the scoreboards of the stadiums have gone from being elements Liabilities As 7-segment displays, or Split-Flap displays to big screens (LCD, dot matrix…). These screens in addition to color scoreboard can show another relevant match information. With this philosophy I chose a laptop LCD screen as a board.

This marker is built on the occasion of the World Cup of 2018. Therefore, we will give you connectivity to the network to be able to show live the results of the World Cup.

Box.The box is made of plywood. With a saw we cut the structure. We screwed and glued withclamps. We make the cable holes.

Screen.The screen we got from an old laptop. The screen controller can be achieved at a veryaffordable price on the Internet. This has different video outputs like HDMI or VGA.Controller.I use a Raspberry Pi as a processor. The HDMI output allows me to connect to the controllerof the LCD screen directly and with the USB ports allow me to use a remote control andprogram on site with a keyboard and a mouse.

AssemblyOn the built box we glue the screen with hot glue, insert all the components in the box andput the adhesive vinyl. We place the aluminum plate as trims.

SoftwareThe operating system of the Raspberry Pi is Raspbian. Raspbian is a Linux distributionDebian-based but optimized for the Raspberry Pi. Within this environment we run a Python programmed application using the graphical API of the 'pygame' module (with an interface like SDL libraries). The Internet connection is managed by the OS. The code consists of 3 layers: menu, local marker and live marker.

The graphics are designed on a laptop. Via USB ports we have programmed directly into the raspberry Pi using the Python IDLE. The menu layers and live scoreboard make requests to the http://livescoreapi.com/WebAPI that offers global live results from soccer leagues matches andcompetitions. It has a free version and the payment is low cost.

The information given by theWeb API is usually delayed between a few seconds and several minutes. I know that this problem could be solved with a more powerful API (and therefore higher price).

My Scoreboard - a live RSS reader that send its data by Bluetooth to an Arduino 101.I’ve worked with projects with Arduino before, but this is my first with an Android application. After installing all the software and getting familiar with the Java code I started with following multiple tutorials, to understand the basic functionality Android Studio. Below are all the links of all the tutorials I followed to create this project.

To get the live soccer scores, a RSS feed is used. This application can enter all the online RSS feeds, but in this project I made filters to fit it only to a provided soccer feed. This feed shows all the soccer matches worldwide, so a function with a list of all the teams, the correct World Cup matches can be filtered. This is added to a separate list, where it get formatted to one string that is send automatically to send to the Arduino. The Bluetooth pairing is done within the app.

The Arduino receives a string that only needs to be formatted (scores, home/away team and the match progress) before it is send to the LCD screen.