chore: initial skeleton — NextPM sensor, JSON format, Miotiq UDP parser

This commit is contained in:
2026-04-23 00:36:19 +02:00
commit 278775e7e8
8 changed files with 649 additions and 0 deletions

90
sensors/_TEMPLATE.md Normal file
View File

@@ -0,0 +1,90 @@
# <Nom du capteur>
Remplace ce bloc par une ligne de résumé : fabricant, grandeurs mesurées, interface principale.
> Exemple : « Tera Sensor NextPM — capteur de particules PM1/PM2.5/PM10, interface UART. »
## Caractéristiques
| Paramètre | Valeur |
|--------------------------|-------------------------------|
| Fabricant / modèle | |
| Grandeurs mesurées | PM1, PM2.5, PM10 / T / HR / … |
| Plage | |
| Précision | |
| Alimentation | 3V3 / 5V, mA typique |
| Interface | UART / I2C / SPI / analogique |
| Datasheet | URL |
## Câblage
Lister **chaque fil** avec sa couleur, le pin côté capteur et le pin côté MCU de référence.
| Fil capteur | Pin capteur | Fonction | Pin MCU (exemple nRF9151) |
|-------------|-------------|----------|---------------------------|
| Rouge | 1 | VCC | 3V3 |
| Noir | 2 | GND | GND |
| … | | | |
## Protocole
- Transport : UART 115200 8N1 / I2C 100 kHz / …
- Adresse (si I2C) :
- Polarité, endianness :
### Format de trame
Décrire exactement la structure : header, champs, checksum, taille.
```
+------+-----+------+------+-----+
| HDR | CMD | LEN | DATA | CS |
+------+-----+------+------+-----+
1B 1B 1B Nb 1B
```
Checksum : algorithme exact (`256 - sum(prev) mod 256`, CRC8, CRC16 poly…).
### Commandes
| Commande | Code | Requête | Réponse (taille, champs) |
|----------|------|------------------------|-----------------------------------|
| Read X | 0x11 | `81 11 …` | `81 11 state <data> cs` |
| Sleep | 0x15 | | |
### Décodage des champs
Pour chaque donnée retournée, précise :
- Position, taille, endianness.
- Facteur d'échelle (ex. `val / 10.0` pour obtenir des µg/m³).
- Unité finale.
## Exemple de code
### Lecture (pseudo-C)
```c
// TODO
```
### Lecture (Python)
```python
# TODO
```
## Spécificités connues / pièges
-
## Références
- Datasheet : URL
- Code de référence utilisé en prod : `<repo>/src/drivers/<fichier>`
- Note d'application constructeur : URL
## Historique
| Date | Révision | Changement |
|------------|----------|-----------------------------------------------|
| YYYY-MM-DD | v1 | Création de la doc. |