Via bluetooth, ces commandes doivent être envoyées sous forme binaire
Via USB et Wifi, ces commandes doivent être envoyées sous forme de chaînes hexadécimales
Consultez également l'ancienne documentation API Decent Scale. Half Decent Scale est compatible avec cet ensemble de commandes, mais ajoute un nombre important de nouvelles commandes
Une bibliothèque Python est également disponible
La nouvelle fonctionnalité « heartbeat » résout les problèmes de connectivité avec Android 9 et les versions antérieures.
Commandes que HDS peut recevoir (v2.5.8)
03 0F TARE (avec somme de contrôle)
(veuillez lire la remarque ci-dessus concernant la fonction de heartbeat)
03 0A 00 Turn off oled
03 0A 01 Turn on oled
(veuillez lire la remarque ci-dessus concernant la fonction de heartbeat)
03 0A 02 Power off
03 0A 03 00 Exit power mode, normal oled brightness
03 0A 03 01 Enter power mode, lowest oled brightness
03 0B 00 Timer stop
03 0B 02 Timer reset
03 0B 03 Timer start
03 1A 00 Manual Calibration
03 1A 01 Smart Calibration
03 1B WiFi OTA
03 1D 00 Set sample to 1
03 1D 01 Set sample to 2
03 1D 02 Set sample to 4
03 1E 00 00 Hide Menu
03 1E 00 01 Show Menu
03 1E 01 00 Hide About info
03 1E 01 01 Show About info
03 1E 02 00 Hide debug info
03 1E 02 01 Show debug info
03 1F Reset
03 20 00 Disable Weight via USB
03 20 01 Enable Weight via USB
03 22 Send Battery voltage data once
data = modelByte;
data = 0xCE; // Type byte for weight stable
data = weightByte1;
data = weightByte2;
data = 0x00;
data = 0x00;
data = calculateXOR(data, 6); // Last byte is XOR validation
data = modelByte;
data = 0xAA; // Type byte for weight stable
data = buttonNumber;//1 for O button, 2 for ▢ button
data = buttonShortPress;//1 for short press, 2 for long press
// Fill the rest with dummy data or real data as needed
data = 0x00;
data = 0x00;
data = calculateXOR(data, 6); // Last byte is XOR validation
data = modelByte;
data = 0x2A;
data = buttonNumber;
data = buttonShortPress;
data = 0x00;
data = 0x00;
data = calculateXOR(data, 6); // Last byte is XOR validation
data = modelByte;
data = 0x22;
data = voltageByte1;
data = voltageByte2;
data = 0x00;
data = 0x00;
data = calculateXOR(data, 6); // Last byte is XOR validation
Vous pouvez connecter un câble USB-C et utiliser un programme tel que Serial avec les paramètres 115200,8,N,1 pour observer le fonctionnement de la balance. Cela facilite considérablement le débogage.
#programmeur #api #bluetooth #wi-fi #usb