- Glider est un projet open source pour un moniteur EPD à faible latence et haut taux de rafraîchissement ; ce dépôt contient la conception matérielle et le firmware, tandis que le gateware fonctionnant sur FPGA utilise la conception open source séparée Caster EPDC
- Il prend en charge les panneaux d’affichage électrophorétiques dotés d’une interface parallèle, et peut gérer à la fois les panneaux monochromes et les écrans couleur à matrice de filtres couleur comme Kaleido
- La carte comprend un FPGA Xilinx Spartan-6 LX16, un framebuffer DDR3-800, un MCU STM32H750, une entrée USB-C DisplayPort Alt Mode ou DVI, ainsi qu’une alimentation E-paper délivrant jusqu’à 1 A de courant de crête sur des rails allant jusqu’à ±15 V
- Caster traite chaque pixel comme une zone de mise à jour indépendante et applique l’early cancellation, réduisant la latence de traitement à moins de 20 µs et visant une faible latence en modes binaire et niveaux de gris 4 tons
- La conception à faible latence exige une bande passante mémoire plus importante et de véritables interfaces vidéo à faible latence comme DVI ou DisplayPort ; dans l’exemple 1080p, l’approche Caster nécessite 540 MB/s contre 120 MB/s pour une méthode traditionnelle
Rôle de Glider et de Caster
- Glider est un projet matériel open source destiné à un moniteur EPD à faible latence
- Ce dépôt contient la conception matérielle et le code source du firmware ; le RTL exécuté sur le FPGA est la conception Caster EPDC hébergée dans un dépôt séparé
- Le README couvre non seulement Glider, mais aussi les panneaux E Ink, les formes d’onde, l’affichage couleur, le dithering et les écrans compatibles
- Les utilisateurs intéressés par l’achat de la carte peuvent consulter la page produit Modos Paper Monitor sur Crowd Supply
- Les marques et contenus liés à E Ink ne sont pas approuvés par E Ink Corporation ; ils s’appuient sur des informations publiques et des recherches internes, et peuvent donc contenir des erreurs ou des inexactitudes
Fonctionnalités principales
- Le duo Glider/Caster vise à offrir une solution complète pour un moniteur EPD à faible latence et haut taux de rafraîchissement
- Fonctions prises en charge
- Prise en charge des panneaux EPD dotés d’une interface parallèle
- Prise en charge des panneaux des familles E Ink, OED et DES
- Prise en charge des écrans monochromes et des écrans couleur basés sur CFA comme Kaleido
- Latence de traitement inférieure à 20 µs
- Modes de sortie binaire, niveaux de gris 4 tons et niveaux de gris 16 tons
- Modes de pilotage binaire et niveaux de gris 4 tons optimisés pour la latence
- Mode hybride automatique binaire/niveaux de gris 16 tons
- Possibilité pour le logiciel hôte de contrôler à l’exécution les mises à jour de zones et les changements de mode
- Dithering Bayer matériel, dithering blue-noise et dithering par diffusion d’erreur sans latence supplémentaire
- Entrée HVsync standard
- Prise en charge, au niveau carte, de l’USB-C DisplayPort Alt Mode et de l’entrée DVI
Configuration matérielle
- La carte a été conçue avec KiCad ; l’ouverture des fichiers sources peut nécessiter la dernière version stable de KiCad
- Principaux composants
- Exécution de Caster sur un FPGA Xilinx Spartan-6 LX16
- Mémoire framebuffer DDR3-800
- Entrée Type-C DisplayPort Alt Mode via un pont PTN3460 DP-LVDS
- Entrée DVI via un connecteur microHDMI et un décodeur ADV7611
- Bloc d’alimentation E-paper pour grands panneaux
- Jusqu’à 1 A de courant de crête sur des rails ±15 V
- Prise en charge de la mesure de tension VCOM kick-back
- MCU STM32H750 pour la communication USB et la mise à jour du firmware
- Débit de traitement jusqu’à 133 MP/s lorsque le dithering par diffusion d’erreur est activé
- Débit de traitement supérieur à 200 MP/s lorsque le dithering est désactivé
Structure des panneaux E Ink et des contrôleurs
- E Ink est une marque d’affichages électrophorétiques de type papier, qui fonctionnent en appliquant un champ électrique à des particules afin de créer du noir, du blanc ou des états intermédiaires
- Contrairement aux LCD, les EPD sont bistables : ils conservent leur état après suppression du champ électrique, et n’ont besoin d’être rafraîchis que jusqu’à ce que les pixels soient complètement pilotés
- Avantages et inconvénients des EPD
- Comme ils réfléchissent la lumière au lieu d’en émettre, leur consommation est faible et ils peuvent être utilisés en extérieur
- Ils conservent l’image après coupure de l’alimentation
- Par rapport aux LCD IPS modernes, ils sont défavorisés en qualité d’affichage, gamut et temps de réponse
- Dans les valeurs d’exemple, un EPD monochrome offre un contraste d’environ 17:1 et un temps de réponse d’environ 150 ms
- Un EPD couleur basé sur CFA offre un contraste d’environ 14:1, un gamut d’environ 1,5 % sRGB et un temps de réponse d’environ 150 ms
- Un contrôleur E Ink joue un rôle proche de celui d’un contrôleur d’affichage et d’un contrôleur de timing dans un système LCD, en transformant les données d’image d’origine en signaux de pilotage du panneau
- Le contrôleur choisit les tensions selon l’état actuel et l’état cible des pixels, et utilise généralement une LUT appelée waveform pour sélectionner la séquence de pilotage propre à chaque transition d’état
Panneaux avec contrôleur intégré et panneaux sans contrôleur
- Les panneaux E-paper se divisent globalement en deux catégories selon qu’ils intègrent ou non un contrôleur
- Panneaux avec contrôleur intégré
- Connexion possible à un MCU via des interfaces courantes comme SPI ou I2C
- Le bloc d’alimentation est souvent intégré, ce qui réduit le coût système
- La latence d’une mise à jour complète peut aller de 100 ms à plusieurs secondes
- Panneaux sans contrôleur
- Pilotage possible via un contrôleur dédié, un SoC intégrant un contrôleur E Ink, ou un TCON logiciel sur MCU/SoC rapide
- Les contrôleurs dédiés peuvent s’appliquer à un large éventail d’usages : IoT, liseuses, téléphones, moniteurs E Ink, voire ordinateurs portables E Ink
- Ils permettent de concevoir des architectures de pilotage rapides, mais la conception système doit garantir la faible latence
- Parmi les exemples de contrôleurs dédiés open source existants figurent Caster + Glider, le moniteur E-paper de bureau Paperback et FPGA E Ink Controller
- Caster + Glider est un contrôleur basé sur FPGA qui offre plusieurs modes de mise à jour, un traitement à très faible latence et une large compatibilité d’écrans
Waveforms et niveaux de gris
- Une waveform est une table de consultation qui détermine comment le contrôleur E Ink pilote les pixels
- Les entrées de la LUT se composent du numéro de frame, du niveau de gris de départ et du niveau de gris cible
- Le contrôleur consulte la LUT à chaque frame pour tous les pixels, puis incrémente le compteur de frames et répète l’opération jusqu’à ce que les pixels soient complètement pilotés
- Les fichiers de waveforms ne décrivent que les transitions d’un seul pixel et sont donc indépendants de la résolution
- Le dépôt fournit des outils pour travailler avec plusieurs formats de waveforms
- Conversion de
iwfversfwpour l’EPDC i.MX6/7 :./mxc_wvfm_asm v1/v2 input.iwf output.fw - Conversion de
fwversiwf:./mxc_wvfm_dump v1/v2 input.fw output_prefix - Conversion de
wbfversiwf:./wbf_wvfm_dump input.wbf output_prefix
- Conversion de
- Les panneaux E Ink et DES prennent généralement en charge jusqu’à 16 niveaux de gris avec les waveforms fournies par le vendeur
- Les niveaux de gris peuvent être produits soit en modifiant la durée des frames, soit en changeant le nombre de frames appliquées à fréquence fixe
- Dans les implémentations commerciales, le pilotage en niveaux de gris est plus lent que l’affichage noir et blanc, et peut provoquer un scintillement pendant le rafraîchissement
EPD couleur et dithering
- Les implémentations d’EPD couleur se répartissent principalement entre matrices de filtres couleur (CFA) et affichages couleur à pigments multiples
- Méthode CFA
- E Ink Kaleido, E Ink Triton et color DES relèvent de cette approche
- Le pilotage bas niveau est identique à celui d’un panneau en niveaux de gris, avec des temps de mise à jour de l’ordre de 100 à 200 ms et la possibilité d’utiliser 16 niveaux de gris
- Les 16 niveaux de gris donnent 16³ = 4096 couleurs
- Le filtre couleur a l’inconvénient d’assombrir l’écran en filtrant la lumière
- Glider/Caster prend en charge color DES, E Ink Triton et E Ink Kaleido
- Affichages couleur à pigments multiples
- Cela inclut les familles E Ink Gallery et E Ink Spectra
- Sans CFA, il n’y a ni perte de résolution ni perte lumineuse, ce qui permet une réflectance et une saturation plus élevées
- Le pilotage est plus difficile et plus lent : les Gallery de 1re et 2e génération sont présentés avec un rafraîchissement de 30 secondes, et les appareils Spectra 6 Plus avec 7 secondes
- Le dithering sert à produire de meilleures images avec un nombre limité de niveaux de gris ou en affichage binaire
- L’ordered dithering ajoute à l’image une texture ou un bruit précalculé, puis applique un seuillage
- L’error-diffusion dithering propage l’erreur d’arrondi vers les pixels voisins
- Des méthodes comme Bayer, blue-noise, Floyd-Steinberg, Stucki et Sierra sont abordées
- Sur les écrans couleur basés sur CFA, une diffusion d’erreur classique qui ne tient pas compte de la couleur des pixels voisins peut mal convenir ; le noyau peut être ajusté pour envoyer l’erreur vers des pixels de même couleur
- La correction gamma est également importante : un simple arrondi dans l’espace sRGB peut fausser le choix de la couleur la plus proche et le calcul de l’erreur
Architecture Caster/Glider
- Le gateware FPGA est divisé en plusieurs modules, et
caster.vest la conception de plus haut niveau du cœur EPDC - Le système complet de traitement d’image est construit sous
top.v, qui connecte des composants supplémentaires - Principaux domaines d’horloge
clk_vi: domaine d’horloge de la vidéo d’entrée, à la moitié du débit pixelclk_epdc: domaine d’horloge EPDC, au quart du débit pixelclk_mem: domaine d’horloge mémoire, au quart du débit de transfert mémoire
- Flux de traitement des pixels
memiflit l’état local des pixels depuis la DDR SDRAM et le place dansbi_fifo- Le flux vidéo d’entrée arrive dans
vi_fifo - Lorsque le générateur de timing local de l’EPDC prépare la sortie pixel, il extrait à la fois l’entrée vidéo et les valeurs d’état pour les traiter
- L’image d’entrée 8 bits est convertie par dithering en 1 bit et 4 bits
- En mode niveaux de gris 16 tons, une consultation de waveform est effectuée
- Le nouvel état et les valeurs de sélection de tension sont déterminés
- Le nouvel état est placé dans
bo_fifo, et la valeur de sélection de tension est envoyée à l’écran
- L’EPDC traite toujours 4 pixels par cycle d’horloge ; si la largeur de l’interface écran diffère, un rate adapter est ajouté en sortie
Fonctions du firmware MCU
- Le MCU utilise FreeRTOS et assure les fonctions de housekeeping de la carte
- Gestion de l’alimentation EPD
- Fournit l’alimentation commune, l’alimentation source et l’alimentation gate
- Ajuste la tension VCOM et mesure la tension VCOM optimale du panneau installé
- Surveillance de l’alimentation
- Surveille la tension et le courant de plusieurs rails et vérifie qu’ils restent dans les plages attendues
- Chargement du bitstream FPGA
- Le FPGA n’ayant pas sa propre mémoire flash, le MCU lui envoie le bitstream en SPI à la mise sous tension
- Le bitstream FPGA et le firmware MCU peuvent être regroupés pour une mise à jour conjointe
- Négociation USB-C
- Prend en charge l’alimentation de la carte et l’entrée vidéo via USB-C DisplayPort Alt Mode
- Signale au périphérique source, via le protocole USB PD, la fonction d’entrée vidéo
- Contrôle le mux de signaux Type-C selon l’orientation du câble
- Initialisation du décodeur vidéo
- Le FPGA n’ayant pas de désérialiseur haut débit pour se connecter directement à des interfaces vidéo rapides comme DisplayPort ou DVI, il initialise une puce décodeur dédiée
- Communication PC
- Caster peut appliquer les modes de mise à jour ainsi que les mises à jour forcées et les effacements au niveau du pixel
- Le MCU utilise TinyUSB pour fonctionner comme périphérique HID et relayer les messages entre le PC hôte et le FPGA
Méthode de pilotage à faible latence
- La méthode de pilotage de base traditionnelle utilise un compteur global pour consulter la table de waveforms, ce qui limite la réception d’une nouvelle image jusqu’à la fin de la mise à jour précédente
- Si une mise à jour prend environ 100 ms, le débit d’images est de 10 Hz, et une nouvelle image peut attendre jusqu’à 100 ms avant d’être traitée par le contrôleur
- Caster traite chaque pixel comme une zone de mise à jour indépendante
- Le logiciel n’a pas besoin de définir des zones alignées sur les limites des caractères ni de réallouer un nombre limité de zones
- Si un pixel déjà en cours de mise à jour change à nouveau, l’early cancellation est appliquée
- Il n’attend pas que le pixel soit complètement piloté
- Il pilote le pixel vers le nouvel état demandé et met à jour le compteur de frames selon le nouveau temps de pilotage calculé
- La combinaison de ces deux techniques permet de mettre en œuvre les modes binaire et niveaux de gris 4 tons à faible latence
- Caster indique que le compromis entre fréquence d’images et contraste n’est plus pertinent, et qu’il obtient automatiquement une fréquence d’images élevée et un contraste élevé
Mode hybride niveaux de gris et limites
- Caster bascule automatiquement, pixel par pixel, entre un mode binaire rapide et un mode niveaux de gris plus lent
- Lorsque l’image d’entrée change, la mise à jour se fait en mode binaire ; si l’image reste inchangée pendant un certain temps, elle est rendue à nouveau en niveaux de gris
- Cette approche exige davantage de bande passante mémoire
- Dans l’exemple d’un panneau 1080p, le calcul donne environ 120 MP/s
- La méthode traditionnelle nécessite 120 MB/s avec une lecture de 1 octet par pixel
- Caster a besoin, pour le seul buffer d’état des pixels, de 2 octets lus et 2 octets écrits par pixel, auxquels s’ajoutent 0,5 octet par pixel pour lire la nouvelle valeur d’image
- Au total, cela donne 120 MP/s × 4,5 B/pixel = 540 MB/s nécessaires
- Le matériel Glider utilise de la mémoire DDR3-800 pour les résolutions plus élevées
- Lorsque le contrôleur est situé dans le moniteur et non dans le CPU/GPU du PC, une véritable interface vidéo à faible latence comme DVI ou DP est nécessaire, plutôt qu’une interface simple mais lente comme USB ou I80/SPI
- Ces techniques n’apportent rien aux usages comme la lecture de livres, ce qui donne peu de raisons aux solutions commerciales de liseuses de les implémenter
Build et flashage
- Le PCB a été conçu avec KiCad 8.0, et le stackup 4 couches recommandé utilise des couches 1080 PP
- Build du bitstream FPGA
- Xilinx ISE 14.7 est requis
- Les systèmes d’exploitation récents ne sont pas officiellement pris en charge ; l’utilisation de la machine virtuelle RHEL officielle de Xilinx est recommandée
- Le dépôt Caster peut être récupéré avec
git clone --recursive https://gitlab.com/zephray/Caster.git COLORMODEdansrtl/spartan6/top.vse choisit parmiMONO,RGBWetDESOUTPUT_16Bdansrtl/defines.vhdoit être défini pour les panneaux 16 bits- Les kits Modos 6 pouces et 13 pouces utilisent les valeurs par défaut
MONOet 8 bits
- Build du firmware MCU
- STM32CubeIDE est requis
- Le dépôt Glider peut être récupéré avec
git clone --recursive https://gitlab.com/zephray/Glider.git - Ouvrir
Glider/fwcomme projet STM32CubeIDE pour le compiler
- Flashage
- Installer
dfu-util, puis brancher le câble USB tout en maintenant enfoncé le bouton proche du port USB - L’outil de flashage fourni utilise Python 3 et le paquet
hidapi - La méthode manuelle consiste à écrire le firmware MCU avec
dfu-util, puis à transférer le bitstream FPGA en XMODEM depuis le shell de la carte
- Installer
Écrans compatibles et limites de performances
- Le Modos Dev Kit propose des options d’écran 13,3 pouces 1600×1200 et 6 pouces 1404×1072
- La carte peut aussi piloter d’autres panneaux, mais chaque écran ayant un connecteur différent, un adaptateur est nécessaire
- La carte mère utilise des connecteurs 50 broches + 16 broches
- Un seul connecteur 50 broches suffit pour les écrans 8 bits et 16 bits
- Le connecteur 16 broches ajoute la prise en charge des écrans LVDS et des écrans 32 bits/64 bits
- Les écrans pris en charge sont limités par le protocole d’entrée, le débit de traitement et l’interface mémoire
- Débit de traitement avec dithering activé : 133 MP/s
- Débit de traitement avec dithering désactivé : 280 MP/s
- Débit estimé pour une conception 8-wide : 500 MP/s
- Débit pixel maximal DVI basé sur ADV7611 : 165 MP/s
- Débit pixel maximal DisplayPort basé sur PTN3460 : 224 MP/s
- Exemple d’interface mémoire DDR2/3-800 ×16 : 360 MP/s
- Exemples de débits pixel de crête pour des résolutions courantes
- 1600×1200 13,3 pouces 60 Hz : 125 MP/s
- 1600×1200 13,3 pouces 85 Hz : 178 MP/s
- 2200×1650 13,3 pouces 60 Hz : 232 MP/s
- 2560×1920 13,3 pouces 60 Hz : 313 MP/s
- 3200×1800 25,3 pouces 60 Hz : 364 MP/s
- Le rendu en niveaux de gris nécessite de rafraîchir l’écran à 85 Hz, fréquence de rafraîchissement prise en charge par E Ink
- La carte ne détecte pas automatiquement la résolution de l’écran connecté ; il faut la configurer manuellement dans le shell de la carte ou utiliser l’outil de génération de configuration
- Pour le calcul manuel, il est possible d’utiliser le Video Timings Calculator by Tom Verbeure
Licences et références
- La documentation est publiée dans le domaine public, à l’exception des documents de référence disposant d’une licence distincte explicite
- La conception matérielle est publiée sous CERN-OHL-S, la variante strongly-reciprocal de la CERN Open Source Hardware License
- Le code du firmware est sous licence MIT ; la bibliothèque USB PD dérive des projets Chromium OS et reclamier labs, et suit une licence BSD
- Les références incluent des ressources de rétro-ingénierie du pilotage EPD, des premiers projets DIY E Ink, un pilote niveaux de gris basé sur STM32, EPDiy basé sur ESP32, ainsi que des outils et parseurs pour le format de fichier WBF
1 commentaires
Commentaires Hacker News
Tous les contrôleurs e-ink sont médiocres, alors cette personne a décidé de corriger ça elle-même, a publié le résultat en open source hardware, et c’est désormais au niveau de l’état de l’art
J’adore vraiment ce genre de personne et de projet
Rien qu’en lisant le README, l’ampleur et la profondeur des informations sont impressionnantes
Quand ce type de ressource est publié ainsi, on a l’impression que la communauté peut produire rapidement de l’innovation et des changements de rupture
Je suis leur Discord, mais ça avance assez lentement et ils peinent encore beaucoup sur des aspects fondamentaux
C’est bien plus détaillé que je ne l’imaginais, au point d’aborder même la théorie physique de son fonctionnement
J’utilise des Kindle depuis plus de 10 ans, mais leur manque de réactivité m’a toujours agacé
Je ne sais pas si c’est un problème matériel ou logiciel, mais je suis content de voir un projet qui se concentre sur la réduction de la latence côté matériel
Je me demande si quelqu’un sait pourquoi le Kindle est un produit aussi médiocre. J’en utilise parce que l’e-ink est agréable et que le marché du livre numérique est large, mais je ne pense pas que ce soit un bon appareil en soi
Il peut faire d’autres choses, mais il n’a ni été conçu ni commercialisé pour cela, donc au lieu de chercher une révolution en matière de réactivité, ils ont gardé les coûts bas
À la place, ils ont amélioré d’autres aspects du confort d’usage, comme la prise en main, la navigation ou le rétroéclairage
Le Kindle a toujours été le point de référence des liseuses, et c’est de fait le produit e-ink le plus courant qu’on puisse acheter
Sous des angles importants d’un point de vue business, il est difficile de dire que c’est un mauvais produit
Ensuite, on peut y mettre des livres avec Calibre ou via SFTP
Certaines se déchargeaient en quelques jours malgré leur promesse d’autonomie prolongée, d’autres étaient si mal construites qu’elles tombaient en panne après quelques mois
Avec mon usage, le Kindle tient plusieurs semaines sur une charge en lisant 1 à 2 heures par jour, et comme il est étanche, je peux lire dans le bain, ce qui est précieux. Je n’ai jamais rencontré de problème particulier
L’interface semble pensée pour promouvoir l’Amazon Store, mais comme je ne l’utilise pas et que j’envoie mes livres par e-mail avant de les supprimer après lecture, ça me va
J’aimerais bien qu’il y ait des dossiers dans la bibliothèque, et qu’on puisse le brancher comme une clé USB pour organiser librement le contenu depuis un PC comme sur d’autres liseuses, mais ce n’est pas indispensable
Le Kindle est peut-être un mauvais produit, mais les autres semblent pires. Je ne connais aucune autre marque de liseuse ayant l’envergure d’Amazon, et elles donnent toutes l’impression d’être des marques chinoises obscures qui n’investissent ni dans la qualité ni dans leur réputation
Vitesse de rafraîchissement, latence, performances de calcul, réactivité : presque tout s’est amélioré
C’est un hasard amusant qu’il s’appelle Glider
Pas mal de pilotes de planeur utilisent des écrans e-ink pour leur lisibilité en plein soleil, généralement avec un Kobo ou un Kindle rooté qui fait tourner XCSoar : https://www.xcsoar.org/hardware/
Ça donne envie de savoir quelles autres technologies sont réemployées dans des moyens de transport de niche
Je m’intéressais depuis longtemps aux solutions e-ink à cause de la fatigue oculaire et de la sécheresse des yeux
Il s’est avéré que j’avais un astigmatisme très léger. L’ophtalmologue ne recommandait pas de correction, mais une fois corrigé, la sécheresse oculaire et la fatigue visuelle ont complètement disparu
Donc, indépendamment de la pratique des ophtalmologues qui imposent un seuil minimal de prescription, ça vaut la peine d’essayer de corriger un léger astigmatisme avec des lunettes pour ordinateur
J’ai un astigmatisme très léger à l’œil droit, et le fait de le corriger avec des lunettes de lecture sur mesure au lieu de simples lunettes grossissantes a complètement changé les choses en matière de fatigue oculaire et de maux de tête
Avec des lunettes bon marché, ça semblait déjà acceptable, mais j’ai été vraiment surpris de voir à quel point la différence était grande
La sécheresse oculaire et la fatigue visuelle vont souvent ensemble, et il existe même des forums consacrés à la fatigue visuelle causée par les écrans à LED
Pour ceux qui ont des problèmes similaires, ça peut valoir le détour : https://ledstrain.org/
Un grand merci à zephray d’avoir partagé en open source tout ce savoir sur l’E Ink qu’il avait en tête
Le README contient énormément d’excellentes informations sur l’e-ink ; j’en ai déjà lu une bonne partie et je pense y revenir pendant des années
C’est une ressource vraiment formidable
Je voulais depuis longtemps fabriquer, à des fins d’apprentissage, un appareil utilisant un écran e-ink, mais comme je n’ai fait que du logiciel, je ne savais pas par où commencer
Ça devrait beaucoup m’aider dans cet apprentissage
Le GitHub lié est en fait un miroir du dépôt GitLab d’origine : https://gitlab.com/zephray/glider
Je me demande si quelqu’un a étudié l’idée d’ajouter un contrôle en boucle fermée aux écrans e-ink
J’ai l’impression que le scintillement et la latence de l’e-ink viennent entièrement du fait que le contrôleur fonctionne en boucle ouverte
J’aimerais fabriquer un clone de Compact Mac avec ce genre d’écran e-ink
J’imagine à quel point ça pourrait être superbe
Cela dit, je n’ai encore jamais vu un taux de rafraîchissement e-ink capable de gérer un curseur clignotant. Avec les bons pilotes actuels, c’est peut-être possible
[1] https://engineersneedart.com/systemsix/systemsix.html
L’autonomie serait probablement de l’ordre de plusieurs semaines