FHEM Forum

Verschiedenes => Bastelecke => ESP8266 => Thema gestartet von: Pf@nne am 25 März 2016, 20:01:47

Titel: Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 25 März 2016, 20:01:47
Moin,

Patrick hat seinen ESP8266-RGB-Controller mit nicht mit der ArduinoIDE umgesetzt.
Stattdessen hat er das ganze Projekt mit Sming umgesetzt.
https://forum.fhem.de/index.php/topic,34464.0.html (https://forum.fhem.de/index.php/topic,34464.0.html)

Programmiert wird dann unter Eclipse, Sming stellt dann eine Art Frontend des Hersteller-SDK.
So kann in gewohnter Arduinomanier programmiert werden.

Wer nutz noch Sming?
Was waren ggf. die Gründe für den Umstieg?

Ich habe für mich beschlossen das mal zu testen.
Der Installations und Konfigurationsaufwand ist nicht ganz unerheblich, aber ja nur einmal vorhanden.

http://www.s6z.de/cms/index.php/homeautomation-homecontrol/hardwareplattformen/esp8266/135-sming-alternative-zur-arduinoumgebung (http://www.s6z.de/cms/index.php/homeautomation-homecontrol/hardwareplattformen/esp8266/135-sming-alternative-zur-arduinoumgebung)
http://www.s6z.de/cms/index.php/homeautomation-homecontrol/hardwareplattformen/esp8266/136-sming-installation (http://www.s6z.de/cms/index.php/homeautomation-homecontrol/hardwareplattformen/esp8266/136-sming-installation)
http://www.s6z.de/cms/index.php/homeautomation-homecontrol/hardwareplattformen/esp8266/137-sming-hello-world (http://www.s6z.de/cms/index.php/homeautomation-homecontrol/hardwareplattformen/esp8266/137-sming-hello-world)

Vielleicht haben ja noch mehr Bastler Interesse an dieser Alternative und berichten über ihre Erfahrungen.


Gruß
Pf@nne
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: ext23 am 25 März 2016, 20:35:30
Nabend,

ist das jetzt nur für den ESP gedacht? Oder generell Arduinos?

Ich benutze seit Jahren schon AVR Studio. Mittlerweile kann man dort auch Arduino Projekte öffnen/kompilieren. AVR Studio benutze ich wegen dem debuggen, das kann die Arduino IDE ja nun überhaupt nicht wenn ich mich recht erinnere. Auch zum flashen und setzen der Lock- und Fusebits ist das bequemer, so was geht mit der Arduino IDE auch nicht. Aber ich nutze auch nicht die Arduino Umgebung für meine Projekte. Aber es geht wie gesagt mit der neuen Version.

/Daniel
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 25 März 2016, 21:18:31
Moin,

Sming ist speziel für den ESP8266 gemacht.

In Sachen Debugging ist Eclipse natürlich weit vor der ArduinoIDE, ist aber für den Anfang ein schönes Installationsgefriemel.
Auch die Arduino Sketche lassen sich nicht mehr 1:1 kompilieren.

Ich werde das mal beobachten......
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: mrpj am 02 April 2016, 11:11:29
Den Thread gerade erste gesehen... wegen dem RGBWW Controller hatte ich die letzten Wochen mehr mit Sming zu tun und hab noch ein paar Punkte, die vielleicht für den einen ganz spannend sind:


Bei Arduino Code werden z.B. webrequests via polling im loop() { } abgehandelt. Bei Sming wird die Asynchrone Struktur des espressif SDKs an den Nutzer weiter gereicht - bedeutet im Beispiel webserver, dass Anfragen dann abgehandelt werden, wenn diese beim Controller eintreffen.

Wenn es darum geht mehrere Anfragen zu verarbeiten, ist ein event-basiertes System, wenn es nur einem Thread wie beim Arduino IDE gibt, immer im Vorteil. Anfragen werden "schneller" abgehandelt. Es wird kein unnötiger Code der im loop vorhanden ist zwischendurch ausgeführt z.B.

