Dans le même genre que Flightradar qui crowdsource la détection d'avions avec plein de récepteurs ADS-B partout dans le monde, Blitzortung.org fait la même chose pour les orages et c'est assez classe
Le problème c'est que le matos pour y participer coûte assez cher (voir sur leur site)
Je suis tombé récemment sur l'AS3935 un chip tout fait pour détecter la foudre qui communique en SPI ou I²C. La bonne nouvelle c'est qu'il ne coûte que 3$ et qu'ils donnent 3 samples gratos (livraison aussi).
On est donc plusieurs a en avoir commandé et le but serait de faire un mini réseau pour pouvoir trianguler l'endroit précis où la foudre a frappé.
En se basant sur la version breakout d'embeddedadventures un nouveau design a été crée et est disponible sur oshpark. L'ensemble des versions breakout qu'on a trouvé se base sur une même antenne créé spécifiquement pour l'AS3935: la MA5532. C'est aussi possible de commander des samples de ces antennes sur leur site en justifiant pourquoi vous voulez des samples sinon leur prix est de 1.36€/u en commandant directement chez coilcraft.
En utilisant que des samples on arrive donc a avoir une breakout board pour l'AS3935 pour moins de 3-4€ là où celles disponibles sur internet coûtent au moins 20€.
La première étape a été de recevoir les PCBs, ça a prit un peu moins d'un mois en utilisant OSHPark (qui est pas la solution la plus économique)
Les première tentative n'ont pas été très convaincante, il en résulte un chip probablement cramé.
Après avoir resouder une nouvelle version avec du matériel plus adapté (merci carlos) et passé du temps à essayer de trouver une lib Arduino fonctionelle, l'astuce était que l'addresse à utiliser en I²C était en partie définie par les pins ADD0 et ADD1 de l'AS3935 qui selon qu'il soit pull up ou pull down (pull down dans mon design) permettent de définir une adresse de deux bits (il est donc possible de controller jusque 4 AS3935 avec un microcontrolleur).
Plus qu'à attendre des orages et de calibrer l'antenne.
La première conclusion que je peux tirer des recherches supplémentaires que j'ai faites c'est que l'AS3935 est complêtement buggé. Je parlais juste au dessus de l'addresse I²C définie par deux bits par les pins ADD0 et ADD1, sur la version que j'ai créé j'ai choisis d'utiliser l'addresse 0, il se trouve que sur les 4 addresses disponibles la 0 n'est pas fonctionnelle il est impossible de lire ou écrire à cette addresse, c'est un bug connu de l'AS3935 (voir filfreak.com).
Deuxièmement lors d'une interruption il faut attendre 2ms pour que l'IC classifie le signal comme un bruit ou comme un orage, c'est assez bizarre de faire une interruption alors qu'on reçoit du bruit et c'est tout aussi bizarre de devoir attendre 2ms pour pouvoir avoir des données (voir encore filfreak.com.
Finalement parlons de la fiabilité du senseur si on regarde le papier "Design of a Low-Cost Microcontroller-Based Lightning Monitoring Device, ses chiffres son assez éclairants: pour deux stations placées à des endroits identiques, des mesures faites à un même moments ont parfois des résultats qui diffères de 2 à 3 km ou bien des mesures sont interceptées par une station mais pas par l'autre (bruit ?). Avec la portée assez faible de l'AS3935 (40km max) je pense qu'il est presque impossible d'avoir un résultat convaincant en créant un réseau de senseurs, même si le matériel individuel est relativement peu cher, il est impossible d'avoir des résultats pertinants à partir d'une station (et même sûrement une multitude connectée). Si on peut penser qu'avoir beaucoup de stations peut offrir de bon résultat, l'objectif du prix n'a plus de sens comme le prix sera directement beaucoup plus haut. Blitzortung propose des stations plus cher mais elles sont directement utilisable et pertinantes individuellement et ont une portée beaucoup plus grande (500km).