Orange Pi One/Lite (Tutoriel) : utiliser le GPIO en Python, broches (pinout)

Accéder aux soldes du Black Friday Amazon Black friday Banggood Black Friday Gearbest
10% de remise supplémentaire* sur les produits domotiques Xiaomi

Kits domotiques, caméras de sécurité, robot aspirateur, purificateur d'air... *Hors produits déjà en promotion

Voir le code promo
38 jours restants

L’Orange Pi dispose d’un connecteur d’extension (GPIO) de 40 broches compatible avec celui du Raspberry Pi (modèle B+). Dans ce tutoriel, nous allons installer python ainsi que la librairie pyA20 adaptée au GPIO de l’Orange Pi. Sur le papier, le connecteur est compatible, seul bémol l’appel des broches est différent ce qui impose de reprendre les programmes Python développés pour le Raspberry.  C’est un peu dommage mais le prix très attractif de la gamme Orange Pi reste un argument de poids.

Pour ce tutoriel, j’ai utilisé Armbian installé sur un Orange Pi Lite (version Wi-Fi). Le GPIO est le même sur toute la gamme Orange Pi à l’exception de l’Orange Pi Zero qui possède un GPIO 26 broches.

Installation de Python et des librairies

Commençons par préparer l’environnement en installant Python

Puis installer la librairie python pyA20

Maintenant nous avons besoin d’installer la librairie qui permet de gérer le GPIO de l’Orange Pi. Placez vous dans votre dossier Home (par exemple /home/pi) puis clonez la librairie pyH3 (https://github.com/duxingkei33/orangepi_PC_gpio_pyH3). C’est une adaptation faite par Duxingkei Chow de la librairie “python control orangepi_PC ext GPIO ALLwinner H3” basée sur la librairie “pyA20 0.2.1”.

Entrez dans le répertoire de la librairie

Et lancez l’installation (il est préférable de faire précédent la commande par un sudo si vous n’êtes pas connecté en root).

Correspondance des broches du GPIO entre l’Orange Pi et le Raspberry Pi (modèle B+)

Comme je l’ai précisé dans l’introduction, le connecteur d’extension est compatible avec celui des Raspberry modèles B+ (40 broches). Le repérage est toutefois différent.

Raspberry Pi Orange Pi Broche

(colonne gauche)

Broche

(colonne droite)

Orange Pi Raspberry Pi
3V3 1 2 +5V  +5V
GPIO2

SDA1 I2C

PA12 3 4 +5V  +5V
GPIO3

SCL I2C

PA11 5 6 GND GND
GPIO4 PA6 7 8 PA13 GPIO14

UART_TXD

GND GND 9 10 PA14 GPIO15

UART_RXD

GPIO17 PA1  11 12 PD14 GPIO18

PCM_CLK

GPIO27 PA0  13 14 GND GND
GPIO22 PA3  15 16 PC4 GPIO23
3V3 3V3  17 18 PC7 GPIO24
GPIO10

SPI0_MOSI

PC0 19 20 GND GND
GPIO9

SPI0_MISO

PC1 21 22 PA2 GPIO25
GPIO11

SPI0_SCLK

PC2 23 24 PC3 GPIO8

SPI0_CE0_N

GND GND 25 26 PA21 GPIO7

SPI0_CE1_N

ID_SD

I2C ID EEPROM

PA19 27 28 PA18 ID_SC

I2C ID EEPROM

GPIO5 PA7 29 30 GND GND
GPIO6 PA8 31 32 PG8 GPIO12
GPIO13 PA9 33 34 GND GND
GPIO19 PA10 35 36 PG9 GPIO16
GPIO26 PA20 37 38 PG6 GPIO20
GND GND 39 40 PG7 GPIO21

Tout comme sur le Raspberry Pi, la tension de sortie est de 3,3V.

Enfin dernière différence (et pas des moindres !), le connecteur est tourné de 180 degrés par rapport à celui du Raspberry. Autant dire qu’il faudra obligatoirement avoir recours à un connecter pour breadboard avec une nappe souple si on veut relier l’Orange à une breadboard (breakout)  de branchement

Allumer une Led en Python

Pour ce premier tutoriel sur le GPIO de l’Orange Pi, on va pas aller bien loin. De toute façon c’est exactement la même chose que pour le Raspberry. Il n’y a que l’appel des broches qui diffère.

Créez un nouveau fichier. Par exemple test.py

Collez le code suivant et enregistrez avec Ctrl+X puis Y. Ce code est très simple, il allume durant 2 secondes une Led branchée sur la broche PG7 (équivalente au GPIO21 du Raspberry). Reliez une Led sur la broche PG7 (la dernière de la colonne droite) à un GND par l’intermédiaire d’une résistance 220Ω.

On rend le script exécutable

Si vous n’êtes pas connecté en root, il faut faire précéder la commande python d’un sudo (le mot de passe vous sera demandé).

Si le câblage est correct, la Led doit s’allumer durant 2 secondes.

orange pi one lite raspberry gio python

Voilà, vous avez maintenant tout ce qu’il vous faut pour utiliser le GPIO de l’Orange Pi. C’est dommage que les appels soient différents. Les programmes existants ne seront pas directement utilisables. Autre regret, la rotation du connecteur qui rend l’utilisation des cartes HAT beaucoup moins pratique (et compact !)

Tableau de comparaison des modèles Orange Pi

  • Modèle
  • SoC
  • RAM
  • Stockage eMMC
  • Ports USB
  • GPRS (2G)
  • WiFi
  • Bluetooth
  • Certifié CE/FCC
  • Connecteur (!non compatible Raspberry Pi)
  • Accessoires
  • Meilleur prix

Inscrivez-vous à la newsletter hebdomadaire

Aucun spam et aucun autre usage ne sera fait de votre email. Vous pouvez vous dés inscrire à tout moment.

Comparateur de prix

Bons plans

Les offres suivantes se terminent bientôt. Utilisez le coupon indiqué pour profiter du prix promo

Projets DIY - Domotique et objets connectés à faire soi-même