void loop () {
webserver->handleclient();
mqtt->handlerequest();
tcpserver->handlerequest();
udpserver->handlerequest();
leds->refresh();
(....)
}

In Sming fällt die permanente Ausführung von diesen Routinen weg. Einzig und allein in dem Beispiel, benötigt es einen regelmäßigen Timer der "leds->refresh();" durchführt (im RGBWW Controller sind das 20ms)



Während der Entwicklung des RGBWW Controllers bin ich über die Fallstricke des Arduino SDKs gestolpert, dass dort viele der Funktionalitäten die eigentlich von espressif zur Verfügung gestellt werden, nochmals neu implementiert wurden und damit eine Reihe von Problemen mit sich bringt.
Konkret war es bei dem RGBWW Projekt die Nutzung des PWMs. Auch wenn Espressif eine PWM Funktionalität zur Verfügung stellt, nutzt die Arduino Variante eine Implementierung die mit dem Timer/Interrupts vom Wifi Modul gekoppelt ist. Bei verschiedenen Frequenzen und Werten hatte ich damit dann regelmäßige Aussetzer/Probleme.
Die Implementierung des Arduino SDKs verändert einige Optionen/Register, so dass es mir nicht mehr möglich war die PWM SDK Funktionen zu nutzen.




Der Bootloader von raburton (rBoot) ist fest in Sming integriert. Der Bootloader bietet z.B. die Möglichkeit vor dem starten schon nach OTA updates zu suchen. Auch ist es möglich ihn als echten Bootloader zu betreiben, der es ermöglicht über verschiedene Methoden roms/dateisystem je nach wunsch zu switchen, bevor diese gestartet wird.

Gleichzeitig ist es möglich auch mehr als nur 2 roms im Flash zu haben.


Mit dem ESP32 hat espressif angekündigt - vorerst nur den SDK, der auf FreeRTOS basiert, zur Verfügung zu stellen. Es gibt derzeit schon eine Version von Sming die auf dem RTOS SDK basiert - Funktionalität wird gerade nach und nach portiert.

Der Arduino Aufsatz ist noch nicht soweit und basiert sehr stark auf dem espressif NON-OS SDK



Ich bin sehr positiv gegenüber Sming eingestellt und habe bei der Entwicklung des RGBWW Projekts immer wieder patches und Funktionsergänzungen zu Sming geleistet. Auch wenn der erste Aufwand etwas größer erscheint, empfinde ich Sming als ausgereifter
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 03 April 2016, 15:31:47
Hi,

das macht ja einen sehr guten Eindruck. Je näher man an der Hardware arbeitet, desto rock-stabler wird die ganze Sache.

Jetzt habe ich anhand der Anleitung versucht, das ganze Paket zu installieren. Leider wird (mindestens) Eclipse nicht installiert und ich habe keinen Schimmer wodran das liegt. Wo kann ich suchen?
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 03 April 2016, 17:33:24
Moin,

geh mal auf die s6z.de Links im ersten Beitrag. Da sind die original Links drinn.
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 04 April 2016, 11:08:00
Ich habe das mal anhand der englischen Originalanleitung gemacht, das hat auch nichts genützt. Ich blicke da nicht so durch warum der das Eclipse weg lässt. Alles andere scheint ja durchzulaufen. Ich konnte auch noch kein Logfile finden was mir da weiterhilft.

Werde mir mal eine virtuelle Linuxmaschine hochziehen und es da probieren, elendes Windos.


Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 04 April 2016, 11:31:51
Hmm... lief bei mir eigentlich so durch....
Eclipse kannst du doch aber auch von Hand nachinstallieren....

Ich blicke da nicht so durch....

da sind wir schon zu zweit......  ;D
Ist teilweise noch alles ein wenig tricky, geht mir auch so.
Sollte aber mit der Zeit besser werden.
Ich bin mir auch noch nicht ganz schlüssig, ob ich mein nächstes Projekt oder z.B. das ESP8266_Basic-Template auf Sming umstelle.

