MCP23008 I2C-GPIO Expander

Beschreibung

Der MCP23008 ist ein vielseitiger, einfach per I²C ansteuerbarer Baustein, um Mikrocontroller um 8 digitale I/O-Pins zu erweitern.

Der MCP23008 ist ein integrierter Schaltkreis (IC) von Microchip, der als I/O-Expander dient. Er ermöglicht es, über eine I²C-Schnittstelle bis zu 8 zusätzliche digitale Ein- und Ausgänge (GPIOs) zu einem Mikrocontroller hinzuzufügen.

Hauptmerkmale:

  • 8 frei programmierbare GPIO-Pins (jeweils als Eingang oder Ausgang nutzbar)
  • I²C-Schnittstelle (Adresse per Hardware-Pins wählbar, bis zu 8 Geräte am Bus)
  • Interrupt-Funktion: Kann bei Zustandsänderung an den Pins einen Interrupt auslösen
  • Interner Pull-Up-Widerstand für jeden Pin aktivierbar
  • Betriebsspannung: 1,8 V bis 5,5 V
  • Geringer Stromverbrauch

  • Erweiterung der Ein-/Ausgänge bei Mikrocontrollern (z. B. Arduino, Raspberry Pi)
  • Tastenfelder, LEDs, Relais, Sensoren usw.

Vorteile:

  • Spart Mikrocontroller-Pins
  • Einfache Ansteuerung über I²C

Bilder

Bestellung

Weitere Infos
Software Unterstützung

Arduino-Software-Library:
https://www.arduinolibraries.info/libraries/mcp23008-i2-c

PlatformIO-Library:
https://registry.platformio.org/libraries/hasenradball/MCP23008-I2C

Github-Library:
https://github.com/hasenradball

ESP8266 Flash-Board

Flash_Board_02

Beschreibung

Um auf der Workbench etwas platz zu schaffen, habe ich ein Flash Board entwickelt, damit man die ESP8266 Boards bequem flashen kann.
Um ganz flexibel zu sein, kann man die Flash-Pins am 10 poligen Wannenstecker auch direkt abgreifen.
2 Flasher können verwendet werden:

  • FT232RL
  • ESP Flasher Rev4

Das Board hat eine eigene Spannungsversogung von 3,3 V, oder man kann über den Schalter die 3,3 V des Flashers nutzen.

Ein Reset Taster und ein Flash Taster sind mit drauf, falls es mal doch mal Probleme geben sollte, dass der Flasher das ESP-Board nicht in den Flash-Mode bekommt.

Bilder

Hier seht ihr das Board mit den ESP-Board die direkt geflasht werden können.

Flash_Board_02
ESP8266-Flash-Board v1.0 – mit Microcontroller

Das Board an Sich sieht so aus.
Man hat sowohl Pin-Header alsouch Pin-Sockets für die ESP-Boards.
Damit wäre es theoretisch auch möglich den USB2TTL Converter (CH340) der fest auf dem Wemos mini D1 verbaut ist auszulöten, um so im deep sleep mode Strom zu sparen.
Geflasht werden kann er dann dnnoch noch über die Pin-Leisten.

Flash_Board_01
ESP8266-Flash-Board v1.0

Bestellung

Hier könnt ihr das ESP8266-Flash-Board erwerben:


Bestellung: ESP8266-Flash-Board

Weitere Infos

ESP8266-Adapter nextGen (ESP8266-Adapter v2)

Beschreibung des ESP8266-Adapter

Nach langen Überlegen, ob sich das noch lohnt, habe ich mich doch dazu entschlossen den ESP8266-Adapter zu überarbeiten.
Die Maße ind das Pinout des Adapters der ersten Version habe ich beibehalten.

