Client d'escriptori en Python per a multímetres Bluetooth (com ZOYI ZT-5B / BSIDE ZT-5B). Un script que ha anat creixent per a aprofitar un dispositiu assequible i afegir-hi funcionalitats que no venien de sèrie.
- Display en Temps Real: Mostra la lectura actual en una interfície clara i de grans dimensions.
- Indicadors d'Estat: Visualitza tots els icones del multímetre (AC/DC, Auto Range, etc.).
- Normalització d'Unitats: Converteix i mostra les unitats (mV, kΩ, µF, etc.) de manera intel·ligent.
- Funcions Addicionals: Implementa
HOLD,REL(mode relatiu) iMIN/MAXper software. - Historial i Gràfica: Registra les mesures al llarg del temps i les mostra en una taula i una gràfica interactiva.
- Exportació a CSV: Guarda l'historial de mesures per a anàlisis posteriors.
La comunicació d'aquests multímetres no envia un valor numèric, sinó l'estat de cadascun dels segments del seu display LCD. Aquest programa utilitza una funció per descodificar aquestes dades i reconstruir el valor numèric i els símbols que es mostren a la pantalla del dispositiu.
-
Clona el repositori:
git clone https://github.com/teu-usuari/multimetre_dmm.git cd multimetre_dmm -
Instal·la les dependències:
pip install -r requirements.txt
-
Executa l'aplicació:
python src/dmm_client.py
PyQt6bleakpyqtgraph
Aquest projecte no seria possible sense la feina de reverse-engineering feta per altres. Al Cèsar el que és del Cèsar:
- La lògica principal de descodificació (
decode_dmm) s'ha manllevat i adaptat del repositori Bluetooth-DMM.py de Shiro-Nek0. - També s'ha utilitzat com a referència el repositori Bluetooth-DMM de ludwich66.
El projecte evoluciona sobre la marxa. Algunes idees (res escrit en pedra):
- Millorar el sistema de connexió per a seleccionar dispositius manualment.
- Empaquetar l'aplicació en un executable per a Windows, macOS i Linux.
- Afegir més opcions a les gràfiques (exportar com a imatge, etc.).
- Implementar un sistema de triggers o alertes.
Aquest projecte es distribueix sota una llicència MIT modificada. Consulta el fitxer LICENSE per a més detalls.
Aquest codi s'ofereix tal com és i no es garanteix que funcioni correctament en totes les condicions. No em faig responsable dels danys que puguin resultar de l'ús d'aquesta informació. Utilitzeu-lo sota la vostra pròpia responsabilitat. Si teniu dubtes, pregunteu.