Sinn macht es schon, wird natürlich für alle "nichtsminger" schwieriger, da es nicht zu Arduino kompatibel ist.
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Rince am 04 April 2016, 18:35:52
Dann gebe ich als Noob auch meinen Senft dazu:
Die Arduino IDE hat den großen Vorteil, viele Codebeispiele zu haben. Immerhin wird der Arduino grade 12 Jahre alt. Das Konzept der IDE ist recht einfach. Code schreiben (oder Copy & Pasten), Board aussuchen, Upload drücken, warten.

Dazu gibt es für viele Hardware Libraries.


Großer Nachteil für Sming:
Programme nicht kompatibel (Loop vs. Events)

Wobei der klassische fhem User was mit Events anfangen kann.


Letztlich gibt es also zwei essentielle Fragen:
1. Wird meine Hardware von Sming unterstützt (=sind die Libraries kompatibel)
2. Gibt es eine Community, die durch Support das fehlen von vielen Codebeispielen auszugleichen bereit ist?
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 04 April 2016, 19:34:30
Letztlich gibt es also zwei essentielle Fragen:
1. Wird meine Hardware von Sming unterstützt (=sind die Libraries kompatibel)
2. Gibt es eine Community, die durch Support das fehlen von vielen Codebeispielen auszugleichen bereit ist?

Sehe ich auch so, für den kleinen Sketch zwischendurch wird es wohl eher Arduino bleiben.
Für komplexere Sachen mit vielen Klassen und Files sehe ich Eclipse und Sming im Vorteil.
Die meisten Librarys sollten mit vertretbarem Aufwand nutzbar gemacht werden können, wenn diese nicht sogar gleich ohne Änderung laufen.

Ich habe mich mal bei Patrick und seinem RGB-LED-Modul eingeklinkt und "versuche" ihn bei der MQTT-Anbindung zu unterstützen.
In der Praxis muss ich aber noch viel über die Feinheiten der C-Programmierung lernen, gerade was Klassen und Objekte angeht.
Patrick ist hier sehr geduldig......

Mal sehen was mein Eindruck von Sming dann sagt..... :-)
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 04 April 2016, 20:37:29
Ich sehe das recht pragmatisch. Ich suche eine Plattform die möglichst stabilen Output erzeugt. Arduino ist da schon ganz ok, stürzt aber leider mal ab. Sming-basierte Projekte tun das vielleicht auch. Ausprobieren.

Der Umfang der Programme ist dabei ja durchaus überschaubar (jedenfalls bei meinen Ansprüchen).

Ein Schalter/Taster der per MQTT seinen Zustand meldet und was schaltet und weil noch GPIOs frei sind, machen wir gleich noch einen DHT oder DS18B20 mit dazu. Die Meßwerte sollten natürlich auch per MQTT abgesetzt werden.
Wenn man den Taster drückt sollte das Licht sofort angehen, egal ob der MQTT-Server oder FHEM in dem Moment noch da sind oder nicht. DA freut sich die Frau! (Schatz, lass den Schalter!!! Nimm die App!)

Und in Abwandlung eines legendären Zitats braucht sowas eigentlich nur: Stability, Stability, Stability.

So, aber erstmal muss ich das Eclipse zum Laufen bringen.
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: mrpj am 05 April 2016, 01:34:06
Dann gebe ich als Noob auch meinen Senft dazu:
Die Arduino IDE hat den großen Vorteil, viele Codebeispiele zu haben. Immerhin wird der Arduino grade 12 Jahre alt. Das Konzept der IDE ist recht einfach. Code schreiben (oder Copy & Pasten), Board aussuchen, Upload drücken, warten.