Was hat sich geändert?
Zunächst habe ich den Spannungsregler im SOT-23 Gehäuse verworfen => zu schlechte Entwärmung des Spannungsreglers. Bei 14 V und WLAN Start führte dies zu Spannungsdrops da der Regler zu warm wurde.
Dafür habe ich dem Board einen Spannungsregler im SOT-223 Package verpasst. Somit lässt sich der Chip auch bei 16 V betreiben.
Warum benötigt man die Spannungsmessung bis 16 V?
Bei mir dient der Chip als Batteriewächter fürs Motorrad.

Zudem habe ich zwei MOSFETs verbaut, so dass der Spannungteiler für die Spannungsmessung der Versorgungsspannung aktiv zuschaltbar ist. Ansonsten wäre der Spannungteiler dauerhaft mit der Vcc verbunden und zieht auch im DeepSleep unnötig Strom.

Die optionalen Features lassen sich nun über Lötjumper setzen.
Das Flashen lässt sich nun auch über einen Button realisieren.

Das Ganze noch mal zusammengefasst:

  • 2 MOSFETs zum aktiven Ein- und Ausschalten der Spannungsmessung über den ADC (im ausgeschalteten Zustand kann der ESP selbst einen Nullabgleich durchführen).
  • TO92 und SOT-223 Spannungregler bestückbar (bis zu Vcc = 16 V)
  • Lötjumper zum optionalen Aktivieren der Funktionen
  • Anschluß für DS18x20 Temperatursensor
  • Button für Flash Option
  • Gehäuse verfügbar

Bilder

ESP8266-Adapter
ESP8266-Adapter v2.1 mit MosFet-Schaltung
ESP8266-Adapter v2 (Vorder- und Rückseite)
ESP8266-Adapter v2 – im Gehäuse
ESP8266-Adapter v2 im Gehäuse von hinten

Bestellung

Hierkönnt ihr den ESP8266-Adapter v2 bestückt erwerben:


Bestellung: ESP8266-Adapter nextGen

Weitere Infos

Der praktische ESP8266-01-Adapter v3.0

Es gibt ein Update des ESP8266-01-Adapter in der Version 3.0.

Beschreibung

Die Version 3.0 des Adapters wurde so aktualisiert, dass auch ganz einfach ein entsprechendes Sensor-Modul (siehe Bild) aufgesteckt werden kann.
Die restlichen Features sind gleich wie bei der Version 2.0.
Aktuell gibt es auch eine passende Base dazu.
Die Base sorgt dafür dass die Platine mit den Pins nirgends kontakt hat.

Bilder

Hier ein Bild aus dem KiCAD.

ESP8266
Bild1: ein Bild der v3.0 aus dem KiCAD
ESP8266-01-Adapter v3 mit I²C Interface
Dazu gibts auch die passende Base

Bestellung

Hier könnt ihr den ESP8266-01-Adapter v3.0 erwerben:


Bestellung: ESP8266-01-Adapter v3.0

Weitere Infos

ESP32-Dev-Kit v1 Dev-Board v1.0

Analog wie für den ESP32 Pico Kit gibt es nun das Dev Board für das ESP32-Dev-kit v1.

Beschreibung

Der ESP32 ist im Vergleich zum ESP8266 deutlich performanter und man merkt dies auch, wenn man damit ein TFT-Display ansteuert.
Dieses Dev-Board dient dazu das ESP32 Dev Board richtig komfortabel zu machen, indem es die folgenden Schnittstellen bereitstellt.

Die Merkmale sind:

  • mehrere LED Interfaces, unter anderem 3 farbige LEDs
  • SPI-Interface für z.B. ein TFT
  • One-Wire-Interface (z. B. DS18S20)
  • I²C-Interface (div. Sensor Boards)
  • PNP-Transistor (100 mA)
  • Spannungteiler zur Messung von Spannungen über ADC

Bilder

ESP32
3D-Modell aus dem Layout Programm
Bestückte Platine mit ESP32 Dev-Kit
Leerplatine -Frontseite
Leerplatine Rückseite

Bestellung

Hier könnt ihr das Dev-Board für den ESP32-Dev-Kit v1 erwerben:


Bestellung: Dev-Board für den ESP32-Dev-Kit v1

Weitere Infos