Langage et librairie
Les cartes de type SoC[1] esp32[2] peuvent être programmées en différents langages.
Les plus répandus sont :
le C
le MicroPython (http://micropython.org/)
le Lua (Lua Real Time Operating System)
Selon l'IDE[3] choisi, vous pouvez programmer vos cartes avec l'un ou l'autre de ces langages.
Le langage C reste le plus étendu en terme d'usages, et en pratique, tous les IDE[3] le propose par défaut. Il existe pléthores de librairies en C, pour de nombreux usages, protocoles de communication, extension matériel, etc.
Peut-être est-ce dû au fait qu'historiquement la communauté Arduino a beaucoup contribué à la vulgarisation d'exemples réalisés en C...
Cela étant, pour certains usages, ou pour des raisons d'optimisation, il peut être intéressant de regarder les autres langages disponibles. Si leurs possibilités sont souvent plus restreintes, les firmware sont plus légers, et moins consommateurs d'énergie.
Pour ce projet, le langage retenu est le C.
Outre les librairies standards disponibles pour la plate-forme espressif32[2], deux librairies additionnelles ont été utilisées :
DallasTemperature (Arduino Library for Dallas Temperature ICs (DS18B20, DS18S20, DS1822, DS1820))
WiFi (Enables network connection (local and Internet) using the Arduino WiFi shield)