• Herzlich willkommen!

    Das Team von »Doctor Brick« heißt Euch herzlich willkommen und wünscht Euch viel Spaß hier!
    »Doctor Brick« ist eine anerkannte Community (RLOC) für erwachsene LEGO Enthusiasten, auch AFOLs (= Adult Fans Of LEGO) genannt.
    Wir können uns hier über alle Belange des LEGO Hobbys austauschen wie z.B. Set- und Teilefragen, Vorstellung und Rezensionen von Legobauten.
    Bitte beachtet die Nutzungsbedingungen und den Verhaltensleitfaden.

Powered Up – mal ganz ohne Smartphone

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
Zum Programmieren das Handy als Terminal über Wlan verbunden ( ESP läuft als Webserver und gibt die IP vor ).
Damit glaube ich könnten dann alle glücklich werden.
Dann müsste der User (nach meinem Dafürhalten) entweder mit der Arduino IDE und der seriellen Verbindung das WLAN konfiguriren oder der ESP braucht eine Speicherkarte die man dann entsprechend einrichtet. Oder ist da ein Denkfehler?

Das NonPlusUltra für uns ....Damit glaube ich könnten dann alle glücklich werden.
Das seh ich für die technic Ecke, für Standmodelle oder Züge eher nicht.
 

GBCPeter

Herr der Bälle
Teammitglied
Registriert
21 Apr. 2012
Beiträge
3.404
Ort
Wuppertal
Hallo Werner, da spreche ich auch die Technik Ecke an, für alles andere ist die Blocklösung am besten.
 

Ruppie

Mitglied
Registriert
9 März 2020
Beiträge
161
Ort
Duisburg
Oder ist da ein Denkfehler?.

Der Denkfehler liegt, meiner Meinung nach, in den Rollen, oder in der Architektur der gedachten Lösung.
Ziel sollte sein das der "Anwender" nie zum Programmierkabel greifen muss.
Änderungen sollten stets die Entwickler vornehmen. Änderungswünsche sollte zentral in einem forum / Github - Issues verwaltet und gesammelt werden.
Gleichwohl könnte man natürlich auch die Sourcen offenlegen, eben wie bei BC2.
 

GBCPeter

Herr der Bälle
Teammitglied
Registriert
21 Apr. 2012
Beiträge
3.404
Ort
Wuppertal
Der ESP spannt ein eigenes Wlan-Netz auf und der Anwender loggt sich da ein, genauso wie im Wlan zu Hause
 

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
Der ESP spannt ein eigenes Wlan-Netz auf und der Anwender loggt sich da ein, genauso wie im Wlan zu Hause
Ah, ja, das leuchtet mir ein!
Das hatte ich schon mehrfach gefragt, und die Beispiele die ich bisher gesehen hatte gingen alle "andersrum".
Vielen Dank!
 

Ruppie

Mitglied
Registriert
9 März 2020
Beiträge
161
Ort
Duisburg
Ah, ja, das leuchtet mir ein!
Das hatte ich schon mehrfach gefragt, und die Beispiele die ich bisher gesehen hatte gingen alle "andersrum".
Vielen Dank!

Hallo,
in etwa wie hier: https://randomnerdtutorials.com/esp32-access-point-ap-web-server/

Wie die Namen und Passwörter sonst auf den ESPk ämen:
Wenn man keine zugängliche SD Karte hat, böte sich eine einfaches BLE protokoll an, wo man diese im ESP32 einträgt.

Ansonsten schau auch mal hier dynamische Konfiguration von WLAN

https://iotbyhvm.ooo/dynamic-wlan-configuration-esp32/

https://iotappstory.com/wiki/arduino-esp

https://www.instructables.com/id/ESP8266-and-ESP32-With-WiFiManager/
 
Zuletzt bearbeitet:

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
Hallo,

vielen Dank an Alle für die guten Ideen.
Ich habe das jetzt mal umgesetzt.

Die Anwendung: Besucher auf einer Ausstellung sollen via Fernbedienung eine Aktion auslösen.
In meinem Fall (ich habe ihn mal „Karussell“ genannt) soll ein Motor mit einer vorgegeben Geschwindigkeit für eine bestimmte Zeit laufen.

Geschwindigkeit und Zeit sind in dem microHub gespeichert.

