Objectif :
Le but de cet article est de montrer les différentes étapes pour constuire le micro-logiciel (firmware) Micro-Python à partir de son code source pour le Raspberry Pico.
Continue la lecture
Compiler le micro-logiciel Micro-Python pour Raspberry Pico
Commentaires fermés sur Compiler le micro-logiciel Micro-Python pour Raspberry Pico
Publié dans Raspberry Pico
FPGA
qu’est qu’un FPGA : on a la description sur Wikipédia.
Pour appréhender la programmation FPGA, j’ai trouvé une carte qui correspond à ce que je désirais pour de la découverte.
Cette carte est une Tang nano 4K
équipée d’une prise USB-C et d’une prise HDMI et de nombreuses entrées/sorties.
L’USB permet de programmer et de déboguer sans câble spécifique. La prise HDMI est connecté au FPGA, qui une fois correctement programmé va être une sortie vidéo.
J’ai décidé de travailler sur une machine Windows.
En tout premier, on installe l’IDE qu’on trouve sur sur le site de GOWIN.
On prend la version éducation qui ne demande pas de licence.
Une fois l’IDE installé, on trouve dans le dossier d’installation, un dossier « programmer », ce dossier contient les logiciels de programmation et de debug, mais qui fonctionnent avec les câbles spécifiques de GOWIN, et on doit donc télécharger le programmer de chez Tang.
on le décompresse et on copie le dossier programmer vers le dossier d’installation de Gowin IDE afin de remplacer le dossier programmer d’origine. Dans ce dossier, il y a un dossier driver, on installe les drivers qui s’y trouvent.
Pour le premier test, j’ai utilisé un tutoriel d’un brésilien.
les premiers tests étant concluants, l’apprentissage du langage Verilog est la prochaine étape.
Commentaires fermés sur FPGA
Publié dans Développement, Hacklab
Se connecter sur le shell du Raspberry Pico en ligne de commande
Objectif :
C’est de se connecter sur le shell du Raspberry Pico via la ligne de commande Linux
Commentaires fermés sur Se connecter sur le shell du Raspberry Pico en ligne de commande
Publié dans Raspberry Pico
Compilation croisée pour Micro-Python
Objectif :
Permettre de pré-compiler le code source d’un programme en Python en bytecode spécifique à un matériel.
Le Raspberry Pico est donc notre matériel cible.
Les fichiers « .py » seront générés en « .mpy« .
Commentaires fermés sur Compilation croisée pour Micro-Python
Publié dans Raspberry Pico
ProxyJump: rebond automatique vers une machine non routée
Toto travaille sur sa machine pc-perso, il besoin de se connecter à une machine S2 située sur un autre LAN. Manque de pot, S2 a une adresse IP privée et n’est donc pas accessible depuis Internet.
Toto ne veut pas utiliser le VPN propriétaire du LAN distant soumis au CloudAct et au PatriotAct … Pour ne rien arranger, ce VPN qui coûte un bras est aussi lent et instable que sa grand-mère en rollers !
Mais Toto a la chance d’avoir un accès SSH direct à la machine S1 qui a une patte sur le LAN distant (elle est joignable par une adresse IP publique).
Toto fait donc toutes ses opérations (SSH, scp, rsync, …) par rebonds: il se connecte d’abord à S1 puis à S2 à partir de S1:
- La clé publique de toto@pc-perso DOIT être installé sur le compte toto@s1
- La clé publique toto@s1 DOIT être installés sur le compte toto@s2
Ce n’est pas très pratique pour Toto, surtout pour transférer des fichiers …
toto@pc-perso:~# ssh s1
Welcome to Ubuntu
You have new mail.
Last login: Sat Nov 26 17:05:22 2022 from xxxxxxxxxxxxx
toto@s1:~# ssh s2
Welcome to Debian
No mail.
toto@s2:~#
Un jour, Toto a ouvert la porte de son frigo et a vu la lumière: il a découvert la fonction ProxyJump d’OpenSSH !
Il s’agit d’une option qui permet de spécifier comment accéder à une machine en rebondissant par une autre:
- Toto DOIT disposer d’un compte sur les deux machines (S1 et S2),
- Toto DOIT disposer d’une clé SSH sur pc-perso,
- La clé SSH publique toto@pc-perso DOIT être installée sur les machines (S1 et S2): Toto n’a plus besoin d’une clé publique toto@s1 pour accéder à toto@s2
toto@pc-perso:~# ssh -J s1 s2
Welcome to Debian
No mail.
Last login: Sat Nov 26 17:05:26 2022 from xxxxxxxx
toto@s2:~#
Il est possible de graver ce comportement dans le marbre pour se simplifier la vie: il ne sera plus nécessaire de préciser explicitement l’option de rebond, toutes les opérations (SSH, scp, rsync, …) se feront de façon transparentes entre pc-perso et S2. Il suffit de créer/éditer le fichier ~.ssh/config sur pc-perso:
Host s2
Hostname s2
ProxyJump s1
Toto est content: il peut travailler sur S2 directement depuis pc-perso !
toto@pc-perso:~# ssh s2
Welcome to Debian
No mail.
Last login: Sat Nov 26 17:05:26 2022 from xxxxxxxx
toto@s2:~#