Peut-être qu’aucun mot ne me fait plus peur que : « J’ai entendu dire qu’il se passe quelque chose. » D’après mon expérience, vous entendez cela lorsqu’un vilain bug s’est propagé dans la communauté et que les gens commencent à comprendre ce que c’est. Je suis toujours sur mes gardes quand j’entends parler de quelque chose comme ça, surtout quand il s’agit de quelque chose de vraiment désagréable comme le norovirus. Après tout, être prévenu est prévenu.
Comme je travaille à domicile et que je sors rarement, l’une des principales façons de me tenir au courant de l’actualité de la santé publique dans ma communauté est d’écouter ma radio scanner. J’ai programmé les fréquences locales de secours en cas d’incendie, et si « il se passe quelque chose », je le découvre généralement en premier ; après une demi-douzaine d’appels pour des personnes se plaignant de nausées et de vomissements, on se dit qu’il vaut mieux s’accroupir un moment.
J’arrive ainsi à rester raisonnablement bien informé, mais ce n’est pas comme si je pouvais écouter mon scanner à chaque minute de la journée. C’est pourquoi j’étais vraiment enthousiasmé lorsque mon ami Mark Hughes a lancé un projet qu’il a appelé Boondock Echo, qui vise à changer l’expérience utilisateur des communications radio bidirectionnelles en permettant l’enregistrement et la lecture sur Internet. Cela semblait être le système parfait pour moi – quelque chose qui permettrait à mon scanner de fonctionner pour moi, et non l’inverse. Et donc, lorsque Mark m’a demandé de participer au test bêta, j’ai sauté sur l’occasion.
Conception matérielle
Si Boondock Echo vous semble familier, c’est probablement parce que nous en avons déjà parlé plusieurs fois. Le projet a été inscrit au Hackaday Prize 2022 et a fini par remporter la 4e place cette année-là. Il existe également un projet Hackaday.io, et comme point de fierté personnelle, Mark et Kaushlesh Chandel, désormais l’architecte du firmware du projet, ont commencé leur collaboration après s’être rencontrés lors d’un Hack Chat en 2021. Nous obtenons des résultats !
Les unités de test bêta de Boondock Echo que je possède sont basées sur un kit audio AI-Thinker ESP32, une carte de développement disponible dans le commerce spécialisée pour les applications audio numériques. Ce n’était pas le premier choix de l’équipe en matière de plate-forme, loin s’en faut, et le chemin qui y mène est une leçon de choses sur les réalités souvent dures de la conception de produits. La conception originale nécessitait le même module audio que la carte de développement AI-Thinker complète, l’ESP32-A1S. Ils ont conçu un joli PCB autour de lui avec toute l’électronique d’interface nécessaire pour prendre en charge un talkie-walkie Baofeng ainsi qu’un haut-parleur de bonne qualité, et ont commandé un tas de modules ESP.
Cependant, ils ont constaté que malgré des numéros de pièces identiques, des numéros d’identification FCC et des arrangements externes, tous les modules qu’ils avaient commandés pour la première exécution ne fonctionnaient pas comme prévu. Ce n’est qu’en retirant le blindage RF des modules qu’ils en ont découvert la raison : des différences significatives dans la disposition des cartes et les composants utilisés, notamment au niveau du codec audio ES8388.
À première vue, régler tout cela a été une énorme perte de temps pour l’équipe. N’ayant aucun moyen de savoir de l’extérieur si un module fonctionnerait dans leur conception, ils ont finalement dû réduire leurs pertes et opter pour la carte du kit audio pré-construite avec une petite carte « acolyte » sur mesure qui se connecte au Baofeng. . Il s’agit d’une approche judicieuse, surtout compte tenu des circonstances, et non seulement elle leur permet d’expédier des unités fonctionnelles, mais elle leur donne également la possibilité de passer ultérieurement à une autre plate-forme plus performante.
Ils ne l’appellent pas « Easyware »
D’emblée, permettez-moi de préciser que je pense avoir été tout sauf le bêta-testeur typique, du moins du point de vue de l’équipe. Boondock Echo a été conçu principalement pour retransmettre l’audio qu’il reçoit ; c’est vrai dans le nom, après tout. La vision originale de Mark pour Boondock Echo était basée sur son expérience des incendies de forêt en Californie et des communications radio inégales qui interrompaient souvent le flux opportun des nouvelles et des ordres d’évacuation. Mais mon intérêt immédiat pour Boondock Echo est l’enregistrement des appels radio de sécurité publique à partir de mon scanner. Ainsi, plutôt que de simplement brancher le talkie-walkie pratique Baofeng qu’ils ont envoyé avec mon unité de test, j’ai dû devenir voyou et essayer mon propre truc. Parfois, il suffit de casser des choses.
Deux versions du Boondock Echo. La version de production possède un panneau avant plus joli avec des étiquettes pour les commandes.
Sous la capuche. La carte de développement du kit audio ESP32 se trouve à gauche, avec la carte audio personnalisée attachée à droite.
Boondock Echo a fait équipe avec un Baofeng, ce qui n’est pas encore le cas que j’ai testé.
Et briser les choses que j’ai faites. Malgré tous nos efforts, le premier Boondock Echo que j’ai reçu ne fonctionnerait tout simplement pas. Nous avons tout essayé : percer des trous dans mon pare-feu, désactiver mon bloqueur de publicités Pi-Hole et même configurer un point d’accès sur mon téléphone pour contourner le WiFi de mon domicile. Cette dernière tentative a réellement fonctionné, ce qui signifie qu’il y avait quelque chose de spécifique sur mon réseau qui empêchait l’enregistrement de l’appareil auprès du serveur Boondock Echo. Cela a donné lieu à de très longues conférences téléphoniques avec Mark, KC et l’architecte matériel Jesse Robinson, et je les félicite d’avoir tout essayé pour me mettre en ligne. Mais il leur fallait simplement retourner à la planche à dessin.
Les choses se sont bien mieux passées lors de la deuxième tentative. Ils m’ont envoyé une nouvelle unité avec un micrologiciel mis à jour fonctionnant essentiellement sur le même matériel, avec un boîtier mis à jour et bien amélioré. J’ai pu mettre cet appareil en ligne avec très peu d’effort ; il suffisait de modifier un fichier de configuration sur la carte SD incluse avec mes informations d’identification WiFi et de redémarrer. Cependant, le son de mon scanner – un Bearcat BCD996P2 – n’était pas enregistré. Encore une fois, l’équipe a été très professionnelle à ce sujet, participant à une conférence téléphonique avec moi et poursuivant plus tard la discussion via un chat Discord. Nous avons finalement compris que la prise de sortie de ligne de mon scanner n’émettait tout simplement pas autant de signal que la prise du haut-parleur externe Baofeng. KC est parti et a modifié le firmware pour augmenter la plage dynamique de l’entrée audio, et entre ce changement et un petit ajustement de l’atténuateur sur la carte side-kick, j’enregistrais enfin de l’audio.
Mon expérience
Au moins dans mon cas, une fois que Boondock Echo est en ligne, il n’est pas vraiment nécessaire d’interagir avec lui. Cela ne veut pas dire que vous ne pouvez pas, bien sûr : il y a des boutons sur le panneau avant qui vous permettent de contrôler le volume du haut-parleur interne, de faire défiler les clips audio enregistrés, et même un bouton Push-To-Talk qui enregistrera un clip via le micro du panneau avant pour le transmettre sur le Baofeng, si vous disposez d’une licence appropriée pour le faire. Certaines LED vous indiquent également l’état actuel de l’appareil. Ce sont toutes des fonctionnalités bien pensées, mais en pratique, j’ai trouvé que toute l’action réelle se trouve dans l’interface Web de Boondock Echo.
Pour être clair, l’application Boondock Echo ne fonctionne pas sur l’ESP32 intégré à l’appareil. Au lieu de cela, il est hébergé sur AWS, pour des raisons de sécurité et d’évolutivité à l’avenir. L’ESP32 de l’appareil prend en charge toutes les fonctions locales, comme la numérisation de l’audio, l’exécution de l’interface locale et la lecture locale de clips audio. Je trouve la conception de l’application Web plutôt bonne ; il est fonctionnel sans beaucoup de flash ni de peluches, mais toujours beau et intuitif. La page principale contient une liste de clips audio qui ont été enregistrés par votre ou vos appareils ; l’idée d’un « pack de quai » de plusieurs appareils Boondock Echo est prise en charge, pour capturer l’audio de plusieurs sources. Chaque entrée dispose d’un lecteur intégré pour vous permettre d’écouter le clip sur votre PC ou votre téléphone, ainsi que de boutons qui renvoient le clip à l’appareil Boondock Echo pour la lecture sur le haut-parleur interne ou pour la retransmission sur l’émetteur-récepteur connecté. Encore une fois, une licence appropriée est requise pour transmettre.
L’une des fonctionnalités les plus intéressantes de Boondock Echo, et celle que je souhaitais le plus tester, est la transcription en ligne des clips enregistrés. Les clips sont envoyés à l’API Whisper d’OpenAI pour transcription, et tout bien considéré, les résultats sont plutôt bons. Il y a évidemment des limites, bien sûr ; il ne semble pas que le modèle de formation de Whisper comprenne des expressions aussi accrocheuses que « vert contact patient », qui est utilisée ici lorsqu’une unité qui arrive rencontre un patient qui ne court aucun danger immédiat. La transcription de discours spécialisés comme celui-ci est inégale, avec des résultats tels que « faites face à votre contact vert » ou « Trojan 41 » pour « Engine 41 ». J’ai également remarqué qu’en cas de doute, Whisper semble être très poli, et même un peu amoureux ; il y a beaucoup de transcriptions de « Merci beaucoup » et de « Bonne journée », dont je suis raisonnablement sûr que ce n’est pas ce qui a été dit, et des « Je t’aime » occasionnels sont éparpillés, en particulier sur les chaînes où les utilisateurs ont tendance à parler beaucoup trop fort.
Cela soulève un bon point, et sur lequel l’équipe de Boondock Echo ne peut probablement pas faire grand-chose pour le moment. La qualité audio des radios de service public peut être très variée, allant de à peine audible à saturée et déformée. Certains répartiteurs parlent doucement, d’autres sont plus bruyants et plus confiants à l’antenne, tandis que les pompiers et les ambulanciers paramédicaux se retrouvent souvent dans des situations où ils ne peuvent s’empêcher d’être un peu excités. Il y a aussi ce que j’appelle des « opérateurs radio occasionnels », comme les infirmières qui parlent aux unités paramédicales sur le terrain et prennent les rapports à la radio. Ces personnes sont des professionnels de la santé sans grande formation en radio, et elles ont toutes tendance à « avaler le micro », ce qui entraîne de graves distorsions.
L’équipe espère implémenter certains algorithmes DSP pour nettoyer l’audio avant qu’il ne soit transmis à Whisper, mais cela devra peut-être attendre jusqu’à ce qu’elle apporte des modifications matérielles au Boondock Echo. Ce sera un énorme avantage pour l’une de ses fonctionnalités les plus utiles : la surveillance des mots clés. Les utilisateurs peuvent configurer des moniteurs qui analysent les transcriptions à la recherche de mots-clés spécifiques, puis effectuent une action. Dans mon cas, j’ai installé des moniteurs pour les noms des routes sur lesquelles vivent ma famille et mes amis ; s’il y a un appel d’ambulance ou de pompiers à l’adresse de mes parents, je veux le savoir instantanément. À l’heure actuelle, la notification lorsqu’un mot clé correspond est limitée à un e-mail, mais les actions futures incluront des SMS et même IFTTT, vous pouvez donc faire à peu près tout ce que vous pouvez imaginer. Tout dépend de l’exactitude de la transcription, car la correspondance avec le mot-clé doit être exacte. Ce pourrait être une bonne idée d’implémenter l’algorithme Soundex ici, ou du moins d’en faire une option.
Le hoquet mis à part, j’ai été très satisfait des performances de mon Boondock Echo, d’autant plus qu’il n’a pas été conçu pour prendre en charge mes cas d’utilisation spécifiques. Je n’en suis encore qu’au début du processus d’intégration dans mon flux de travail, mais je vois de nombreuses utilisations potentielles. Je peux imaginer utiliser cela comme base d’un réseau d’information local, pour les gens qui ne veulent pas rester assis devant un scanner toute la journée à écouter toutes les choses de routine, mais qui veulent vraiment savoir quand « le grand » arrivera. J’ai également envie d’essayer de mettre en place un répéteur simplex « store and forward » pour les expériences de radioamateur ; un Boondock Echo fonctionnant en mode hors ligne rendrait cette configuration simple.
Chapeau bas à toute l’équipe de Boondock Echo pour être passée d’une idée à un projet de travail en si peu de temps, et merci de m’avoir invité à faire le tour. J’ai hâte de voir où cela va ensuite.