Wie lässt sich das übersichtlich konfigurieren?

Was man braucht ist irgendwas mit einem Browser und WLAN; das kann ein Laptop sein, oder auch ein Uralt-Handy.

Das microHub agiert als WLAN-AP und Webserver! Der Weg ist also
- auf dem Smartphone mit dem passenden WLAN verbinden, ich habe meins so genannt, dass ich es gut finde ;-)

Screenshot_20201003-124938_Settings_ji.jpg

- einen Browser starten, auch hier sind die Ansprüche äußerst gering
- in die Adressleiste 192.168.4.1 eingeben

Screenshot_20201003-125036_Chrome_ji.jpg
- mit der grünen Taste der FB den Webdienst starten, das wird auch angezeigt, die FB wechselt die LED-Farbe.

Der Motor läuft mit der vorgegeben Geschwindigkeit, die kann jetzt neu justiert und auch die Zeit eingestellt werden. „Speichern“ legt das Ganze auf dem microHub ab, das Smartphone kann wieder weg.

Nett!
 

Ruppie

Mitglied
Registriert
9 März 2020
Beiträge
161
Ort
Duisburg
@ Werner : Dafür das dich das im Grunde nicht interessiert, und du es nicht kannst,wie du ja oft bekräftigt hast, hast du das aber erstaunlich fix hinbekommen :thanks::good:
 

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
Moin Marc,

Ja, danke. (mm)
Einfach einen Quellcode aus dem Internet kopiert und die Texte angepasst. Das kann ich ganz gut.

Mein Problem liegt daran, dass ich die Strukturen von der Arduino-Programmiersprache (was immer das überhaupt ist) nicht durchschaue, die IDE nur klapprig läuft, und vor allem dass es offenbar keine statischen Variablen im Sinne von VBA gibt, dass die inos sich alphabetisch sortieren und damit eine Rename einer Datei zu Dutzenden von Fehlern führt.

Ich verzweifle allerdigs meist am Handling der Variablen, da dauern drei Programzeilen schon mal eine Stunde.
Jemand der das beherrscht wäre vermutlich in einer Minute fertig.

Und: es interessiert mich schon, ich brauche es nicht.
Andere könnten es brauchen die interessiert es aber nicht. Verrückte Welt.
 
Zuletzt bearbeitet:

RR76

Urgestein
Registriert
8 Apr. 2019
Beiträge
1.147
Deine Idee mit dem Atom hat mir so gut gefallen, dass ich den auch mal getestet habe. Er steckt an einem Port des Hubs und verbindet sich beim Einschalten automatisch mit dem Hub und einem PS3-Controller. Also einschalten und fahren.

Jetzt haben wir also:
- Deine (Zug-)Steuerung über die originale Fernsteuerung
- Meine Ansteuerung für Fahrzeuge über einen PS3-Controller
- Deine Software, über die man auch eine Konfiguration speichern könnte
- @Ruppie verfolgt zwar zur Zeit einen anderen Ansatz, könnte aber bestimmt auch zur Verfeinerung der Steuerung beitragen, da sind meine Kenntnisse eher rudimentär.

Wenn wir jetzt rausfinden was die anderen wollen (wenn daran überhaupt Interesse besteht), zusammenarbeiten und @gbc-peter eine Kleinserie Adapterkabel auflegt hätten wir eine ziemlich frei konfigurierbare Alternative zum ständig mitlaufenden Smartphone. Das wird vermutlich auch nicht perfekt und für alle Sonderfälle geeignet, aber ein deutlicher Fortschritt gegenüber dem, was Lego zur Zeit anbietet.

Meine derzeitige Idee ist, dass ich in jedes Fahrzeug einen Atom stecke, den ich vorher in Arduino konfiguriert habe. Das ist für meine Zwecke einfacher als eine Konfigurations-Software zu programmieren und löst mein Problem mit dem selbstgebauten Controller, dass ich den verbundenen Hub nicht erkennen kann.

Jetzt noch die beiden entscheidenden Fragen:

Besteht von Eurer Seite Interesse an einer Zusammenarbeit?

Besteht überhaupt so viel Interesse daran, dass sich das lohnt?
 

Ruppie

Mitglied
Registriert
9 März 2020
Beiträge
161
Ort
Duisburg
Moin Marc,

