Forum: Mikrocontroller und Digitale Elektronik ESP32 als i2c IO-Expander für Raspberry Pi?


von Manuel N. (manuel_n921)


Lesenswert?

Hi, ich brauche einen i2c IO-Expander für meinen Raspberry. Möchte 
analogeingang lesen, PWM generieren zum Lampen dimmen, Digitale Eingänge 
lesen und digitale Ausgänge schreiben.

Gibt ja viele Expander, jedoch können die meisten mehr oder weniger nur 
eine funktion übernehmen. Sprich ich hätte ca. 3 bis 4 Slave adressen.

Nun zu meiner Frage: Wäre das ganze auch mit einem ESP32 ersetzbar? also 
dass mein PI einen i2c Slave, also den ESP anspricht und dieser dann 
alles macht? Der ESP kann ja PWM, analog&Digital abdecken.

Würde das so gehen oder hab ich da was missachtet?

Danke im Vorraus

von Brain 2.0 (Gast)


Lesenswert?

Manuel N. schrieb:
> Würde das so gehen oder hab ich da was missachtet?

Schlechte Idee.
Der ESP32 ist nur sehr zickig als I2C-Slave zu verwenden.
Die analogen Eingänge sind nicht sehr genau, zumindest an den oberen und 
unteren Grenzen.

von Stefan F. (Gast)


Lesenswert?

Wenn schon, dann würde ich dafür lieber einen Mikrocontroller ohne WLAN 
verwenden und ihn über UART anbinden. Zum Beispiel ein Arduino Nano 
Modul.

> Sprich ich hätte ca. 3 bis 4 Slave adressen.

Na und? Was ist daran schlecht? Der Vorteil dieser Periperhie-Chips ist, 
dass du sie nicht auch noch selbst programmieren musst und dass sie sich 
weniger gegenseitig stören (z.B. PWM versus ADC).

von N. M. (mani)


Lesenswert?

Manuel N. schrieb:
> Der ESP kann ja PWM, analog&Digital abdecken.

Weil der ESP ja so gute analoge Perepherie hat 😄

Ich würde auch fertige Bausteine nehmen. Gegenseitige Beeinflussung 
wurde ja schon gesagt. Zu 90% haben fertige Bausteine wahrscheinlich 
auch eine bessere Performance (z.B. Updaterate, Settlingtime,...).

Wenn du welche nutzt die Mainline sind, brauchst du nur noch den Treiber 
einklinken und verwenden.

Und wenn ich doch einen All-In-one Baustein wollte weil ich ein Custom 
Funktion benötige, dann wäre glaube ich I2C das letzte was ich nehmen 
würde. Vorher noch SPI oder UART.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.