Der Arduino IDE hat seine Berechtigung und ist für Einsteiger eine ganz nette Sache. Aber sobald man etwas mehr als nur ein simples Programm schreibt, dass nur einen geringen Funktionsumfang hat, schränkt der IDE massivst ein. Code Lookups und Dokumentation (die allgemein bei Arduino zu wünschen übrig lässt...  ::) ) is spärlich vorhanden. Es gibt keine vernünftige Übersicht zu definierten Variablen, Funktionen und Klassen.

Die Liste kann ich hier mit vielen weiteren Punkten füllen - ich bleibe bei der Aussage, der Arduino IDE ist für den ersten Einstieg in die Programmierung von MCs sehr hilfreich. Die Grenzen des IDEs sind meiner Meinung nach sehr schnell erreicht, wenn man sich intensiver mit der Materie auseinander setzt. (Aber selbst wenn die Grenzen erreicht sind, verharren viele Nutzer zu lange bei dem Arduino IDE, statt den Schritt weiter zu gehen und andere IDEs auszuprobieren. Der Mensch ist ein Gewohnheitstier und gewöhnt sich auch daran mit einem eingeschränkt Funktionsumfang zu arbeiten.)



Großer Nachteil für Sming:
Programme nicht kompatibel (Loop vs. Events)

Wobei der klassische fhem User was mit Events anfangen kann.

Das stimmt so nicht - es ist ganz einfach sich einen "loop" zu erzeugen, in dem man einen Timer startet, der z.B. alle X ms eine Funktion aufruft in der die loop Handler von Arduino Bibliotheken/Programmen abgehandelt werden.

Es ist nur nicht immer sinnvoll - es macht keinen Sinn den Arduino Webserver zu nutzen, wenn es einen Ereignisbasierten Webserver gibt ...

Letztlich gibt es also zwei essentielle Fragen:
1. Wird meine Hardware von Sming unterstützt (=sind die Libraries kompatibel)

Die gängigsten Libraries sind portiert worden - auch teilweise Libraries die nicht gescheit mit ArduinoESP funktioniert haben.
Sicherlich ist es sinnvoller, die Bibliotheken anzupassen um die Vorteile/Eigenheiten von SMING zu nutzen

2. Gibt es eine Community, die durch Support das fehlen von vielen Codebeispielen auszugleichen bereit ist?
Im offiziellen Repository sind 55 Beispiele zu dem Framework vorhanden - welche einen großteil der Verwendungszenarien gut abdeckt
https://github.com/SmingHub/Sming/tree/develop/samples

Die Frage ist doch andersrum, ob es nötigt ist eine Vielzahl von redudanter Beispiele zu haben, deren Qualität oft zu wünschen übrig lässt. Hinzukommt das in der großen Menge an Arduino Code Beispielen immer wieder kopierte Codeschnipsel auftauchen, die an sich eine ziemlich dürftige und fehlerbehaftet Umsetzung darstellen.

Ich sehe das recht pragmatisch. Ich suche eine Plattform die möglichst stabilen Output erzeugt. Arduino ist da schon ganz ok, stürzt aber leider mal ab. Sming-basierte Projekte tun das vielleicht auch. Ausprobieren.

Ich kann hier aus eigner Erfahrung berichten: Über die Entwicklung des RGBWW Projekts war der Arduino ESP SDK wesentlich instabiler und ist mir ziemlich oft abgestürzt (WDT resets die vom SDK ausgelöst wurden und nichts mit meinem eigenen Code zu tun hatten).
Seit über einem Monat laufen alle meine RGBWW Controller auf Sming Code - Abstürze hatte ich keine (außer ich hab Code und Funktionalitäten getestet - aber im "Alltagsgebrauch" nicht).

Aber sicherlich gibt es auch Komponenten bei SMING die öfters Abstürzen würden als andere


Und in Abwandlung eines legendären Zitats braucht sowas eigentlich nur: Stability, Stability, Stability.