Ja, danke. (mm)
Einfach einen Quellcode aus dem Internet kopiert und die Texte angepasst. Das kann ich ganz gut.

Das nennt man Transferleistung, man muss das Rad nicht immer neu erfinden .

Mein Problem liegt daran, dass ich die Strukturen von der Arduino-Programmiersprache (was immer das überhaupt ist) nicht durchschaue

Das ist C/C++ nur eben sehr stark gekapselt, die Idee dahinter ist: Der Arduino Sketch erstellende betrachtet alles nur als Baukasten, in dem er die vorhandenen Bibliotheken "nur" zusammenfügt, eben wie bei LEGO. Das Problem ist, das die meissten Bibliotheken mässig dokumentiert sind

die IDE nur klapprig läuft, und vor allem dass es offenbar keine statischen Variablen im Sinne von VBA gibt, dass die inos sich alphabetisch sortieren und damit eine Rename einer Datei zu Dutzenden von Fehlern führt..

Aus bestimmten Gründen empfehle ich dir, einmal einen Blick auf Visual Studio Code, genauer Platform.io zu werfen. Da kann man auch unter Anwenung des Arduino Framework programmieren, die IDE ist aber deutlich komfortabler.Ich bin mir sicher hier schon mal statische Variablen verwendet zu haben.

Wichtigster Grund: Die Geschwindigkeit mit dem Platform.IO kompiliert, und Download auf das Gerät macht ist "um längen" schneller.
Im Netz gibt es manigfaltige Anleitungen, besonders zu: ESP32 --> Platform.io --> Arduino Programmierung.


Ich verzweifle allerdigs meist am Handling der Variablen, da dauern drei Programzeilen schon mal eine Stunde.
Jemand der das beherrscht wäre vermutlich in einer Minute fertig.

Da mit bist du nicht alleine, viel Erfahrung mag viel helfen, aber bei schlecht dokumentierten Libs sucht sich ein Profi auch dumm, er kann nur leichter Vermutungen anstellen-
Wie beschrieben , Übung macht den Meister, ich übe auch noch ;-)

Und: es interessiert mich schon, ich brauche es nicht.
Andere könnten es brauchen die interessiert es aber nicht. Verrückte Welt.


Unbedingt brauchen tue ich es auch nicht, aber ich finde manches als Knobelaufgabe als Hobbiebeschäftigung spannend.
 

Ruppie

Mitglied
Registriert
9 März 2020
Beiträge
161
Ort
Duisburg
Jetzt noch die beiden entscheidenden Fragen:

1.Besteht von Eurer Seite Interesse an einer Zusammenarbeit?
2 Wenn wir jetzt rausfinden was die anderen wollen (wenn daran überhaupt Interesse besteht),.
3. Besteht überhaupt so viel Interesse daran, dass sich das lohnt?


1. Im Prinzip schon - Wenn es im Hause ist werde ich mal einen Blick auf meinen M5 Stack werfen, ist ja im Kern das selbewie der Atom

Ansonsten finde ich deine Lösung mit dem PS3 und dem Atom schon sehr cool, ebenso Werners Beispiel mit dem Webserver.
Meine Lösung funktioniert zwar auch , aber ist etwas "holprig" der Anwendung, das Gamepad und ESP32 Modul sich doch nicht so gut zusammenfügen wie ich erwatet hätte.
Die wichtigste erkenntniss, es ist unwirtschaftlich. Die Frage wäre, ob es lohnesnswert wäre nochmal ein Gamepad mit integriertem ESP32 zu bauen, oder ob hierfür im Zweifel
ein (gebrauchtes PS3/ PS4) gamepad nicht zu günstig sind, was ich befürchte,denn: Was wäre ein angemessener VK für ein ESP32 Gamepad.


PS: Ich habe den Lieferanten des Gamepad mal angesprochen ob ein Update gelant ist, keine Antwort.
Zu beachten ist, das es sich im Prinzip um ein Produkt handelt, welches seit 2012 nicht mehr weiterentwickelt wird.
Der "Jemand" der eine eigen Lösung entwickelt und fertigt, waären also wir oder niemand.

