Embedded Web App for clay shooting electronic system
- or -
Post a project like this1819
€1.0k(approx. $1.0k)
- Posted:
- Proposals: 10
- Remote
- #2371118
- OPPORTUNITY
- Awarded
Software Engineer | Full Stack Developer | Cloud Architect | Motion Graphics Animator
London
Service Provider in Development & Designing IT : Wordpress|Magento|React N...
Bay Minette
20 years experience in Electrical , Electronics , IOT , embedded systems, Software & Mobile app development
Indore
AI & Data Science Engineer | Nodejs | Ruby On Rails | AWS | GCP | Python | React | Angular |
Auckland
Azure Cloud Services | Microsoft CRM & Salesforce | Web & Mobile App development | IOT Solutions
Ahmedabad
VLSI|Embedded Systems|IoT|Product Engineering|Smart Devices|Consumer Electronics
Ahmedabad
IoT|Embedded Systems|Product Engineering|Wearable|VLSI|Hardware Design|Firmware development|Consumer Electronics
Ahmedabad
268426447109856309567744298823810886811716969251361926774162693309
Description
Experience Level: Expert
Estimated project duration: 3 - 4 weeks
CLAYMASTER
Claymaster is an electronic system which enables common shooting disciplines such as trap, skeet, helice and compak sporting.
There are 4 key components in this system:
1) One or more LAN enabled hardware devices for each shooting ground of a shooting club
2) A Web App hosted on a web server device (i.e. Raspberry pi or similar embedded linux webserver) that acts as a management and data collection center
3) Local network (with/without internet access) that connects the devices (probably using a different subnet to be able to also connect to the internet when the modem is connected)
4) RFID Reader / Writer modules, embedded both on the ECU and on the Raspberry, for loading / unloading of the games
The project you should carry out refers to the server management app and the communication with the remote client devices. Instead, the remote client web interface will be managed by us (i.e. response to app REST requests, data format, etc.).
Web project requirements
- Lightweight
- Multilingual support
- Responsive UI
- Support for future remote upgrades of the web app
- Full source code ownership on delivery
- Programmed to be able to interface with Mobile Apps
Main Features
Registration of new devices found on local network and their setup via a config file to be authored via the app and sent to the client devices
- IP assignment to a new client device (changing the default IP and saving it in the control unit memory)
- Polling system to identify the client devices connected to the local network
- System to load and send the configuration file to the client devices using a proprietary format (format already existing)
- System for visual editing and archiving of these configurations
Monitoring and Storing User/Game's Scores
- Get results of games in progress (live polling) and store results
Basically the remote devices POST data to the web app server when a new game starts. The data returned contains information about the shooter id's for each starting position (the card ID that is associated to a user on the server). The server should then respond with a new game ID which the device will store locally. From that point onward, the devices will send game scores every so often using the game id, which will be used to update the game score on the web server. The cycle starts again when a new game starts on the local device.
- Club statistics pages (using game records)
- Personal statistics pages (using game records)
Program games on RFID cards.
- Associate the id of an RFID card to a user
- Program number of available games onto RFID card
- RFID reader on web server is the cheap RC522 (i.e. https://www.youtube.com/watch?v=PtKuQf8z7HI)
- Connection to from webserver to RFID module should happen via serial/python
(FYI: The client device will be responsible for reading the available games, subtracting and rewriting the remaining ones onto the card during game self-enrolment which is outside the scope of this project)
Remote control of client devices
- emulation of controller commands (just sending integers via REST)
- reception of textual output of the client device after every command to display on UI
Routing of live scores page to HDMI output
- Essentially re-direct the output of the defined pages to the HDMI video output
Local server to WWW synchronization of user statistics.
- Upload, in presence of internet connection, of results history of individual shooters (accessible only by relative user with own unique accounts credentials)
I am attaching a wireframe to exemplify the various web app views and will send more design docs after NDA is signed.
Notes:
- Source code will be wholly owned by us and will hold no licencing
- Source code must be written using common frameworks
- Code must be easily deployable on new devices
- You will require a raspberry pi and the reader as it will be needed for testing locally on your end
Claymaster is an electronic system which enables common shooting disciplines such as trap, skeet, helice and compak sporting.
There are 4 key components in this system:
1) One or more LAN enabled hardware devices for each shooting ground of a shooting club
2) A Web App hosted on a web server device (i.e. Raspberry pi or similar embedded linux webserver) that acts as a management and data collection center
3) Local network (with/without internet access) that connects the devices (probably using a different subnet to be able to also connect to the internet when the modem is connected)
4) RFID Reader / Writer modules, embedded both on the ECU and on the Raspberry, for loading / unloading of the games
The project you should carry out refers to the server management app and the communication with the remote client devices. Instead, the remote client web interface will be managed by us (i.e. response to app REST requests, data format, etc.).
Web project requirements
- Lightweight
- Multilingual support
- Responsive UI
- Support for future remote upgrades of the web app
- Full source code ownership on delivery
- Programmed to be able to interface with Mobile Apps
Main Features
Registration of new devices found on local network and their setup via a config file to be authored via the app and sent to the client devices
- IP assignment to a new client device (changing the default IP and saving it in the control unit memory)
- Polling system to identify the client devices connected to the local network
- System to load and send the configuration file to the client devices using a proprietary format (format already existing)
- System for visual editing and archiving of these configurations
Monitoring and Storing User/Game's Scores
- Get results of games in progress (live polling) and store results
Basically the remote devices POST data to the web app server when a new game starts. The data returned contains information about the shooter id's for each starting position (the card ID that is associated to a user on the server). The server should then respond with a new game ID which the device will store locally. From that point onward, the devices will send game scores every so often using the game id, which will be used to update the game score on the web server. The cycle starts again when a new game starts on the local device.
- Club statistics pages (using game records)
- Personal statistics pages (using game records)
Program games on RFID cards.
- Associate the id of an RFID card to a user
- Program number of available games onto RFID card
- RFID reader on web server is the cheap RC522 (i.e. https://www.youtube.com/watch?v=PtKuQf8z7HI)
- Connection to from webserver to RFID module should happen via serial/python
(FYI: The client device will be responsible for reading the available games, subtracting and rewriting the remaining ones onto the card during game self-enrolment which is outside the scope of this project)
Remote control of client devices
- emulation of controller commands (just sending integers via REST)
- reception of textual output of the client device after every command to display on UI
Routing of live scores page to HDMI output
- Essentially re-direct the output of the defined pages to the HDMI video output
Local server to WWW synchronization of user statistics.
- Upload, in presence of internet connection, of results history of individual shooters (accessible only by relative user with own unique accounts credentials)
I am attaching a wireframe to exemplify the various web app views and will send more design docs after NDA is signed.
Notes:
- Source code will be wholly owned by us and will hold no licencing
- Source code must be written using common frameworks
- Code must be easily deployable on new devices
- You will require a raspberry pi and the reader as it will be needed for testing locally on your end
Peter C.
100% (7)Projects Completed
5
Freelancers worked with
4
Projects awarded
33%
Last project
11 Jul 2020
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies