Cours:NanoPi : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(NodeHat Oled)
(NodeHat Oled)
Ligne 120 : Ligne 120 :
 
return msg
 
return msg
 
</source>
 
</source>
* S'inspirer des codes donnés dans le dossier python de la lib.
+
* S'inspirer des codes donnés dans le dossier python de la lib [https://github.com/friendlyarm/NanoHatOLED.git NanoHatOLED.git]

Version du 11 mars 2020 à 17:29


Installation

image et installation minimum

apt update / apt dist-upgrade
apt install build-essential apt-utils
apt install mosquitto-clients
apt install aptitude htop
apt remove modemmanager

cross QT

As usual !

  • get Sysroot
  • get qtSource
  • compilation
  • upload

script à venir ... peut-être !

NodeRed

  • installation nodered
apt update
apt install curl
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
//ne pas installer Pi nodes
npm install node-red-contrib-opi-gpio

NanoHat Oled

Shield avec écran et trois boutons poussoir.

Documentation  : http://wiki.friendlyarm.com/wiki/index.php/NanoHat_OLED

  • Installation du code support :
git clone https://github.com/friendlyarm/NanoHatOLED.git
cd NanoHatOLED/BakeBit/Script
./install.sh

Des exemples de code C et Python d'utilisation de l'écran sont consultable dans les dossiers

NanoHatOLED/BakeBit/Software/C
NanoHatOLED/BakeBit/Software/Python
  • Installation dans NodeRed

Depuis NodeRed, pour utiliser l'écran, le plus simple est de passer par la bibliothèque Python.

Il est donc nécessaire d'ajouter la palette node-red-contrib-python-function :

-> Suivre la même procédure que dans la section NodeRed.

Utilisation

Qt

  • Configurer QtCreator

NodeRed

  • Accéder à une broche :
    • tableau correspondance gpio <=> broche : gpio readall
    • choisir "Pi Type" : "NanoPi Neo"
    • choisir la broche dans le menu déroulant
  • Lire la température du processeur :
    • en lisant le contenu du fichier '/sys/class/thermal/thermal_zone0/temp' (utiliser un node tout fait)

NodeHat Oled

  • Créer un node python-function :
    • Il faut ajouter le chemin vers le dossier contenant la lib python de l'écran
    • le payload du message est accessible par msg["payload"]
    • Exemple de code affichant le payload (paramètre d'entrée du node) sur la première ligne de l'écran :
import sys
sys.path.append('/root/NanoHatOLED/BakeBit/Software/Python) # Chemin du dossier de la lib
import bakebit_128_64_oled as oled

oled.init()
oled.clearDisplay()
oled.setNormalDisplay()
oled.setPageMode()

oled.setTextXY(0,0)
oled.putString(msg["payload"])

return msg
  • S'inspirer des codes donnés dans le dossier python de la lib NanoHatOLED.git