Dafür ist doch der Thread wunderbar geeignet - ausprobierne und Erfahrungen austauschen

Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: HCS am 13 April 2016, 14:15:23
Der Arduino IDE hat seine Berechtigung und ist für Einsteiger eine ganz nette Sache. Aber sobald man etwas mehr als nur ein simples Programm schreibt, dass nur einen geringen Funktionsumfang hat, schränkt der IDE massivst ein. Code Lookups und Dokumentation (die allgemein bei Arduino zu wünschen übrig lässt...  ::) ) is spärlich vorhanden. Es gibt keine vernünftige Übersicht zu definierten Variablen, Funktionen und Klassen.

Die Liste kann ich hier mit vielen weiteren Punkten füllen - ich bleibe bei der Aussage, der Arduino IDE ist für den ersten Einstieg in die Programmierung von MCs sehr hilfreich. Die Grenzen des IDEs sind meiner Meinung nach sehr schnell erreicht, wenn man sich intensiver mit der Materie auseinander setzt. (Aber selbst wenn die Grenzen erreicht sind, verharren viele Nutzer zu lange bei dem Arduino IDE, statt den Schritt weiter zu gehen und andere IDEs auszuprobieren.

Das sehe ich ganz genauso. Die Arduino IDE ist ein besseres NotePad.
Ich verwende schon seit langer Zeit sehr zufrieden das hier: http://www.visualmicro.com/

Damit mache ich u.A den LaCrosse Arduino sketch und das LaCrosseGateway und das ist ein wirklich großes Projekt.

Vorteil, man hat alles, was die Arduino IDE hat, aber in einer vernünftigen Umgebung, mit class explorer, intellisense,  code completion, ...
Und ein build ist (wenn es nicht gerade ein rebuild ist) um Kategorien schneller, weil nur die geänderten Files neu gebildet werde nun nicht wie bei der Arduino IDE generell ein rebuild gemacht wird.

IDEs sind natürlich Geschmacksache, aber wem ein Projekt in der Arduino IDE über den Kopf wächst, der kann sich das mal anschauen.
Und: nein, ich bin mit dem Hersteller weder Verwandt noch ... und auch nicht am Umsatz beteiligt.  :)
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 13 April 2016, 20:56:48
Moin HCS,

sieht auch sehr schön aus! Wie anfängerfreundlich sind die IDE und der Compiler denn zu installieren?
Bei Eclipse und Simg sind das schon einige Arbeitsschritte.

Gruß
Pf@nne
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: HCS am 14 April 2016, 08:02:42
sieht auch sehr schön aus! Wie anfängerfreundlich sind die IDE und der Compiler denn zu installieren?
Hmmm, anfängerfreundlich ist natürlich relativ.
Aber es ist eigentlich recht einfach. Man braucht die Arduino IDE als basis, da deren Compiler verwendet wird.
Visual Studio ist ein ganz normales Setup, die VisualMicro Extension kann einfach im Visual Studio als Extension ausgewählt und installiert werden und dann muss man noch den Pfad zur Arduino IDE konfigurieren und das war es dann.

Aber wenn man mit diesen Werkzeugen (besonders Visual Studio) noch nie gearbeitet hat, muss man sich da natürlich wie bei Allem einarbeiten ...
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 14 April 2016, 08:13:00
Das sind aber unterschiedliche Sachen.
Während das VisualMicro nur eine verbesserte IDE für Arduino ist, ist sming eine andere Basis. Das "was hinten rauskommt" ist also ein anderes Ergebnis. Und da soll sming wohl den stabileren Code erzeugen können weil es direkt auf der Espressif-Umgebung aufsetzt.
Wenn ich nur mal in der Lage wäre es komplett zu installieren. Auf 2 PCs und einer virtuellen Maschine versucht, irgendwas ging immer schief. Grumpf. Ist doch eigentlich nicht so kompliziert.

Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: mrpj am 15 April 2016, 08:56:01
Und da soll sming wohl den stabileren Code erzeugen können weil es direkt auf der Espressif-Umgebung aufsetzt.

Beides Arduino und Sming setzen auf dem espressif SDK auf - aber der Arduino ESP8266 Layer forciert  das Arduino Prinzip (alle Bearbeitung findet in loop() statt) - das erforderte scheinbar Eingriffe (loop ist an den WifiTimer vom SDK gebunden  :o) die vieles andere inkompatibel machen.

Sming arbeitet näher mit den SDK funktionen und verändert das verhalten des sdks nicht. Es ist eine Bibliothek, die verschiedene höhere Funktionen (webserver, tcpverbinden) mit vereinfachtem Funktionsaufrufen bereit stellt (und dabei das Verhalten des SDKs nutzt (event basiert) nutzt und nicht verändert.)

Auch z.b. statt die sdk aufrufe zum verbinden nutzen zu müssen

wifi_station_disconnect();
bool cfgreaded = wifi_station_get_config(&config);
if (!cfgreaded) debugf("Can't read station configuration!");

memset(config.ssid, 0, sizeof(config.ssid));
memset(config.password, 0, sizeof(config.password));
config.bssid_set = false;
strcpy((char*)config.ssid, ssid.c_str());
strcpy((char*)config.password, password.c_str());


kann man einfach sagen

WifiStation.confg("ssid", "password")

Was die Einfachheit der Installation angeht - es ist wirklich kein hexenwerk - das wichtigste ist, dass entweder in den windows umgebungs variablen die richtigen pfade gesetzt sind, oder dann eben im SMING Projekt.

Aber es gibt noch eine erfreuliche Nachricht - im SmingTeam wird gerade darüber geredet, wie man platform.io nutzen kann, damit es noch einfacher wird
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 15 April 2016, 10:46:25
Wenn ich das richtig verstanden habe, kann man doch unter Sming auch die Arduino-Libs verwenden für den ESP. Oder würde man sich dadurch hinten rum wieder was einfangen?
Hochkomplex sind die Programme ja eigentlich nicht.

Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: mrpj am 15 April 2016, 11:18:31
Im Prinzip ja - der Teufel steckt hier nur im detail:

- wenn die Bibliothek AVR spezifische Instruktionen nutzt, wird es nicht gehen (aber dann auch nicht mit dem Arduino ESP )
- wenn die Bibliothek speziell auf Funktionen vom Arduino ESP SDk zurückgreift, dann ist es auch nicht möglich (Das ist per se auch keine Arduino Bibliothek, sondern eine Arduino ESP Bibliothek)

Eine Vielzahl von Bibliotheken die Anpassungen wegen Hardware oder Arduino ESP gebraucht haben, kommt mit Sming mit

Ich bin im Moment etwas mehr mit Sming involviert - da ich aus dem RGBWW Projekt heraus einen Bugs entdeckt hatte bzw. auch am Funktionsumfang etwas vermisst habe. Dadurch habe ich auch mehr Einblicke gewonnen und finde das Prinzip hinter Sming besser/flexibler für einen Entwickler, als Arduino SDK.
Viele der zur Verfügung gestellten Klassen/Methoden erlauben es, davon Ableitungen zu treffen und Funktionen zu überschreiben.
Somit kann die sehr generell gehaltene HttpClient Klasse einfach zu einem HttpRestClient erweitert werden.

Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 19 April 2016, 09:26:50
Ich hab Eclipse und Sming jetzt immerhin soweit in einer virtuellen Maschine laufen, dass ich das Blink-Beispiel öffnen und kompilieren kann. Vermutlich hat bei den ersten Versuchen der Avira hinten rum beim Installieren einige Ming-Dateien ungefragt gelöscht oder die Installation nicht zugelassen.
Die Verbindung mit HTerm geht auch. Leider werden immer noch keine BIN-Dateien erzeugt die man dann flashen könnte. Grmpf. Mühseelige Sache.
 
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 19 April 2016, 09:53:17
Das Flashen sollte auch über die serielle Anbindung gehen....
Dazu musst du den COM-Port im user MakeFile anpassen.
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Bapt. Reverend Magersuppe am 19 April 2016, 10:31:37
Das Flashen würde glaub ich funktionieren, aber es werden im out/firmware-Verzeichnis keine *.bin-Dateien erzeugt die geflasht werden können.
Tzefix.

