Distribution Linux : LUbuntu 22.04.5 LTS
Téléphone portable : Motorola G34 5G
I/ Sur le smartphone, activation du mode "développeur".
- Appuyer sur l'icône : Paramètres
- Aller en bas de la page et appuyer sur le menu : A propos du téléphone
- Sélectionner le menu : Identifiants de l'appareil
- Répérer le menu : Numéro de build Et appuyez sur le menu 7 fois jusqu'à ce que le message : «Vous êtes maintenant un développeur !» apparaît.
II/ Activation du débogage via l'USB.
-
Appuyer sur l'icône : Paramètres
-
Sélectionner le menu : Système
-
Sélectionner le menu : Options développeur Ce menu apparaît uniquement si le smartphone est en mode "développeur".
-
Activer l'option : Débogage USB Il se trouve dans le section "Débogage".
III/ Installation de Termux et de Termux:API.
1/ Télécharger l'application "F-Droid" :
2/ Via le store "F-Droid", télécharger l'application "Termux" :
https://f-droid.org/fr/packages/com.termux/
Ainsi que "Termux:API" :
https://f-droid.org/fr/packages/com.termux.api/
3/ Lancer l'application "Termux" et taper la ligne de commande suivante pour installer Termux:API :
~ $ pkg install python termux-api
4/ Vérifier si tout est bien installé :
~ $ which termux-sensor
5/ Vérifier si le accéléromètre et le gyroscope sont présent :
~ $ termux-sensor -l
6/ Teste de 3 mesures gyroscopiques :
termux-sensor -s gyroscope -n 3
IV/ Connexion du smartphone à l'ordinateur.
1/ Connecter le smartphone à l'ordinateur via un câble USB.
Le câble doit être un câble de donnée et pas uniquement de charge.
Sur le smartphone, une notification apparaît, l'ouvrir.
2/ Dans la zone "Utiliser la connexion USB pour", cliquer sur le menu : Transfert de fichiers
V/ Sur l'ordinateur, installation de l'outil ADB.
1/ Installer l'outil ADB.
sudo apt install adb
2/ Tests.
- Tuer le serveur :
util01@station40:~$ adb kill-server
cannot connect to daemon at tcp:5037: Connection refused
util01@station40:~$
- Puis le redémarrer :
util01@station40:~$ adb start-server
* daemon not running; starting now at tcp:5037
* daemon started successfully
util01@station40:~$
- Lister les devices attachés :
util01@station40:~$ adb devices -l
List of devices attached
ZY32KDR97N device usb:2-1.8 product:fogos_gen model:moto_g34_5G device:fogos transport_id:1
util01@station40:~$
- Afficher la version de Termux :
util01@station40:~$ adb shell dumpsys package com.termux | grep -E 'versionName|versionCode|installerPackageName'
versionCode=1002 minSdk=24 targetSdk=28
versionName=0.118.3
installerPackageName=com.google.android.packageinstaller
util01@station40:~$
- Vérifier si Termux et Termux:API sont installés :
util01@station40:~$ adb shell
fogos:/ $ pm list packages | grep termux
package:com.termux
package:com.termux.api
fogos:/ $
- Lancer Termux :
util01@station40:~$ adb shell am start -n com.termux/.app.TermuxActivity
Starting: Intent { cmp=com.termux/.app.TermuxActivity }
L'application s'ouvre automatiquement sur le smartphone.
VI/ Connexion ssh.
1/ Sur le smartphone.
- Identifier l'utilisateur :
~ $ whoami
u0_a467
- Lancer le serveur ssh :
~ $ sshd
2/ Sur l'ordinateur :
- Lister les devices attachés :
util01@station40:~$ adb devices -l
List of devices attached
ZY32KDR97N device usb:2-1.8 product:fogos_gen model:moto_g34_5G device:fogos transport_id:2
192.168.1.21:5555 device product:fogos_gen model:moto_g34_5G device:fogos transport_id:3
util01@station40:~$
- Effectuer une redirection de port :
util01@station40:~$ adb -s ZY32KDR97N forward tcp:8022 tcp:8022
- Connexion en ssh :
util01@station40:~$ ssh -p 8022 u0_a467@127.0.0.1
u0_a467@127.0.0.1's password:
Welcome to Termux!
Docs: https://termux.dev/docs
Donate: https://termux.dev/donate
Community: https://termux.dev/community
Working with packages:
- Search: pkg search <query>
- Install: pkg install <package>
- Upgrade: pkg upgrade
Subscribing to additional repositories:
- Root: pkg install root-repo
- X11: pkg install x11-repo
For fixing any repository issues,
try 'termux-change-repo' command.
Report issues at https://termux.dev/issues
~ $
- test le gyroscopique :
Depuis le smartphone, lancer la commande et faire bouger le smartphone.
~ $ termux-sensor -s gyroscope -n 3
{
"icm4x6xa Gyroscope Wakeup": {
"values": [
-0.14021532237529755,
0.14727269113063812,
0.1724395453929901
]
}
}
{
"icm4x6xa Gyroscope Wakeup": {
"values": [
0.04740423336625099,
-0.3419496417045593,
0.18429060280323029
]
}
}
{
"icm4x6xa Gyroscope Wakeup": {
"values": [
0.1038632020354271,
0.054328445345163345,
0.02330264262855053
]
}
}
~ $
- Depuis l'ordinateur, afficher les données du gyroscope :
util01@station40:~$ ssh -p 8022 u0_a467@127.0.0.1 "termux-sensor -s gyroscope -n 10"
u0_a467@127.0.0.1's password:
{
"icm4x6xa Gyroscope Wakeup": {
"values": [
0.8174566626548767,
-1.596430778503418,
0.2420811653137207
]
}
}
{
"icm4x6xa Gyroscope Wakeup": {
"values": [
0.05592634156346321,
-0.02450106292963028,
-0.0037284228019416332
]
}
}
{
"icm4x6xa Gyroscope Wakeup": {
"values": [
-0.043276336044073105,
0.1129179447889328,
0.02024000883102417
]
}
}
VII/ Procédure pour se connecter en ssh sans taper le mode de passe.
- Générer une clé publique :
util01@station40:~$ ssh-keygen -t ed25519 -C "util01@station40"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/util01/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/util01/.ssh/id_ed25519
Your public key has been saved in /home/util01/.ssh/id_ed25519.pub
...
- Copier la clé publique sur le smartphone :
util01@station40:~$ ssh-copy-id -p 8022 u0_a467@127.0.0.1
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/util01/.ssh/id_ed25519.pub"
...
Now try logging into the machine, with: "ssh -p '8022' 'u0_a467@127.0.0.1'"
and check to make sure that only the key(s) you wanted were added.
- Test de connexion ssh :
util01@station40:~$ ssh -p 8022 u0_a467@127.0.0.1
Welcome to Termux!
...
Report issues at https://termux.dev/issues
~ $
VIII/ Interface graphique d'affichage des données du senseur gyroscopique.
- Affichage des données du senseur gyroscopique dans un terminal :
https://github.com/HackTechDev/smartphone_gyro_python/blob/master/gyro.py
- Affichage des données du senseur gyroscopique dans une interface graphique :
https://github.com/HackTechDev/smartphone_gyro_python/blob/master/gyro_gui.py
- Déplacement de la fenêtre :
https://github.com/HackTechDev/smartphone_gyro_python/blob/master/gyro_tk_move.py