In der Zusammenfassung sehe ich in einem separate Gamepad ehrlicherweise jedoch derzeit nur einen bedingten nährwert, ausser das dann auch ein separater Atom entfällt.
Ändert aber nix daran, bei Zeiten mit euch zusammenzu arbeiten, oder eben nur bisweilen Ideen zu tauschen.


2. Ist das Kernproblem, versuche ich (wie Werner) seit einem knappen Jahr herauszufinden. Irgendwie gelingt es mir nicht "die anderen" also unsere potentiellen "Kunden" zu erreichen.


3. Besteht überhaupt so viel Interesse daran, dass sich das lohnt?[/QUOTE]
Ist so eine Henne - Ei Frage: Im Prinzip gebe ich dir Recht , das I Phone hatte jedoch auch keiner Vermisst bevor es da war.
Dummerweise mangelt es momentan an Platformen / Messen um unsere Ergebnisse einer breiteren Masse nochmal vorzustellen.


Ich habe mehrfach, in entsprechenden Kommentaren, versucht auch mehr oder minder bekannte Youtuber, im Anschluss an die betreffenden Rezensionen , Anzusprechen. Diese auch per Link auf diese und weitere Threads verwiesen und eingeladen. Stets ohne erkenbares Ergebniss. Da ist jemand aus diesem oder bei 1000 Steine gefragt der da eine größere Lobby geniesst ;-) .


Wenn ich wieder daheim bin stelle ich mal einen Kommentar von "Brick-a-brac" ein was er seiner Meinung nch zur Mangelden Beteiligung der "comunity" bei der Lösungsfindung sagte.
 

efferman

Technisches Labor
Teammitglied
Ehren-Doctor
Registriert
14 Feb. 2012
Beiträge
10.153
Ort
Da wo die Katzenaugen leuchten.
Da ist jemand aus diesem oder bei 1000 Steine gefragt der da eine größere Lobby geniesst ;-) .
Macht euch nix draus, auch ich werde mitunter ignoriert.
Ich finde das projekt sehr interressant, aber abgesehen von 'goil' kann ich zur entwicklung nix beitragen. Und ich fürchte das wird hier den meisten so gehen.
 

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
Moin!
Ich finde das projekt sehr interressant, aber abgesehen von 'goil' kann ich zur entwicklung nix beitragen. Und ich fürchte das wird hier den meisten so gehen.
Es sind drei Projekte, die verschiedene Ansätze verfolgen.
Meines z.B. geht von fertig konfigurierten Cotrollern aus, ich habe ein paar an User zum Testen geschickt. Die packt man aus, gibt Strom drauf, fertig.
Funktionen: einfache Batteriebox und 2 Züge mit bis zu 4 Hubs steuern. Da braucht der User nix zu etwickeln, es ist - äh - fertig :giggle:
Kostet 16,-- und tut. (Hoffe ich). Auch das "Karussell" oben ist fix und fertig. Bis zu vier solcher "Anwendungen" sind möglich, in einem "microHub".

Heute schreibe ich noch eine Anwendung zu Weichenstellen, ich hoffe eine Stunde genügt....

Was ich brauchte sind halbwegs allgemeine "Aufgaben" (Krokodil! Zug mit zwei Motoren gegenläufig!) Aber das tut es ja alles schon.....
 
Zuletzt bearbeitet:

RR76

Urgestein
Registriert
8 Apr. 2019
Beiträge
1.147
Die "allgemeinen Aufgaben" sind leicht zu integrieren, ich kann den Liebherr ansteuern, ich kann den 42099 ansteuern und ich könnte auch automatisch unterscheiden lassen, was gerade verbunden ist.

Meine Test-Trucks lassen sich beide mit dem 42099-Profil fahren, das könnte man jetzt am 4. Port noch um Licht oder die Sattelplatte erweitern.

Was macht aber jetzt jemand, der den Lenkungs-Motor so verbauen musste dass er andersrum dreht oder statt dem zweiten Antriebsmotor eine zweite Zusatzfunktion verbaut?
Hier wäre es interessant, dem Nutzer die Konfiguration zu ermöglichen, ähnlich BC2.

@efferman
Wenn das ein "will ich haben" ist sind wir im Technic-Bereich gerade mal zu dritt, die Interesse daran haben.
Da lohnt keine große Entwicklung einer Konfigurationsmöglichkeit, sondern ich ändere lieber für Einzelstücke ein paar Zeilen Quelltext.
 

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
Hallo,

hier mal zur Erklärung, wie mein Programm derzeit funktioniert: Das ist das Projekt, da sieht man verschiedene Files.
Die meisten sind fix, nur in Common werden ein paar Werte festgelegt. Und rechts sieht man die 3 Profile (Züge, Karussell, Batteriekasten)
untitled2.jpg


So und hier der komplette(!) Code für das HTML der Konfig für zwei Parameter:

Code:
void P003_html()
{

  client.println("<h1>");
  client.println("<i>Karussell</i>");
  client.println("</h1>");
  client.println("<h1>");
  client.println("Geschwindigkeit      ");
  client.println(P3Speed);
  client.println("</h1>");
  client.println("<p><a href=\"/Button1Plus\"><button class=\"button\">+</button></a>");
  client.println("<a href=\"/Button1Minus\"><button class=\"button\">-</button></a></p>");

  client.println("<h1>");
  client.println("Zeit         ");
  client.println(P3Time);
  client.println("</h1>");
  client.println("<p><a href=\"/Button2Plus\"><button class=\"button\">+</button></a>");
  client.println("<a href=\"/Button2Minus\"><button class=\"button\">-</button></a></p>");
}

Und hier die komplette Auswertung dazu:

Code:
void P003_web()
{
  logn(webHeader.c_str());

  if (webHeader.indexOf("Button1Plus") > 0 && webHeader.indexOf("Button1Plus") < 100)  P3Speed = P3Speed + 10;
  if (webHeader.indexOf("Button1Minus") > 0 && webHeader.indexOf("Button1Minus") < 100) P3Speed = P3Speed - 10;
  if (P3Speed >= 80) P3Speed = 80;
  if (P3Speed <= 0) P3Speed = 0;
  Serial.println(P3Speed);

  if (webHeader.indexOf("Button2Plus") > 0 && webHeader.indexOf("Button2Plus") < 100)    P3Time = P3Time + 1;
  if (webHeader.indexOf("Button2Minus") > 0 && webHeader.indexOf("Button2Minus") < 100)  P3Time = P3Time - 1;
  if (P3Time <= 1)     P3Time = 1;
  Serial.println(P3Time);

  if (webHeader.indexOf("Speichern") >= 0)   webLoop = false;

}

Das ist nicht sooooo aufregend :cool1:
 

IlexGT

Mitglied
Registriert
6 Nov. 2019
Beiträge
346
Ort
Mittelfranken
Wenn das ein "will ich haben" ist sind wir im Technic-Bereich gerade mal zu dritt, die Interesse daran haben.
Also ich glaube nicht das es an mangelten Interesse liegt, sondern eher an mangelnden Verständnis für die Materie. Ich war anfangs noch bei euch, jetzt verstehe ich nur noch Bahnhof. Aber es mal mit Effes worten zu beschreiben: goil, haben will, steuerung ohne smartphone ist gut.

aber jetzt gehts schon los. Was brauche wo kann ich kaufen und vorallem ich kann nicht programieren....
 

Lok24

Elektronikbahner
Registriert
11 Sep. 2019
Beiträge
1.451
aber jetzt gehts schon los. Was brauche wo kann ich kaufen und vorallem ich kann nicht programieren....

Dann habe ich die Idee nicht gut rübergebracht.
Programmieren brauchst Du nichts, das Ding ist fertig, plug & play.

Derzeit bin ich der "Alleinvertrieb", zu Testzwecken.
Es gibt derzeit drei Anwendungen auf einem microHub:
- Motor auf Tastendruck für eine bestimmte Zeit starten ("Karussell")
- Züge (auch mit zwei Hubs pro Zug oder zwei Motoren, gegenläufig)
- Batteriekasten (keine FB, einfach Motor dran, Geschwindigkeit einstellbar)

Und ich kann Dir bei Interesse einen schicken, zum Testen, Retourenschein und Rückporto liegen bei.
Was Du brauchst: FB, ein oder zwei City-Hubs (Technic sollten aber auch gehen) und ein USB-C-Kabel zum PC oder ein USB-C-Netzteil oder eine Powerbank.

Bei Interesse Adresse per PN.
 
Zuletzt bearbeitet:
Oben