Was unter anderem unklar ist:
Das esptool welches man selber kompiliert, das kopiert man dann um, soll das dann esptool.exe oder esptool2.exe heissen?
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Omega-5 am 19 April 2016, 11:38:25
Das Flashen würde glaub ich funktionieren, aber es werden im out/firmware-Verzeichnis keine *.bin-Dateien erzeugt die geflasht werden können.
Tzefix.

Ich habe auch mal versucht Sming mit Eclipse nach der Anleitung von Pf@nne zu installieren (Windows 7). So richtig funktioniert es von der IDE aus noch nicht, aber von der Konsole geht es. Allerdings fehlte zum Erstellen der bin-Dateien, esptool2.exe. Nach dem ich es nirgendwo auf der Platte gefunden habe, habe ich es aus den Quellen (C:\Espressif\examples\rboot\esptool2) kompiliert und nach C:\tools\mingw64\mysys\1.0\bin\esptool2.exe kopiert. Wenn man SPIFFS (spiffy.exe) benutzt, gilt das gleiche. Jetzt läuft bei mir wenigstens das Kompilieren des Basic_Blink Sample von der Konsole ohne Fehlermeldung.

Gruß Friedrich
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 19 April 2016, 13:47:40
Die esptool2.exe ist bei mir im c:\espressif\utils
Damit die gefunden wird muss sie aber noch im Projekt als Umgebungsvariable angelegt werden.

Was meckert Eclipse denn?
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Omega-5 am 20 April 2016, 15:08:08
Die esptool2.exe ist bei mir im c:\espressif\utils
Damit die gefunden wird muss sie aber noch im Projekt als Umgebungsvariable angelegt werden.

Was meckert Eclipse denn?
Bei mir war nur ein esptool.exe im angegebenen Pfad.  >:(

Wegen der diversen Warnings und Errors muss ich erst noch mal selber sehen. Im Moment ist das Wetter zu gut für den Bastelkeller.  ;)
Nur kurz, wenn ich bei den Projekten unter "Sming Examples" erst ein Project -> Clean (all projects) mit Start a build immediatyely mache, werden ein oder zwei Projekte nicht kompiliert. Und bei jeder Wiederholung immer wieder andere Projekte, also nicht reproduzierbar. Im Moment z.B.:
"Invalid project path: Include path not found (C:\tools\sming\Sming\Library).   Basic_SmartConfig      pathentry   Path Entry Problem".
Woher kommt der Pfad?, den gibt es ja wirklich nicht. Bei allen anderen Projekten steht dort  "C:\tools\sming\Sming\Libraries".

Gruß Friedrich

PS: Übrigens, wer es nicht erkannt hat, mein Avatar zeigt einen Kletterer. (Lasst euch nicht hängen.) ;)
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Pf@nne am 20 April 2016, 19:35:49
Moin Friedrich,

es ist immer schwer aus der Ferne da zu unterstützen.
Zumal ich auch nicht zu 100% der Spezie dafür bin.
Ich staune selber wie das alles so klappt.

Wenn nichts mehr hilft, kann ich ja mal über TeamViewer reinsehen.
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: mrpj am 22 April 2016, 12:29:02
Bei mir war nur ein esptool.exe im angegebenen Pfad.  >:(

Wegen der diversen Warnings und Errors muss ich erst noch mal selber sehen. Im Moment ist das Wetter zu gut für den Bastelkeller.  ;)
Nur kurz, wenn ich bei den Projekten unter "Sming Examples" erst ein Project -> Clean (all projects) mit Start a build immediatyely mache, werden ein oder zwei Projekte nicht kompiliert. Und bei jeder Wiederholung immer wieder andere Projekte, also nicht reproduzierbar. Im Moment z.B.:
"Invalid project path: Include path not found (C:\tools\sming\Sming\Library).   Basic_SmartConfig      pathentry   Path Entry Problem".
Woher kommt der Pfad?, den gibt es ja wirklich nicht. Bei allen anderen Projekten steht dort  "C:\tools\sming\Sming\Libraries".

