Différences entre versions de « TrinKey-QT2040 »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(12 versions intermédiaires par le même utilisateur non affichées)
Ligne 14 : Ligne 14 :
 
Le connecteur QWiic (SparkFun) / StemmaQT (Adafruit) est un [https://shop.mchobby.be/fr/recherche?controller=search&s=jstsh4 connecteur 4 pôles JST SH4] permettant de transporter un bus I2C avec une alimentation. Le bus I2C étant chainnable par nature, ce qui permet de brancher facilement capteurs et périphériques I2C.
 
Le connecteur QWiic (SparkFun) / StemmaQT (Adafruit) est un [https://shop.mchobby.be/fr/recherche?controller=search&s=jstsh4 connecteur 4 pôles JST SH4] permettant de transporter un bus I2C avec une alimentation. Le bus I2C étant chainnable par nature, ce qui permet de brancher facilement capteurs et périphériques I2C.
  
Le TrinKey permet de créer des rapidement des solutions simples et efficaces.
+
A noter qu'il est possible de détourner le connecteur Qwiic pour mettre en place un UART ou deux GPIOs (en entrée ou en sortie).
 +
 
 +
Le TrinKey permet de créer rapidement des solutions simples et efficaces.
  
 
{{rbox-orange|Le TrinKey RP2040 est un produit très excitant, je n'ai pas résisté à l'idée de le tester avec MicroPython!}}
 
{{rbox-orange|Le TrinKey RP2040 est un produit très excitant, je n'ai pas résisté à l'idée de le tester avec MicroPython!}}
Ligne 66 : Ligne 68 :
 
== Brochage du TrinKey ==
 
== Brochage du TrinKey ==
  
[[Fichier:Trinkey-QT2040-Pinout.png]]<br />Source: [https://learn.adafruit.com/adafruit-trinkey-qt2040 Adafruit TrinKey QT2040]
+
[[Fichier:Trinkey-QT2040-Pinout.png]]<small><br />Source: [https://learn.adafruit.com/adafruit-trinkey-qt2040 Adafruit TrinKey QT2040]</small>
  
 
== Utiliser le TrinKey ==  
 
== Utiliser le TrinKey ==  
Ligne 72 : Ligne 74 :
 
Voici comment utiliser les différentes ressources du TrinKey QT2040.
 
Voici comment utiliser les différentes ressources du TrinKey QT2040.
  
=== Bouton Utilisateur ===
+
=== Bouton utilisateur ===
 +
 
 +
Le bouton utilisateur est branché sur le GPIO 12. '''Cette broche doit être utilisée exclusivement en entrée!'''
 +
 
 +
<syntaxhighlight lang="python">
 +
from machine import Pin
 +
p = Pin( Pin.board.gp12, Pin.IN )
  
x
+
# Affiche 1 lorsque relâché
 +
# Affiche 0 lorsque pressé
 +
print( p.value() )
 +
</syntaxhighlight>
 +
 
 +
A noter que le bouton utilisateur (GPIO 12) est également accessible par l'intermédiaire du point de test situé sous le bouton "boot".
 +
 
 +
[[Fichier:TrinKey-QT2040-testpoint.png|320px]]
  
 
=== Led NeoPixel ===
 
=== Led NeoPixel ===
  
x
+
La LED NeoPixel est sur le GPIO 27 et peut être commandé avec la bibliothèque neopixel.
  
 +
<syntaxhighlight lang="python">
 +
from machine import Pin
 +
from neopixel import NeoPixel
 +
px = NeoPixel( Pin.board.GP27, 1 ) # 1 seul pixel
 +
px[0] = (0xFF, 0x66, 0x00 ) # Orange
 +
px.write()                  # Mise-à-jour de la LED
 +
px[0] = (0, 255, 0 ) # Vert 100%
 +
px.write()
 +
px[0] = (128, 0, 0 ) # rouge 
 +
px.write()
 +
</syntaxhighlight>
  
 
=== Bus I2C (Qwiic/StemmaQT) ===
 
=== Bus I2C (Qwiic/StemmaQT) ===
x
+
Le connecteur du bus I2C(0) est branché sur les GPIO16 (SDA) et GPIO17 (SDA). Il s'avère que ces deux lignes peuvent aussi être utilisé pour établie connexion série.
x
+
 
 +
L'exemple ci-dessous indique comment créer une instance du bus I2C.
 +
 
 +
<syntaxhighlight lang="python">
 +
from machine import Pin, I2C
 +
i2c = I2C( 0, sda=Pin.board.GP16, scl=Pin.board.GP17, freq=400000 )
 +
print( i2c.scan() )
 +
</syntaxhighlight>
  
 
== Où acheter ==
 
== Où acheter ==
 
* {{pl|2705|TrinKey QT2040}} @ MCHobby
 
* {{pl|2705|TrinKey QT2040}} @ MCHobby
 
* [https://www.adafruit.com/product/5056 TrinKey QT2040] @ Adafruit
 
* [https://www.adafruit.com/product/5056 TrinKey QT2040] @ Adafruit

Version actuelle datée du 21 août 2024 à 19:38

Introduction

Le Trinkey est une mini-clé USB équipée d'un microcontrôleur RP2040 (le même que le Raspberry Pico) et de 8 Mio de mémoire Flash QSPI.

TrinKey-QT2040.png

Le Trinkey QT2040 est équipé:

  • du MCU RP2040 @ 133 MHz, 264 Kio RAM, 8 Mio Flash
  • d'une LED NeoPixel (RGB)
  • d'un connecteur Stemma QT/Qwiic
  • d'un bouton utilisateur (sert aussi au lootloader)
  • Une alimentation 3.3V @ 600mA.

Le connecteur QWiic (SparkFun) / StemmaQT (Adafruit) est un connecteur 4 pôles JST SH4 permettant de transporter un bus I2C avec une alimentation. Le bus I2C étant chainnable par nature, ce qui permet de brancher facilement capteurs et périphériques I2C.

A noter qu'il est possible de détourner le connecteur Qwiic pour mettre en place un UART ou deux GPIOs (en entrée ou en sortie).

Le TrinKey permet de créer rapidement des solutions simples et efficaces.

Le TrinKey RP2040 est un produit très excitant, je n'ai pas résisté à l'idée de le tester avec MicroPython!

Installer MicroPython

  1. Télécharger le firmware MicroPython U2F pour Raspberry Pico RP2040 sur micropython.org/download/
  2. Passer le TrinKey en mode DFU (Device Firmware Updgrade)
    1. Enfoncer le bouton Bootloader
    2. Enfoncer et relâcher le bouton Reset
    3. Relâcher le bouton Reset
    4. Attendre que le disque USB "RPI-RP2" apparaisse sur l'ordinateur
  3. Flasher le FirmWare MicroPython
    1. Glisser/déposer le fichier UF2 dans le lecteur RPI-RP2
    2. Attendre que la carte redémarrer (le lecteur "RPI-RP2" disparaît de l'ordinateur)

Interagir avec MicroPython

MicroPython s'utilise comme avec n'importe quelle autre plateforme MicroPython.

Voici donc les outils que vous pouvez utiliser avec TrinKey-QT2040

Thonny IDE

Tlogo-thonny.jpg

Utiliser Thonny IDE avec Pico et carte RP2040

Pico et Thonny

Tlogo-pico-thonny.jpg

Utiliser l'IDE Thonny (recommandé par la fondation) avec votre Pico. Un bel article de Framboise314.

MPRemote

Tlogo-MPRemote.png

MicroPython Remote Control outil en ligne de commande qu'il ne faut surtout pas râter.

MIP

Tlogo-MPRemote-MIP.png

MicroPython Install Package une commande MPRemote pour installer facilement des bibliothèques

 

Brochage du TrinKey

Trinkey-QT2040-Pinout.png
Source: Adafruit TrinKey QT2040

Utiliser le TrinKey

Voici comment utiliser les différentes ressources du TrinKey QT2040.

Bouton utilisateur

Le bouton utilisateur est branché sur le GPIO 12. Cette broche doit être utilisée exclusivement en entrée!

from machine import Pin
p = Pin( Pin.board.gp12, Pin.IN )

# Affiche 1 lorsque relâché
# Affiche 0 lorsque pressé
print( p.value() )

A noter que le bouton utilisateur (GPIO 12) est également accessible par l'intermédiaire du point de test situé sous le bouton "boot".

TrinKey-QT2040-testpoint.png

Led NeoPixel

La LED NeoPixel est sur le GPIO 27 et peut être commandé avec la bibliothèque neopixel.

from machine import Pin
from neopixel import NeoPixel
px = NeoPixel( Pin.board.GP27, 1 ) # 1 seul pixel
px[0] = (0xFF, 0x66, 0x00 ) # Orange
px.write()                  # Mise-à-jour de la LED
px[0] = (0, 255, 0 ) # Vert 100%
px.write()
px[0] = (128, 0, 0 ) # rouge  
px.write()

Bus I2C (Qwiic/StemmaQT)

Le connecteur du bus I2C(0) est branché sur les GPIO16 (SDA) et GPIO17 (SDA). Il s'avère que ces deux lignes peuvent aussi être utilisé pour établie connexion série.

L'exemple ci-dessous indique comment créer une instance du bus I2C.

from machine import Pin, I2C
i2c = I2C( 0, sda=Pin.board.GP16, scl=Pin.board.GP17, freq=400000 )
print( i2c.scan() )

Où acheter