PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function

PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function

3 years ago, November 27, 2020
Reading time: 5 mins

PiMP, also known as Ping-pong Management Platform is a one-stop solution to manage table-tennis matches. It consists of a beautiful GUI accessible on your browser built with the latest technology stack. It helps manage your Players’ data, matches data, and tournaments, and even lets you scorekeeping the table tennis match in real-time.

PiMP offers real-time score updates for any number of clients. They are simply a page on the internet you can browse and you can follow the scores in real time with an automated announcement.

Game analysis, stats, charts, and summary

Not only does it provide real-time scorekeeping, but it also gives you analysis and charts for matches and keeps user profiles updated with their stats.

PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function
PiMP Stats, Charts summary after a table tennis match

Live streaming with real-time score update overlay

Recently I have been working on the broadcasting of table tennis matches via Streaming Software like Streamlabs or OBS. It is now possible to go live on your streaming software with real-time score updates on screen as well as nice stats screens when the matches are not active.

Youtube live stream of a table tennis match, Waiting to go live screen with player stats display.
Waiting to go live screen with Players’ stats
Live stream of table tennis match between Andrey and me

Remote devices for real-time scorekeeping

The scorekeeping can be done using any device that can access the internet, Computer, tablet, mobile phone, and even voice-assisted devices like Alexa and Google Assistant but, for a good user experience, tablets or smartphones work better. If there is no third person/referee to keep scores, I have developed TwingBox. Very recently I have been experimenting with smartwatches, I have built an app for smartwatches running ZeppOS. I have been currently experimenting with my Amazfit T-Rex 2.

PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function
TTBox early prototype on breadboard
PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function
TTBox on custom PCB

TwingBox is a WiFi-enabled device, based on NodeMCU (ESP-8266). It has an analog 6 keys controller with a Nokia 5110 LCD integrated and an RFID reader RC522. TwingBox connects to your wifi and can be configured to register in a PiMP platform endpoint and operate Table Tennis matches in the system.

TT-box / Twing Box
TT-Box v2

I am working on version 3 of TwingBox which will come in 2 parts, a wearable that you can wear on your wrist and a Central unit with a screen to access UI and RFID reader if you want the sign-in feature using RFID cards. I have drastically reduced the size of the devices as the wearable device to fit comfortably on your wrist.

Wearable controller of TT-Box V3
Wearable controller Rear view

The wearable will be available with an option to not have a wireless connection, and wire to connect to the Central Unit.

PiMP on ZeppOS-based smartwatches

The app is still under active development but is fully functional as it uses the same API that TTBox used.

PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function
PiMP scorekeeper on Amazfit T-Rex 2 / ZeppOS

The watch can be added as a new device on the manage device page. Then the device can be linked to a match. From there the device will update the scores in real time.

PiMP Ping-pong / table-tennis Management Platform with real-time scorekeeping function
PiMP device manager

I currently use a local server for the backend API, which means I need to run a proxy like ngrok to point to my local server. I use an additional proxy function on Vercel to keep track of the ngrok URL so that the client can remember it. Also, the watch app simply uses it as a proxy to the backend server. It does work for the limited API that the watch app requires to function. Here is an illustration of the current architecture.

I am working on improving the smartwatch app. Stay tuned for updates.

Do you want to talk with me about PiMP?

Say hello via my Contact form.

Previous
Docker compose update php.ini
Next
GraphQl with Neo4j
© 2024 Anil Maharjan