Habe von TME einen "Arduino Nano ESP32" https://docs.arduino.cc/hardware/nano-esp32/ gekauft - und noch weitere bestellt, weil das eigentlich auf Anhieb gut funktioniert hat. Nach ein bisschen rumspielen tauchen doch noch Fragen auf, die zwar Arduino-spezifisch sind, aber dort nicht beantwortet werden:
die 16MB Flash extern, über SPI angebunden, werden die für die Firmware verwendet? Oder ist frei verfügbar, bzw. was von der Firmware nicht besetzt ist? Kann ich darauf meine Logdaten speichern und abrufen über https://github.com/PaulStoffregen/SerialFlash
Der Flash Speicher enthält die Closed-Source Firmware vom Hersteller, sowie den Python Interpreter oder das selbst erstellte Programm (Sketch) auf Basis des Arduino Core oder Espressif IDF. Ein großer Teil davon kann für weitere Daten verwendet werden (z.B. ein Dateisystem mit Python Scripten).
Kann ich darauf meine Logdaten speichern und abrufen
denn diese Bibliothekist dazu gedacht, einen weiteren SPI Flash Chip anzusteuern, den du hinzufügen würdest. Für den Chip, der sich auf dem Board befindet, musst du die Funktionen des Arduino Frameworks verwenden. Siehe https://docs.arduino.cc/tutorials/nano-esp32/spiff/
denn diese Bibliothekist dazu gedacht, einen weiteren SPI Flash Chip
anzusteuern, den du hinzufügen würdest. Für den Chip, der sich auf dem
Board befindet, musst du die Funktionen des Arduino Frameworks
verwenden. Siehe https://docs.arduino.cc/tutorials/nano-esp32/spiff/
Danke für die Info! Ich werde dann wohl einen weiteren SPI-Flash nehmen!
Danke für die Info! Ich werde dann wohl einen weiteren SPI-Flash nehmen!
Musst du nicht.
du kannst den internen Flash vom ESP als EEPROM (emulation), FFAT oder SPIFF Speicher verwenden. Je nach dem was besser für dich passt.
Ja eben, und in der API steht:
analogRead
This function is used to get the ADC raw value for a given pin/ADC
channel.
uint16_t analogRead(uint8_t pin);
pin GPIO pin to read analog value
So habe ich physische Pins verstanden!
Es kommt auch immer auf den verwendeten Core an. Espressif nimmt die PIN-Zahl die auch in der Doku steht.
Arduino verwendet gerne die Zahlen die auf der LP aufgedruckt sind (A0 bis A7)
also die Analogen sind beim ESP32:
ADC1 -> 36,39,34,35,32,33
ADC2 -> 25,26,27,14,12,13,15
Wobei ADC2 wegen diverser Kleinigkeiten mit Vorsicht zu genießen ist.
eine andere API ist, die viel umfangreicher,
aber eben nicht für Arduino ist
Der Arduino Core ist ein Aufsatz auf das Espressif IDF. Die steht also beide zur Verfügung, allerdings nicht uneingeschränkt (manche beißt sich).
Der Temperatursensor im Chip wird intern gebraucht, um thermische Effekte auszugleichen. Aus Sicht der Anwendung kann man damit nur sehr wenig sinnvolles anfangen. Die Raumtemperatur misst man damit jedenfalls nicht.
Der Arduino Core ist ein Aufsatz auf das Espressif IDF.
"Der Arduino Core" ist es eben nicht.
Es gibt 2 Cores.
Einen von Espressif -> https://github.com/espressif/arduino-esp32
Einen von Arduino -> der baut auf den von Espressif auf. Ist aber in der Version immer älter und hat halt ein paar mehr einschränkungen.
Naja, ich wollte halt irgendeinen Analogwert zum testen mit der Cloud. Aber da ich nun komischerweise ohne Erwähnung im "Free Plan" plötzlich auf 5 Gadgets (Variablen) eingeschränkt bin, hilft mir das ganze Cloud-Geraffel nicht mehr viel. Wollte halt die Heizungssteuerung erweitern, dass ich auch von extern darauf zugreifen kann, da externer Zugriff wegen NAT nicht erreichbar ist.
Es gibt 2 Cores.
Einen von Espressif
Einen von Arduino
Habe ich im Laufe der Jahre ganz vergessen, danke für den Hinweis.
Ziemlich fies ist dabei, dass Arduino die 2,5 Jahre alte Version bereit stellt, aber auf aktuelle Dokumentation von Espressif verweist. Da passt natürlich einiges nicht mehr zusammen. So ein Murks!
Eine eigene Frage?
Dieser Thread ist über ein Jahr alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.