Ce billet est tout comme une vidéo de type "mailbag" omniprésente sur YouTube, mais sans un flux vidéo et sans bande sonore. En l'espace de quelques jours, j'ai reçu de fournisseurs très éloignés, cinq cartes micro SD de 8Go, deux HAT Pi ReSpeaker 2-Mics et un routeur Xiaomi Mi WiFi 3G. Voici mes premières impressions de ce nouveau matériel.
Table des matières
- Cartes micro SD
- Pi Hat ReSpeaker 2-Mics
- Router Xiaomi Mi WiFi 3G
Récemment, j'ai
testé certaines cartes micro SD Verbatin d'une
capacité de 16Go et j'ai été déçu des résultats. Les informations trouvées
sur le Web, lors de la recherche d'un logiciel de test, insinuaient que le
marché était inondé de cartes bon marché de qualité douteuse qui
n'atteignaient pas les vitesses de lecture et d'écriture annoncées. Pire,
certaines cartes n'avaient apparemment même pas la capacité déclarée. Je me
sentais un peu penaud parce que je venais tout juste de commander des cartes
micro SD arborant une marque inconnue, du moins ici. J'étais prêt à faire une
croix sur cet achat en pensant que je les méritais pour avoir essayé de
gratter quelques sous.
F3 (Fight Flash Fraud ou Fight Fake Flash, soit
la Lutte contre la fraude Flash ou la Lutte contre les faux Flash) peut être
installé avec Synaptic ou avec l’ utilitaire Apt habituel . La documentation sous forme de pages
man pages est installée avec les programmes, mais les
informations en ligne à readthedocs sont plus digestes. Les utilisateurs de
Windows pourraient essayer h2testw. Voici des résultats représentatifs des tests
d'écriture et de lecture effectués sur les cinq cartes.
ATTENTION: toutes les données du disque testé risquent d'être perdues! Le test dure assez longtemps.
Ces résultats obtenus avec chacune des cinq cartes ne sont pas aussi mauvais que je le craignais. Il ne semble y avoir aucun problème de capacité et ces cartes sont vraiment de classe 10 bien que la vitesse de lecture soit nettement inférieure aux cartes Verbatim. Vu la vitesse d'écriture, ces cartes BiNFUL seraient meilleures dans un appareil photographique, mais je n'ai pas testé cela. Actuellement, j'utilise une des cartes sans aucun problème dans mon Raspberry Pi 3.
Les cartes sont livrées avec des adaptateurs pour lecteurs de cartes SD de taille normale. Ils semblent plus fragiles que ceux fournis avec les cartes de Verbatim. Cependant, la carte micro glisse parfaitement dans l'adaptateur et ce dernier s'insère bien dans le lecteur de carte SD sur mon ordinateur de bureau. Aucune plainte ici non plus.
Bien sûr, seule l'utilisation à long terme dira si ces cartes sont fiables. Néanmoins, j'ai commandé quelques cartes supplémentaires de 8Go ainsi que des cartes 16Go du même fournisseur et en espérant ne pas le regretter plus tard.
Produit: Carte micro SD de BiNFUL 8Go, Classe 10
Commandé: 2018-01-30
Reçu: 2018-03-13
Coût: 5.48 $CDN/pièce, livraison gratuite
Source: Boutique BESTHINKING sur AliExpress
La principale source d'informations lorsque j'ai configuré Google Assistant avec un Orange Pi Zero et DietPi était un article de CNXSoft. J'avais alors été surpris que l'on se soit servi d'un microphone USB à la place du microphone intégré que j'ai trouvé tout à fait adéquat. Je devrais souligner que CNXSoft avait tout de même donné des instructions pour l'utilisation du microphone intégré. Plus tard, quand j'ai voulu faire de la reconnaissance vocale sur un Raspberry Pi, j'ai décidé d'essayer le même type de microphone USB. Malheureusement, la performance était inacceptable. Je me suis donc tourné vers le HAT Pi ReSpeaker 2-Mics de seeed, qui semblait offrir une solution intéressante. La carte de la même taille qu'un Raspberry Pi Zero a un prix raisonnable, mais les frais d'expédition sont presque une fois et demie le prix de la carte semblent exagérés, étant donné qu'il a fallu plus de 7 semaines pour que le produit arrive dont presque un mois pour parvenir au Canada par avion! Cependant, les trois longues semaines pour acheminer le colis à l'intérieur du pays sont probablement attribuables à ma faute, car il semble que j'avais inséré un chiffre de trop dans le code postal.
Installation du pilote
Après l'installation et la mise à jour de Raspbian (Stretch, version serveur) sur une nouvelle carte micro SD de 8 Go, j'ai suivi les instructions sur le site seeed pour installer les pilotes ce qu'il faut faire manuellement.
J'ai ensuite éteint le Raspberry Pi, connecté le "casque" ReSpeaker et branché un ensemble de haut-parleurs alimentés à la prise 3,5 mm sur le chapeau et un autre ensemble de haut-parleurs alimentés à la prise 3,5 mm sur le Raspberry Pi.

