Les meilleurs développeurs Python freelances sont sur Codeur.com

Programmation Raspberry/périphériques GPIO + développement UI

 Fermé·500 € à 1 000 €·7 offres·1217 vues·16 interactions


Hi,

I need full stack developer for a front end and back end program.
Python (+++), HTML (++) and CSS skills will be necessary on this project.

For Front End / UI :
please find a prototype : (you can easily cut loading and password page by clicking on it)
[URL visible pour les membres Pro]

Video background: The full-size background of the UI is a live video feed on camera 1 or 2
User can switch from camera 1 to camera 2 with the button located on the upper left corner of UI (night/day)

Range finding:
- UI show a distance (0.1-40m) on the upper right corner of the interface.
- UI adjust the size of a circle always present in the middle of the UI

UI Specificity :
- UI needs to be full screen.
- UI needs to work with the touch capability of the screen.
- UI integrates an adjustment of its light intensity.
- UI get a light and dark mode (like iPhones) changing as changing camera.
- UI buttons is 50% transparent to allow a better comprehension of the video stream.
- UI can be lock and unlock with a password.
- UI get recording button that active recording of the live video feed on a file on the raspberry destocks.
- UI get button between distance and record button (not represented in adobe XD) put on relay 2.

For Back end :
Six devices (2 relay, 1 push-button, 2 cameras, 1 rangefinder and 1 induction sensor) are wired connected to the raspberry (Pi 4B 4gb) via GPIO. There is no wireless on this project.

Virtual modes:
There is 3 modes, semi, burst or full mode is selected by positioning as bigger (like on my abode XD prototype)

Counter :
- One important variable on my project is X, X is a whole digit, print and update on the middle right of UI
It is set by the user using « + » or « - » or directly set « 17 » or « 30 » in the middle right of the UI

Push-button / relay 1 :
- UI received stat (1 or 0) position of the push button.
- When push button is pressed and UI set on semi, it send high signal from 0,2s the relay 1
- When push button is pressed and UI set on burst, it send 3 high signal from 0,2s the relay 1 (with 0,5s gap between each signal).
- When push button is pressed and UI set on full, it send high signal during 0,2s as many times that push button is kept pressed (with 0,5s gap between each signal) .
- When push button is pressed a small cross appear on the middle of the screen during 0,5s.

- For each high signal sent to relay 1, the X number is decremented from 1.
- If X=0 and push button is pressed no no signal should be sent to relay 1. For any mode (semi, burst, full).
- If induction sensor is activated and push button is pressed no signal should be sent to relay 1. For any mode (semi, burst, full).

- UI show message « R » on the lowest middle part of the screen if :
X=0 and the induction sensor=1 from more than 1s

- UI show another message « J » on the same place of the screen if :
X is no = 0 and the induction sensor=1 from more than 1s
X is no = 0 and the induction sensor=0 from more than 1s

More about devices :

Raspberry :
Model 4B, 4GB

Screen :
Tocuh screen capacitive HDMI 7inch LCD 1024 * 600 ()

Relay :
2-Channel Relay Module 5V

Cameras :
2 x 8MP IMX219 720p 60fps
1 x Multi-Camera Adapter Board V2.2

Induction sensor :
E2S-H4N1

Rangefinder :
TF02-Pro

Budget indicatif : 500 € à 1 000 €

Publication : 11 avril 2021 à 07h31

Profils recherchés : Développeur Python freelance

Le profil du client est reservé aux prestataires abonnés

Créer un compte

7 freelances ont répondu à ce projet

B

Montant moyen des devis proposés : 900 €

Estimation du délai : 9 jours

Publier un projet similaire

Chaque jour, des centaines de clients utilisent Codeur.com pour trouver un prestataire. Créez votre compte dès maintenant, remplissez votre profil et trouvez de nouveaux clients.

Trouver des nouveaux clients

Votre navigateur Web n’est plus à jour. Il ne permet pas d’afficher correctement le site Codeur.com.
Nous vous invitons à mettre à jour votre navigateur ou à utiliser un autre navigateur plus récent.