Gruß Friedrich

PS: Übrigens, wer es nicht erkannt hat, mein Avatar zeigt einen Kletterer. (Lasst euch nicht hängen.) ;)

Ich bin mir sehr sicher, dass es auch hier an der falschen Konfiguration der Pfad variablen liegt.
Die Examples kompilieren alle bei mir reibungslos, und sie kompilieren vor allem auch im CI vom Projekt.

Es gibt hier einen guten Eintrag im Sming Wiki zum Thema Windows Troubleshooting:
https://github.com/SmingHub/Sming/wiki/Troubleshooting-Windows

Poste doch mal die ganzen variablen aus dem command hier, damit man nachschauen kann wie das bei dir eingestellt ist
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: Omega-5 am 22 April 2016, 15:25:16
Danke für euere Hilfsangebote. Ich weiß das meine Installationen nicht so ganz einfach zu händeln sind, da ich neben Eclipse/Sming auch noch Atmel Studio 4, 6 und 7, so wie WinAVR-20100110 und Arduino-IDE_1.6.5 installiert habe. Die Einträge im Sming Wiki zum Thema Windows Troubleshooting habe ich durch probiert, alles i.O., einzig "where make" findet drei Einträge.
C:\Users\fbleikamp>where make
C:\tools\mingw64\msys\1.0\bin\make.exe
C:\Program Files\WinAVR-20100110\utils\bin\make.exe
C:\Program Files (x86)\Atmel\AVR Tools\AVR Toolchain\bin\make.exe

Der Pfad ist natürlich auch sehr umfangreich, sollte aber kein Problem sein.
C:\tools\mingw64\bin;C:\tools\mingw64\msys\1.0\bin;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\PC Connectivity Solution\;C:\Program Files\WinAVR-20100110\bin;C:\Program Files\WinAVR-20100110\utils\bin;C:\Program Files (x86)\KOBIL Systems\KOBIL ZKA-Sig-API;C:\Program Files (x86)\KOBIL Systems\KOBIL ZKA-Sig-API;C:\Program Files (x86)\Atmel\AVR Tools\AVR Toolchain\bin;c:\Program Files(x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;c:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Samsung\Samsung PC Studio 3\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Eclipse Foundation\4.4.2\eclipse;C:\Program Files (x86)\Atmel\Flip 3.4.7\bin;C:\ProgramData\chocolatey\bin;
Aber wie schon mal gesagt, es ist kein Wetter für den Bastelkeller. Also erst mal "Füße still halten". Bis demnächst.

Gruß Friedrich
Titel: Antw:Sming als Alternative zu Arduino
Beitrag von: PeMue am 23 April 2016, 17:05:28
Hallo Friedrich,

Ich weiß das meine Installationen nicht so ganz einfach zu händeln sind, da ich neben Eclipse/Sming auch noch Atmel Studio 4, 6 und 7, so wie WinAVR-20100110 und Arduino-IDE_1.6.5 installiert habe.
ich habe WinAVR und die Arduino IDEs portabel installiert, d.h. WinAVR starte ich per Batch Skript und die Arduino IDE braucht sowieso keinen Pfad. Ob das mit dem Atmel Studio auch geht, weiß ich nicht.

Aber wie schon mal gesagt, es ist kein Wetter für den Bastelkeller. Also erst mal "Füße still halten". Bis demnächst.
Schön für Dich, bei uns regnet es (ein Schwabe würde es etwas deftiger ausdrücken).

Viele Grüße

Peter