Après la mise sous tension et le démarrage d'une session ssh,
la vérification que l'installation avait été faite correctement était
facile. Il suffit d'afficher les dispositifs de capture et de lecture
de sons.
Il n'y a qu'un seul périphérique de capture, les deux microphones du ReSpeaker, qui est la carte 1 selon ALSA. Il y a trois périphériques de lecture. Deux sont sur la carte 0 qui est la sortie audio du Raspberry Pi. Ce sont la sortie analogique de 3,5 mm (appareil 0) et la sortie numérique HDMI (appareil 1). La carte 1, le ReSpeaker, a un appareil, le DAC du WM8960 connecté à la prise de 3,5 mm.
Si vous faites le test audio suggéré
wav
puis en le rejouant.
alsamixer dans
une session ssh parallèle avant d'entendre quoi que ce soit.
De Lex, j'ai appris que la "... configuration alsa [fichier /etc/asound.conf] utilise le plugin dmix et le plugin dsnoop pour que plusieurs applications puissent lire et enregistrer simultanément". Voici le contenu du fichier.
Comme on peut le voir, la carte 1, le ReSpeaker, est définie à la fois
comme périphérique de capture par défaut et périphérique de lecture par
défaut. L'option -D hw:1 n'était donc pas
nécessaire dans les exemples d'enregistrement et d'affichage ci-dessus.
Test des DEL embarquées
Il y a 3 DEL RGB, de type APA102, sur la carte. Celles-ci sont branchées
sur un bus SPI. Pour les tester, j'ai activé le bus SPI avec
raspi-config et ensuite installé un autre dépôt git
à partir de seeed et les liaisons Python du bus
SPI.
La commande mkvenv crée et met à jour un environnement
virtuel Python 3, alors que ve l'active. Ceci est documenté dans
un billet précédent : Environnements virtuels Python 3 (en anglais).
Utiliser Google Assistant
En décembre de l'année dernière, l'un des développeurs travaillant sur Google Assistant (GA) basé sur le Raspberry Pi était plutôt négatif pour ce qui est de l'utilisation des "HAT" ReSpeaker. Je pense que qu'il était trop pessimiste. J'ai réussi à faire fonctionner GA. Comme avant, je n'entrerai pas dans les détails fastidieux de la création d'un projet et de l'obtention des informations d'identification appropriées d'un projet Google. D'une part, il s'agit d'une cible mouvante, car Google modifie souvent le SDK et les étapes requises pour l'enregistrement et l'accès aux projets. Il suffit de dire que j'ai suivi les instructions de Configure a Developer Project and Account Settings. Voici les informations sur le projet que j'ai créé sur le site:
Project name: ga-Respeaker2Il est étrange que notre appareil Google Home bricolé doive être affublé d'un type de dispositif qui ne peut correspondre qu'à un actionneur. C'est l'une des nouveautés de cette nouvelle version du SDK. L'ID du modèle du dispositif a été proposé par la console du projet et est clairement composé de l'ID du projet, du nom du produit et d'un code aléatoire. Je n'ai pas pris la peine d'essayer de le changer. Les deux éléments en gras sont nécessaires plus tard.
Project ID: ga-respeaker2
Product name : mics
Manufacturer name : macomp (jamais utilisé)
Device type: Light (ne pas définir de traits)
Device model ID: ga-respeaker2-mics-cab8un
Un couple de paquets (bibliothèques de développement) doit être installé dans le système avant que les bibliothèques Python ne soient ajoutées à l'environnement virtuel Python.
Cela devrait compléter l'installation; il est maintenant possible
d'essayer d'utiliser Google Assistant. Notez qu'un
fichier .asoundrc local n'a pas été créé. Pour être franc, j'en
ai fait un suivant les instructions du SDK, mais cela n'a abouti qu'au
silence plutôt qu'à une sortie audio. Il m'a fallu du temps pour comprendre
que je devais me débarrasser de ce fichier de configuration. Ce qui m'a
finalement aidé était d'essayer de lancer le programme
googlesamples-assistant-audiotest. Comme on peut le voir
ci-dessous, rien ne fonctionnait lorsque le fichier de configuration était en
place.
J'ai enlevé le fichier de configuration puis j'ai redémarré le Raspberry Pi et alors le programme a fonctionné.
Une fois le test googlesamples-assistant-audiotest réussi,
j'ai utiliser deux des applications installées:
google-assistant-demo qui utilise la détection de mots-clés
(OK Google) pour lancer une conversation et
googlesamples-assistant-pushtotalk où la conversation est lancée
en appuyant sur la clé Entrée.
Comme on peut le voir, les deux ont fonctionné quoique différemment. Tout
d'abord google-assistant-demo est évidemment lié à mon compte
Google Home ce qui explique pourquoi la sortie était
en français. On peut interroger GA en anglais ou en français et d'obtenir une
réponse correcte. Ce bilinguisme m'a surpris, alors j'ai vérifié et le
Google Home mini répond aussi en français aux
questions posées en français et en anglais. De plus, mes règles IFTTT peuvent
être invoquées (voir Google Home Mini avec
Domoticz par l'entremise de IFTTT) mais, bien sûr, uniquement dans la
langue dans laquelle les règles sont écrites.
googlesamples-assistant-pushtotalk. Comme le
montre la suite, cet assistant est multilingue.
Par défaut, googlesamples-assistant-pushtotalk n'a pas
détecté les paramètres de langue de mon compte Google Home, comme indiqué
ci-dessus. Cependant, si je spécifie un paramètre de langue, il se comporte
plus comme google-assistant-demo.
Il est possible d'invoquer les règles IFTTT configurées pour utilisation avec Google Home.
L'autre application testée,
googlesamples-assistant-pushtotalk, est unilingue. Pour des
raisons insondables, les caractères de soulignement dans les noms de
paramètres de ligne de commande ont été remplacés par des tirets :
google-assistant-demo: --device_model_id --project_id
googlesamples-assistant-pushtotalk: --device-model-id --project-id
Il y avait aussi des différences avec les niveaux sonores que je n'ai pas
encore eu le temps d'examiner.
C'est un bon début. Je pense qu'il sera possible de créer quelque chose d'utile avec ce dispositif. Puisque j'ai acheté deux "HAT" (pour amortir les frais de port), le montant investi est suffisant pour me motiver à les utiliser.
Produit: ReSpeaker 2-Mics Pi HAT v1.0
Commandé: 2018-01-17
Reçu: 2018-03-09
Cost: 9,90 $US x 2 + 14,08 $US frais de port = 43,37 $CDN
Source: seeed
Il y a quelque temps, j'ai remplacé le micrologiciel d'un vieux routeur Rosewill 300M Wireless N (de fait un TP-Link TL-WR841N / ND v7) avec OpenWrt 15.05.1. Plus tard, je l'ai mis à jour à LEDE 17.01.4 (qui était alors une fourche, mais est maintenant fusionnée de nouveau avec OpenWrt). À l'époque, je rêvais de lancer Domoticz sur le routeur. J'ai plus ou moins abandonné quand j'ai réalisé qu'il n'y avait tout simplement pas assez de mémoire flash.
Quand j'ai vu que le router Mi WiFi 3G de Xiaomi avait 128 Mo de mémoire flash et 256 Mo de RAM et que certains avaient réussi à remplacer son micrologiciel en langue chinoise par OpenWrt, j'ai décidé d'en acheter un dans le but de réaliser le projet de faire fonctionner Domoticz sur un routeur.
Pour l'instant, le logiciel domotique n'est pas installé même si, j'ai réussi à remplacer le micrologiciel OpenWrt. Alors qu'on s'efforce pour ajouter un paquet Domoticz/Open-ZWave à OpenWrt mais il n'est pas encore disponible pour installation automatique. Je vais attendre un peu avant de revenir vers ce projet.
Si vous essayez d'installer OpenWrt sur le routeur ou même simplement de le configurer, je vous suggère d'utiliser le navigateur Web Chromium de Google, en raison de son mécanisme de traduction intégré (ou d'installer quelque chose d'équivalent dans votre client Web préféré). En outre, vous trouverez que l'application Android est en anglais, et probablement l'application IOS aussi. Voici quelques références pour expliquer comment procéder. Elles sont toutes en anglais sauf les deux premières qui sont en langue chinoise.
Product page
Product FAQ
Hardware Device Wiki
How to Flash Xiaomi Mi WiFi 3G Router Firmware
LEDE - MiWiFi 3G - UniFi Ready
LEDE Project Forum - Xiaomi WiFi Router 3G
OpenWrt - Xiaomi Mi WiFi R3G
OpenWrt - Image files for the ramips/mt7621 target
Voici un peu d'information supplémentaire qui pourrait être utile. À un moment donné, vous devez télécharger la version développeur du microprogramme du routeur. Les instructions disent de le chercher à http://www.miwifi.com/miwifi_download.html mais il semble maintenant être trouvé sur http://www1.miwifi.com/miwifi_download.html. Voici les liens directs vers les micrologiciels de Xiaomi:
Version stable du ROM de R3G
Version 2.26.3 (8 novembre 2017)
http://bigota.miwifi.com/xiaoqiang/rom/r3g/miwifi_r3g_firmware_0a271_2.26.3.bin
Version de développement du ROM for R3G
Version 2. 25. 122 (24 août 2017)
http://bigota.miwifi.com/xiaoqiang/rom/r3g/miwifi_r3g_firmware_c2175_2.25.122.bin
J'ai eu du mal à obtenir un autre fichier nécessaire:
miwifi_ssh.bin. Je ne suis pas trop comment j'ai enfin
réussi. Il fallait ouvrir un compte en utilisant l'application
Android/IOS et je pense qu'il était nécessaire d'utiliser le routeur
lui-même pour se connecter au Web. Si je me souviens bien, j'utilisais
Chromium et Firefox en même temps. Peut-être que les choses seraient
plus simples sur un ordinateur Windows.
Depuis que LEDE et OpenWrt sont fusionnés, les deux fichiers constituant le micrologiciel à installer sur le routeur ont été renommés :
lede-ramips-mt7621-mir3g-squashfs-kernel1.bin
==> openwrt-ramips-mt7621-mir3g-squashfs-kernel1.bin
lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin
==> openwrt-ramips-mt7621-mir3g-squashfs-rootfs0.bin
J'ai trouvé que les radios n'étaient pas activées et même pas définies
après le téléversement de OpenWrt. Bien qu'il existe des instructions sur la
façon de définir les interfaces WiFi, la solution la plus simple s'est avérée
être l'installation de LuCI, puis la mise à niveau du microprogramme OpenWrt. Il s'agit d'une simple
procédure de pointage et de clic dans l'interface graphique Web
d'administration du routeur à l'adresse http://192.168.1.1. Le fichier de
mise à niveau s'appelle
openwrt-ramips-mt7621-mir3g-squashfs-sysupgrade.tar. Ne vous
inquiétez pas qu'il ne soit pas nommé *-sysupgrade.bin. Comme
confirmé dans
le
forum, l'utilitaire sysupgrade gérera correctement
l'archive tar.
Produit: Router MiWiFi 3G de Xiaomi
Commandé: 2018-02-21
Reçu: 2018-03-01
Coût: 45,67 $US frais de port inclus, soit 59,73 $CDN.
Source:
Gearbest,
Banggood,
AliExpress.