Breakout SeeSaw: utiliser le bus I2C pour ajouter entrées/sorties mutantes

De temps à autres, j'aime présenter un produit d'intérêt pour nos projets Makers.

L'Adafruit SeeSaw ATTiny816 fait partie de cette gamme. 

Adafruit SeeSaw ATTiny816

Comme précisé dans l'intitulé, ce produit propose d'ajouter des entrées/sorties "mutantes" sur votre microcontrôleur en utilisant un bus I2C (donc uniquement deux signaux)

Des entrées/sorties mutantes? 

C'est un bien drôle de terme pour qualifier des entrées/sorties. C'est parce que les broches du SeeSaw peuvent être configurées en:

  • 12x GPIO
  • 5x Sortie PWM
  • 9x Entrée Analogique
  • 1x Sortie Neopixel
  • 1x Broche d'interruption

Et le SeeSaw propose également une EEPROM de 127 octets, le tout via bus I2C grâce au firmware SeeSaw préchargé sur la carte.

Toutes les combinaisons ne sont pas disponibles sur toutes les broches mais cela permet d'élargir le champs des possibilités bien au delà d'un MCP23017 et pour un prix tout à fait abordable.

Identification des fonctionnalité

La sérigraphie sur la carte permet d'identifier très facilement les fonctionnalités principales


Les broches avec le marquage:

  • étoile (*): propose aussi une entrée analogique avec une résolution 10 bits (0 à 1024).
  • vaguelette (~): propose aussi une sortie PWM avec une résultion de 8 bits (0 à 255).
Et toutes les broches proposent un support GPIO (entrée/sortie numérique).


  • Broche 10: La LED d'activité (placée entre les broches 6 et 7) est raccordée sur le broche 10. La LED s'allume lorsque la broche est au niveau bas.
  • Broches 12 13: permettent de modifier matériellement l'adresse I2C du SeeSaw. Cette même adresse est stockée dans le dernier octet de l'EEPROM.
  • Broche 6: peut être configurée en broche d'interruption (actif = Niveau bas). Cela permet d'avertir votre microcontrôleur qu'une interruption à été générée sur le SeeSaw. L'interruption peut être activée par n'importe quel accessoire branché sur le SeeSaw. 
  • Sortie Neopixel: peut être utilisé avec presque n'importe quelle broche du SeeSaw. Cependant comme il n'existe qu'une seule mémoire tampon pour les néopixel, il est seulement possible d'utiliser une seule broche à la fois.
  • broche UDPI: Unified Program and Debug Interface , cette broche est utilisée par les développeurs avancés désirant reprogrammer la plateforme avec leur propre firmware, ce qui n'est pas l'objectif de ce produit.

Connectique I2C

L'adresse I2C du SeeSaw est stocké dans le dernier octet de l'EEPROM (voir broches 12 & 13 pour la configuration). Cette EEPROM est disponible via l'accès I2C... prière de ne pas écraser le dernier octet!

côté connectique, les signaux SDA et SCL sont accessible en breakout sur la carte mais il est également possible d'utiliser la connectique Qwiic/StemmaQT (JST-SH4) qui transporte les signaux I2C et l'alimentation.

Cette connectique complémentaire est bien pratique si vous disposez d'un microcontrôleur disposant du même connecteur. Et si vous ne disposez pas de cette connectique, il est très facile équipé d'un connecteur JST-SH4 vers connecteur mâle.

Support pour le SeeSaw

Adafruit propose le support Arduino et CircuitPyhton. Il faudrait que je me décide à créer une bibliothèque pour MicroPython (chez MCHobby).

En savoir plus

Aucun commentaire