Dongfeng Shuaike, mon ordinateur de voiture était en panne depuis deux ans, et j’ai finalement réussi à en fabriquer un : Windows 11 Arm64 + Raspberry Pi 4B.

Usine d’origine

DIY

Fonctionnalités implémentées :

  1. Le module électronique est externe, et la position d’origine de la machine a été convertie en espace de stockage
  2. L’écran est un écran capacitif de 10,1 pouces. L’écran de Weixue ne prend pas en charge lineageOS.
  3. Système Windows. En comparant Ubuntu, Rasbian et Android [un système de lignée bien connu par un groupe open source étranger], je pense que Windows 11 ARM64 fonctionne le plus fluide, et actuellement, aucun ordinateur de voiture n’utilise Windows

Modules :

  • Écran * 1
  • Raspberry Pi 4b * 2 unités : une pour l’installation du système, l’autre pour les routeurs. La version Raspberry Pi 4b 8 Go de RAM est le système d’exploitation, et la version Raspberry Pi 4b 4b 2 Go de RAM est utilisée comme routeur.
  • Module amplificateur *1
  • Les modules d’alimentation * 3 réduisent la tension de 12V de la voiture à 5V3A, alimentant respectivement la carte mère Raspberry Pi et l’écran
  • Les modules d’interrupteur utilisent le fil d’alimentation en panneau clavier

D’autres composants structurels sont tous recyclés à partir de déchets, tels que :

  • La coque de l’espace de stockage est fabriquée à partir de planches de bois restantes utilisées par les stagiaires en design industriel à l’école
  • La plaque de support du Raspberry Pi 3B est découpée à partir de chutes de feuilles d’acrylique
  • La structure de support de l’écran est réalisée en retirant l’écran d’un ordinateur portable mis au rebut

Problèmes et solutions

J’ai comparé Raspbian Arm32, Ubuntu 21.04 Arm64 et Windows 11 Arm64. Windows reste le plus fluide, mais comme Windows n’est pas officiellement publié et a été modifié à partir d’une prévisualisation par un expert étranger, il n’a pas de pilotes WiFi prédéfinis, donc il ne supporte pas les cartes réseau sans fil. Pour résoudre ce problème, j’ai flashé un routeur OpenWRT pour un Raspberry Pi avec 2 Go de RAM, connecté le WiFi au point d’accès du téléphone en mode client, l’ai connecté au port Ethernet et connecté Windows via le port Ethernet.

Mise à jour du 31.07.2021.

Bug :

Couper directement l’alimentation pendant l’arrêt provoque cela

1. Un fichier de configuration d’application Windows 11 manque

2. La carte SD OpenWRT du Raspberry Pi 3B est réglée en lecture seule, donc la prochaine fois que vous l’allumez, vous ne pourrez pas vous connecter au point d’accès du téléphone ni modifier la configuration

Tous les problèmes ci-dessus sont identifiés comme étant dus à des arrêts non sécurisés. Solutions :

1. Activez la connexion SSH avec le compte racine d’OpenWrt, en utilisant à la fois les clés publiques et privées sans mot de passe. Cela vous permet d’utiliser la commande SSH de la ligne de commande pour vous connecter sans mot de passe, adapté au traitement par lots.

2. Utiliser la commande PowerOff pour éteindre OpenWRT à distance. Au cours de la tentative, il a été constaté que le processus de fermeture d’openwrt était très long, donc un traitement par lots ultérieur a nécessité de vérifier si openwrt avait été fermé. Si vous ne vérifiez pas, Windows perdra le contrôle d’OpenWrt après l’arrêt

3. Pour vérifier si openwrt avait été fermé avec succès, j’ai utilisé la commande ping et vérifié si l’écho contenait une chaîne TTL. Si ping était possible, la chaîne d’écho contenait TTL ; si le ping était différent, TTL n’était pas inclus.

4. Après désactivation d’openWRT, le traitement par lots ferme Windows 11.

Le code du script est le suivant :

Rem @ Écho Éteint
Titre Écran d’extinction
set ip=192.168.1.1
Arrêt SSH root@ %IP %

:p
Temps mort /nobreak /t 5
ping %ip % | trouver « TTL »
if %errorlevel % == 0 (
Échec de l’arrêt de la télécommande Echo
Goto P
)

Échec de l’éteindre à distance Echo, fermeture locale immédiate
temps mort /nobreak /t 3
Arrêt /t 0 /f /s

Enfin, l’exécution par lots s’arrête et nécessite des privilèges administrateur, ce qui m’a fait perdre plus d’une heure.

Mise à jour 2022.7.30.

Récemment, une importante amélioration a eu lieu :

  1. Le Raspberry Pi4B a été remplacé par le Celeron J4125. Principalement pour obtenir un décodage haute définition pour la lecture vidéo. Le Raspberry Pi ne peut pas lire de vidéos 4K, mais le x86 tourne très bien
  2. La section gestion de l’alimentation a été remplacée par un convertisseur de puissance unifié DC12v vers DC5V. Réduit l’occupation des espaces, rationalise et ordonne, facilitant ainsi la maintenance et la gestion
  3. Quatre ports d’alimentation USB : deux pour l’unité principale et le moniteur, et les deux autres pour une extension future
  4. Un support a été ajouté sous l’écran pour éviter les bosses lors de la conduite, maintenant ainsi la stabilité de l’écran