Platformio: esp8266-rtos-sdk

OP (Firma: Google) #5543923
Hallo Gemeinde,

ich bin jetzt auf PlatformIO umgestiegen und würde ganz gerne meinen 
ESP8266 damit "bespaßen".

Als Platform würde ich gerne das offzielle RTOS SDK verwenden, um mich 
im Umgang mit einer Echtzeitumgebung zu schulen.

Das einfache "blink-Beispiel" das mitinstalliert worden ist konnte ich 
problemlos übersetzen und hochladen.

Jetzt scheitert es aber mehr und mehr an zusätzlichen Bibliotheken, die 
ich noch unter Arduino gewohnt war.
Zum Beispiel würde ich gerne den BMP280 anschließen und über I2C die 
Messwerte auslesen.
Woher bekomme ich nun einen Treiber oder eine passende Bibliothek?
Im Internet finde ich kaum etwas hierzu...

Und: Was hat es hiermit auf sich
https://github.com/SuperHouse/esp-open-rtos

Was ist das für ein RTOS? Im Ordner "extras" finden sich hier zahllose 
Quellen für die verschiedensten Devices...
Kann ich diese auch für das offizielle Espressif SDK hernehmen?

Fragen über Fragen.

Herzlichen Dank!
Gast
Hallo Tim,

ich habe meine unter Arduino benutzten Bibliotheken einfach in den 
Projektordner unter Lib rein kopiert. Dann ging es auf jeden Fall. Ob 
dies der richtige Weg ist?

MbG Daniel
Gast
Tim S. schrieb:
> Jetzt scheitert es aber mehr und mehr an zusätzlichen Bibliotheken, die
> ich noch unter Arduino gewohnt war.
> Zum Beispiel würde ich gerne den BMP280 anschließen und über I2C die
> Messwerte auslesen.

Normalerweise kannst du das doch einfach über den Bibliotheks-Tab auf 
der Home-Seite im PlatformIO installieren.
OP (Firma: Google)
daniel schrieb:
> Hallo Tim,
>
> ich habe meine unter Arduino benutzten Bibliotheken einfach in den
> Projektordner unter Lib rein kopiert. Dann ging es auf jeden Fall. Ob
> dies der richtige Weg ist?
>
> MbG Daniel

Danke, dass müsste ich ausprobieren...
Muss ich in der platform.ini noch irgendein zusätzliches Verzeichnis 
definieren wo nach header-Dateien gesucht wird?

Wie sieht es hier mit den Abhängigkeiten aus?
Ich gehe stark davon aus das eine BME280 Bibliothek die I2C-Bibliothek 
benötigt...
Dies wird alles automatisch aufgelöst?

DANKE!
OP (Firma: Google)
Sneef schrieb:
> Tim S. schrieb:
>> Jetzt scheitert es aber mehr und mehr an zusätzlichen Bibliotheken, die
>> ich noch unter Arduino gewohnt war.
>> Zum Beispiel würde ich gerne den BMP280 anschließen und über I2C die
>> Messwerte auslesen.
>
> Normalerweise kannst du das doch einfach über den Bibliotheks-Tab auf
> der Home-Seite im PlatformIO installieren.

Das geht leider nicht wirklich für die "esp8266-rtos-sdk" Platform.
Ich finde dort ausschließlich Bibliotheken für Arduino und mbed.
Gast
Ich empfehle dir, das Arduino SDK zu verwenden, und darin kannst du 
FreeRTOS nutzen. Als Includes nutzt du:
1
#include "freertos/FreeRTOS.h"
2
#include "freertos/task.h"
3
#include "Arduino.h"

Deine Libraries bindest du, wie im "readme.txt" beschrieben, wie folgt 
in dein Projekt ein:
1
This directory is intended for the project specific (private) libraries.
2
PlatformIO will compile them to static libraries and link to executable file.
3

4
The source code of each library should be placed in separate directory, like
5
"lib/private_lib/[here are source files]".
6

7
For example, see how can be organized `Foo` and `Bar` libraries:
8

9
|--lib
10
|  |
11
|  |--Bar
12
|  |  |--docs
13
|  |  |--examples
14
|  |  |--src
15
|  |     |- Bar.c
16
|  |     |- Bar.h
17
|  |  |- library.json (optional, custom build options, etc) http://docs.platformio.org/page/librarymanager/config.html
18
|  |
19
|  |--Foo
20
|  |  |- Foo.c
21
|  |  |- Foo.h
22
|  |
23
|  |- readme.txt --> THIS FILE
24
|
25
|- platformio.ini
26
|--src
27
   |- main.c
28

29
Then in `src/main.c` you should use:
30

31
#include <Foo.h>
32
#include <Bar.h>
33

34
// rest H/C/CPP code
35

36
PlatformIO will find your libraries automatically, configure preprocessor's
37
include paths and build them.
38

39
More information about PlatformIO Library Dependency Finder
40
- http://docs.platformio.org/page/librarymanager/ldf.html

Danach kannst du sie wie beschrieben nutzen.

Wenn du vom Arduino SDK wegkommen willst, würde ich das ESP-IDF SDK 
nutzen. ALlerdings müssen da die Libraries wahrscheinlich selbst 
geschrieben werden, da es nicht allzuviele Libraries gibt.

Nach
1
#include "Arduino.h"
 kannst du, wie gewohnt, auf alle Arduino Bibliotheken zurückgreifen, 
viele davon kannst du im Lib-Manager von Platformio direkt für das 
Projekt installieren.
Gast
Trembel schrieb:
> Ich empfehle dir, das Arduino SDK zu verwenden, und darin kannst du
> FreeRTOS nutzen. Als Includes nutzt du:#include "freertos/FreeRTOS.h"
> #include "freertos/task.h"
> #include "Arduino.h"
>
> Deine Libraries bindest du, wie im "readme.txt" beschrieben, wie folgt
> in dein Projekt ein:

Selbstverständlich mit Platformio (wie von dir gewünscht), und nicht mit 
der Arduino IDE
OP (Firma: Google)
Trembel schrieb:
> Das ESP8266 SDK basiert auch auf FreeRTOS:
>
> https://github.com/espressif/ESP8266_RTOS_SDK
>
> https://www.freertos.org/
>
> https://de.wikipedia.org/wiki/FreeRTOS

Das weiß ich...
Ich hätte allerdings gerne gewusst was das esp-open-rtos ist?

https://github.com/SuperHouse/esp-open-rtos

Kann man das unter PlatformIO verwenden?
Dort sind alle Treiber für diverse Sensoren dabei + FreeRTOS V10.0.1.

Wäre schon cool, wenn ich darauf aufsetzen könnte.
Gast
Tim S. schrieb:
> https://github.com/SuperHouse/esp-open-rtos
>
> Kann man das unter PlatformIO verwenden?
> Dort sind alle Treiber für diverse Sensoren dabei + FreeRTOS V10.0.1.
>
> Wäre schon cool, wenn ich darauf aufsetzen könnte.

Ich denke, das sollte funktionieren.
Vielleicht hilft dir das weiter:

https://community.platformio.org/t/adding-a-new-framework-to-platformio/297

Ansonsten postest du deine Frage am Besten zusätzlich direkt im 
Community-Forum

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 8 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.