Un sistema di segnapunti digitale DIY (Do It Yourself / Fai da te) pensato per le partite di PingPong, che unisce hardware โ๏ธ e software ๐ป per offrire un tabellone interattivo con pulsanti ๐, display ๐บ e interfaccia web ๐.
A DIY digital scoreboard system for PingPong games, combining hardware โ๏ธ and software ๐ป to provide an interactive scoreboard with buttons ๐, display ๐บ, and web interface ๐.
- ๐ฎ Aggiornamento del punteggio con pulsanti fisici collegati ad Arduino UNO R4 WiFi.
- ๐บ Visualizzazione punteggio su display Nextion e matrice LED.
- ๐ถ Effetti sonori (temi noti).
- ๐ Interfaccia web responsive con animazioni CSS per mostrare i punti live.
- ๐ Sistema server-client con Flask e aggiornamenti in tempo reale via Server-Sent Events (SSE).
- ๐ก Configurazione attuale: lโArduino si connette ad una rete WiFi che deve essere la stessa usata dal dispositivo che ospita il server web.
๐ Hardware:
- ๐ฅ๏ธ Arduino UNO R4 WiFi
- ๐บ Display Nextion
- ๐ฒ Arduino LED Matrix
- ๐ Pulsanti fisici
- ๐ Buzzer
๐ป Software:
- ๐ C++ (Arduino)
- ๐ Python (Flask)
- ๐ HTML + ๐จ CSS + โก JavaScript
- ๐ฌ Animazioni CSS
- ๐ Server-Sent Events (SSE)
๐ File e Layout:
- ๐๏ธ Progetti Nextion (
.HMI,.tft) - ๐พ Sketch Arduino (
.ino) - ๐งฉ Template Flask (
index.html) - ๐จ Fogli di stile (
scoreboard.css,style.css)
-
โ๏ธ Configura lโArduino
- Inserisci le credenziali WiFi nello sketch
.ino. - Carica il codice sullโArduino UNO R4 WiFi.
- Collega pulsanti, matrice LED e display Nextion.
- Inserisci le credenziali WiFi nello sketch
-
๐ป Avvia il server web
-
Assicurati che il PC sia connesso alla stessa rete WiFi dellโArduino.
-
Vai in
arduinoUNO-R4WIFI-Nextion/e avvia il server Flask:git clone [https://github.com/your-username/CityBeach-Ancona.git](https://github.com/Zinale/PingPong-Scoreboard.git) cd PingPong-Scoreboard/arduinoUNO-R4WIFI-Nextion python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate pip install -r requirements.txt python server_web.py
-
๐ Il server sarร disponibile su
http://<IP-PC>:5000.
-
-
๐ Accedi allโinterfaccia web
- Apri un browser e visita lโindirizzo.
- Vedrai il tabellone aggiornato in tempo reale.
-
๐ Gioca!
- Usa i pulsanti per incrementare/decrementare i punti.
- Punteggio sincronizzato su display e interfaccia web.
- ๐ฎ Score updates via physical buttons connected to Arduino UNO R4 WiFi.
- ๐บ Score display on Nextion display and LED matrix.
- ๐ถ Fun sound effects (well-known themes).
- ๐ Responsive web interface with smooth CSS animations.
- ๐ Client-server system with Flask, real-time updates via Server-Sent Events (SSE).
- ๐ก Current configuration: Arduino connects to the same WiFi network used by the server host.
๐ Hardware:
- ๐ฅ๏ธ Arduino UNO R4 WiFi
- ๐บ Nextion Display
- ๐ฒ Arduino LED Matrix
- ๐ Physical buttons
- ๐ Buzzers
๐ป Software:
- ๐ C++ (Arduino)
- ๐ Python (Flask)
- ๐ HTML + ๐จ CSS + โก JavaScript
- ๐ฌ CSS Animations
- ๐ Server-Sent Events (SSE)
๐ Files & Layouts:
- ๐๏ธ Nextion project files (
.HMI,.tft) - ๐พ Arduino sketches (
.ino) - ๐งฉ Flask templates (
index.html) - ๐จ Stylesheets (
scoreboard.css,style.css)
-
โ๏ธ Setup the Arduino
- Enter WiFi credentials inside the
.inosketch. - Upload the code to the Arduino UNO R4 WiFi.
- Connect buttons, LED matrix, and Nextion display.
- Enter WiFi credentials inside the
-
๐ป Start the Web Server
-
Ensure your computer is connected to the same WiFi network as the Arduino.
-
Navigate to
arduinoUNO-R4WIFI-Nextion/and run the Flask server:git clone [https://github.com/your-username/CityBeach-Ancona.git](https://github.com/Zinale/PingPong-Scoreboard.git) cd PingPong-Scoreboard/arduinoUNO-R4WIFI-Nextion python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate pip install -r requirements.txt python server_web.py
-
๐ The server will be available at
http://<PC-IP>:5000.
-
-
๐ Access the Web Interface
- Open a browser and visit the server address.
- The live scoreboard will appear.
-
๐ Play!
- Use the Arduino buttons to update scores.
- Scores sync across Nextion display and web app.
Distributed under the MIT license. See the LICENSE file for more details.
- ๐ง zingaale@gmail.com | Alessandro Zingaretti