Interface graphique en Python de contrôle pour le iRacer

Interface graphique en Python de contrôle pour le iRacer.

1) Vérification de la présence de la clé usb bluetooth :

[~] ➔ hcitool dev
Devices:
	hci0	00:15:83:4D:0E:3D

2) Scruter les périphéries bluetooth :

[~] ➔ hcitool scan
Scanning ...
	00:12:05:09:98:43	DaguCar

3) Connecter le périphérie iRacer/DaguCar :

Le code pin est : 1234

[~] ➔ bluez-simple-agent hci0 00:12:05:09:98:43
RequestPinCode (/org/bluez/2414/hci0/dev_00_12_05_09_98_43)
Enter PIN Code: 1234
Release
New device (/org/bluez/2414/hci0/dev_00_12_05_09_98_43)

Erreur :

~] ➔ bluez-simple-agent hci0 00:12:05:09:98:43
Creating device failed: org.bluez.Error.AlreadyExists: Already Exists

Solution :

Dans le gestionnaire de bluetooth, enlever les périphérique bluebooth.

Lien :

https://bbs.archlinux.org/viewtopic.php?id=141698

4) Script python de test :

Ouvrir :

ARDUINO/test.py

Ajouter :

import sys
import select
import tty
import termios
import bluetooth
import time
from evdev import InputDevice, categorize, ecodes
 
if __name__ == '__main__':
        # Mettre ici l'adresse bluetooth du iRacer
	bd_addr = "00:12:05:09:98:43"
	port = 1
	sock = bluetooth.BluetoothSocket( bluetooth.RFCOMM )
	sock.connect((bd_addr, port))

	# 0x5X for left forward. 0x51 very slow. 0x5F fastest
	sock.send('\x5A')
	time.sleep(3);
	# 0x6X for right forward. 0x11 very slow. 0x1F fastest
	sock.send('\x6A')
	time.sleep(3);
	# 0x2X for straight backward. 0x21 very slow. 0x2F fastest
	sock.send('\x2A')
	time.sleep(3);
	# 0x1X for straight forward. 0x11 very slow. 0x1F fastest
	sock.send('\x1A')
	time.sleep(3);
	#stop
	sock.send('\x00')

Action :

[~] ➔ cd IRACER/
[~/IRACER] ➔ python ./test.py 

La voiture se déplace avec un temps de pause de 3 secondes entres chaque mouvement.

5) Interface graphique en Python de contrôle :

Taper sur les touches pour effectuer les différents mouvements :

[A] = Arrêter
[Q] = Tourner à gauche
[S] = Reculer tout droit
[D] = Tourner à droite
[Z] = Avancer tout droit
[W] = Reculer à gauche
[C] = Reculer à droit

Code source : https://github.com/Nekrofage/PyIRacer

6) Lien :

http://conoroneill.net/makey-makey-raspberry-pi-iracer-bluetooth-cheese-controlled-car-ccc/

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *