P_Schedule
- PeterVT11 Verified
- MLL-TEAM
- Beiträge: 203
- Registriert: Mi 9. Apr 2025, 21:21
- Hat sich bedankt: 435 mal
- Wurde bedankt: 474 mal
P_Schedule
Hallo,
ich hatte die neue Schedule-Funktion ja schon in der alten Tageszeitung vorgestellt. Ich hab jetzt einen eigenen Thread dafür aufgemacht, damit man sie leichter wiederfindet.
Nachdem mir die eingebaute Schedule-Funktion nicht so zugesagt hat, habe ich eine Extension programmiert (Danke an Hardi zum Einstieg in die Extension-Materie).
In der P_Schedule-Funktion können die Zeitwerte in Stunden und Minuten eingegeben werden. Ebenso den Zufallsfaktor, der ggf. 0 sein darf.
Die Erweiterung kann von Github heruntergeladen werden. Dort ist die aktuelle Version hinterlegt.
https://github.com/PeterVT11/P_ScheduleMLX
Die ZIP-Datei muss nach P_ScheduleMLX (also ohne das anhängende "-main" im Verzeichnis C:\Users\<Benutzername>\Documents\Arduino\libraries entpackt werden. Nach einem Neustart des Programm-Generators ist die Funktion unter Erweiterungen zu finden.
In diesem Verzeichnis ist auch eine PDF-Datei mit der Beschreibung.
Es ist eine Beta-Version, sie kann also noch Fehler enthalten. Aktuell ist das die Version 0.19. Neu ist die Unterstützung für den Raspberry Pico.
ich hatte die neue Schedule-Funktion ja schon in der alten Tageszeitung vorgestellt. Ich hab jetzt einen eigenen Thread dafür aufgemacht, damit man sie leichter wiederfindet.
Nachdem mir die eingebaute Schedule-Funktion nicht so zugesagt hat, habe ich eine Extension programmiert (Danke an Hardi zum Einstieg in die Extension-Materie).
In der P_Schedule-Funktion können die Zeitwerte in Stunden und Minuten eingegeben werden. Ebenso den Zufallsfaktor, der ggf. 0 sein darf.
Die Erweiterung kann von Github heruntergeladen werden. Dort ist die aktuelle Version hinterlegt.
https://github.com/PeterVT11/P_ScheduleMLX
Die ZIP-Datei muss nach P_ScheduleMLX (also ohne das anhängende "-main" im Verzeichnis C:\Users\<Benutzername>\Documents\Arduino\libraries entpackt werden. Nach einem Neustart des Programm-Generators ist die Funktion unter Erweiterungen zu finden.
In diesem Verzeichnis ist auch eine PDF-Datei mit der Beschreibung.
Es ist eine Beta-Version, sie kann also noch Fehler enthalten. Aktuell ist das die Version 0.19. Neu ist die Unterstützung für den Raspberry Pico.
Viele Grüße Peter
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
-
- MLL-TEAM
- Beiträge: 170
- Registriert: Do 10. Apr 2025, 19:30
- Wohnort: Trier
- Hat sich bedankt: 140 mal
- Wurde bedankt: 163 mal
- Kontaktdaten:
Re: P_Schedule
Hallo Peter,
danke für diese nette Erweiterung.
Leider funktioniert der link bei mir nicht. Es kommt ein Fehler 404, die Seite existiert nicht ...
Kannst Du das bitte nochmal überprüfen?
Danke
Harold
danke für diese nette Erweiterung.
Leider funktioniert der link bei mir nicht. Es kommt ein Fehler 404, die Seite existiert nicht ...
Kannst Du das bitte nochmal überprüfen?
Danke
Harold
-
- MLL-TEAM
- Beiträge: 170
- Registriert: Do 10. Apr 2025, 19:30
- Wohnort: Trier
- Hat sich bedankt: 140 mal
- Wurde bedankt: 163 mal
- Kontaktdaten:
Re: P_Schedule
Ich habe es gefunden:
https://github.com/PeterVT11/P_ScheduleMLX
Kleiner Tippfehler BT anstatt VT.
Harold
https://github.com/PeterVT11/P_ScheduleMLX
Kleiner Tippfehler BT anstatt VT.
Harold
- PeterVT11 Verified
- MLL-TEAM
- Beiträge: 203
- Registriert: Mi 9. Apr 2025, 21:21
- Hat sich bedankt: 435 mal
- Wurde bedankt: 474 mal
Re: P_Schedule
Hallo Harold,
Danke für die Info. Da war ein Tippfehler in meinem Link. Hab´s geändert.
Danke für die Info. Da war ein Tippfehler in meinem Link. Hab´s geändert.
Viele Grüße Peter
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
- Gasco Verified
- Novize des Beleuchters
- Beiträge: 237
- Registriert: Di 15. Apr 2025, 14:24
- Wohnort: Grevenbroich
- Hat sich bedankt: 329 mal
- Wurde bedankt: 535 mal
Re: P_Schedule
Hallo Peter
ich hab noch eine Frage zur Funktion des Zufalls Ticks. Wir haben mal darüber gesprochen, aber zu meiner Schande muß ich gestehen, ich habs vergessen.
Könntest du mir das nochmal erläutern ?
Folgender Fall, zwei Schlafzimmer, Eltern und Kind, sie sollten nach dem Fernsehabend zu unterschiedlichen Zeiten zu Bett gehen. Wenn möglich nicht jeden Tag gleich. Läßt sich das über den Zufalls Tick realisieren ?
ich hab noch eine Frage zur Funktion des Zufalls Ticks. Wir haben mal darüber gesprochen, aber zu meiner Schande muß ich gestehen, ich habs vergessen.
Könntest du mir das nochmal erläutern ?
Folgender Fall, zwei Schlafzimmer, Eltern und Kind, sie sollten nach dem Fernsehabend zu unterschiedlichen Zeiten zu Bett gehen. Wenn möglich nicht jeden Tag gleich. Läßt sich das über den Zufalls Tick realisieren ?
Im Biathlon 2ter geworden... wie?? er hatte doch eine Waffe dabei
viele Grüße aus dem Rheinland
Bodo
und denkt an das 11te Gebot
dua di ned deischn....
noch was wichtiges ...http://www.flugpate.com/
mein Projekt: meine Neue
viele Grüße aus dem Rheinland
Bodo
und denkt an das 11te Gebot
dua di ned deischn....
noch was wichtiges ...http://www.flugpate.com/
mein Projekt: meine Neue
- PeterVT11 Verified
- MLL-TEAM
- Beiträge: 203
- Registriert: Mi 9. Apr 2025, 21:21
- Hat sich bedankt: 435 mal
- Wurde bedankt: 474 mal
Re: P_Schedule
Hallo Bodo,
das ist ggf. mit den Zufalls-Ticks möglich. So kann man z.B. 20:00 ein und 21:00 Uhr aus machen und einen Zufallstick von 10 verwenden, das wären dann +- 30 Minuten. D.h. also ein zwischen 19:30 und 20:30 und aus zwischen 20:30 und 21:30. Allerdings wird P_Shedule das so nicht zulassen und den Zufallsfaktor verkürzen. Sonst könnte es ja passieren, dass der Ausschaltbefehl vor dem Einschalten kommt.
Ich würd's so vielleicht machen.
Auszug aus der Doku:
Der Zufallswert kann programmtechnisch automatisch verkürzt werden, wenn sich Aus- und Einschaltzeit in die Quere kommen.
Beispiel für die Einschaltzeit 8 Uhr 00 und Ausschaltzeit 9 Uhr bei einem Zufallswert von 15 sprich 45 Minuten. Damit würde es eine Überschneidung von Ein- und Ausschaltzeitpunkt geben und das Ganze zum wirklichen Zufall machen. Das ist aber nicht gewollt. Daher passt das Programm den Zufallswert an (ggf. sogar auf 0).
das ist ggf. mit den Zufalls-Ticks möglich. So kann man z.B. 20:00 ein und 21:00 Uhr aus machen und einen Zufallstick von 10 verwenden, das wären dann +- 30 Minuten. D.h. also ein zwischen 19:30 und 20:30 und aus zwischen 20:30 und 21:30. Allerdings wird P_Shedule das so nicht zulassen und den Zufallsfaktor verkürzen. Sonst könnte es ja passieren, dass der Ausschaltbefehl vor dem Einschalten kommt.
Ich würd's so vielleicht machen.
Auszug aus der Doku:
Der Zufallswert kann programmtechnisch automatisch verkürzt werden, wenn sich Aus- und Einschaltzeit in die Quere kommen.
Beispiel für die Einschaltzeit 8 Uhr 00 und Ausschaltzeit 9 Uhr bei einem Zufallswert von 15 sprich 45 Minuten. Damit würde es eine Überschneidung von Ein- und Ausschaltzeitpunkt geben und das Ganze zum wirklichen Zufall machen. Das ist aber nicht gewollt. Daher passt das Programm den Zufallswert an (ggf. sogar auf 0).
- Dateianhänge
-
- P_Schedule.pdf
- (369.36 KiB) 38-mal heruntergeladen
Viele Grüße Peter
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
- Gasco Verified
- Novize des Beleuchters
- Beiträge: 237
- Registriert: Di 15. Apr 2025, 14:24
- Wohnort: Grevenbroich
- Hat sich bedankt: 329 mal
- Wurde bedankt: 535 mal
Re: P_Schedule
Hallo Peter
danke für Infos, ich werde das morgen mal austesten
danke für Infos, ich werde das morgen mal austesten
Im Biathlon 2ter geworden... wie?? er hatte doch eine Waffe dabei
viele Grüße aus dem Rheinland
Bodo
und denkt an das 11te Gebot
dua di ned deischn....
noch was wichtiges ...http://www.flugpate.com/
mein Projekt: meine Neue
viele Grüße aus dem Rheinland
Bodo
und denkt an das 11te Gebot
dua di ned deischn....
noch was wichtiges ...http://www.flugpate.com/
mein Projekt: meine Neue
- PeterVT11 Verified
- MLL-TEAM
- Beiträge: 203
- Registriert: Mi 9. Apr 2025, 21:21
- Hat sich bedankt: 435 mal
- Wurde bedankt: 474 mal
Re: P_Schedule
Hallo miteinander,
es gibt eine neue Version der P_Schedule. Das ist Version 0.20. neu ist:
Bei einem Neustart wird ein alter Einschaltbefehl sofort aktiviert. Beispiel die LED soll um 8 Uhr angehen.
Bisher musste ein mal Mitternacht abgewartet werden, bis der Schaltauftrag aktiviert wurde.
Jetzt passiert es nach dem Reset.
Hier gibt es die neue Version:
https://github.com/PeterVT11/P_ScheduleMLX
Einfach die Dateien ggf. austauschen. Download und Installation ist unten beschrieben (1).
es gibt eine neue Version der P_Schedule. Das ist Version 0.20. neu ist:
Bei einem Neustart wird ein alter Einschaltbefehl sofort aktiviert. Beispiel die LED soll um 8 Uhr angehen.
Bisher musste ein mal Mitternacht abgewartet werden, bis der Schaltauftrag aktiviert wurde.
Jetzt passiert es nach dem Reset.
Hier gibt es die neue Version:
https://github.com/PeterVT11/P_ScheduleMLX
Einfach die Dateien ggf. austauschen. Download und Installation ist unten beschrieben (1).
Viele Grüße Peter
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
-
- Novize des Beleuchters
- Beiträge: 214
- Registriert: Di 15. Apr 2025, 17:09
- Wohnort: bei Berlin
- Hat sich bedankt: 200 mal
- Wurde bedankt: 210 mal
Re: P_Schedule
Hallo Peter!
Erst einmal vorweg finde ich deine Schedule Implementierung funktional sehr nützlich! Ich habe aber eine Anmerkung und eine Frage:
1. Versionsmanagement der Extensions
Es wäre sehr hilfreich, wenn es ein Standardverfahren geben würde, die Extension auch in der Bibliotheks-Verwaltung der MLL updaten und/oder downgraden zu können. Alternativ könntest du beschreiben, wie man dein git Repository nach Arduino/libraries clont und dort eine Version hoch, oder runter gehen kann. Files hin und her zu kopieren, bzw. zu überschreiben ist doch sehr "C64 in den 1980ern ..."
2. Warum habt ihr (ich meine @jueff und dich, denn andere Extensionprogramierer kenne ich nicht) bei den Extensions ganz was anderes gemacht, als @Hardi sich mal ausgedacht hat?
Hardie hat in der Ur-MobaLedLib ja einen Mechanismus vorgegeben, wie man Extension in die Codepunktleiste der MLL Funktionen einhängen kann und von dort die sehr effiziente und kompakte Parameterierung, aus dem MLL-Config Speicher mit abarbeiten kann. Ihr (s.o.) hingegen benutzt Hardies tollen Mechanismus gar nicht, sondern verwendet eine C++ Überladung und Methoden Polymorphismen, die alleine von der Speicherablage deutlich ineffizienter sind, als Hardies Format. (bei ESP32 und Pico sicherlich kein Problem, aber beim Nano wird es schon sichtbar)
Warum seid ihr diesen abweichenden Weg gegangen, bzw. was war an Hardies Vorgaben nicht passend?
Gruß, Eckhart
Erst einmal vorweg finde ich deine Schedule Implementierung funktional sehr nützlich! Ich habe aber eine Anmerkung und eine Frage:
1. Versionsmanagement der Extensions
Es wäre sehr hilfreich, wenn es ein Standardverfahren geben würde, die Extension auch in der Bibliotheks-Verwaltung der MLL updaten und/oder downgraden zu können. Alternativ könntest du beschreiben, wie man dein git Repository nach Arduino/libraries clont und dort eine Version hoch, oder runter gehen kann. Files hin und her zu kopieren, bzw. zu überschreiben ist doch sehr "C64 in den 1980ern ..."

2. Warum habt ihr (ich meine @jueff und dich, denn andere Extensionprogramierer kenne ich nicht) bei den Extensions ganz was anderes gemacht, als @Hardi sich mal ausgedacht hat?
Hardie hat in der Ur-MobaLedLib ja einen Mechanismus vorgegeben, wie man Extension in die Codepunktleiste der MLL Funktionen einhängen kann und von dort die sehr effiziente und kompakte Parameterierung, aus dem MLL-Config Speicher mit abarbeiten kann. Ihr (s.o.) hingegen benutzt Hardies tollen Mechanismus gar nicht, sondern verwendet eine C++ Überladung und Methoden Polymorphismen, die alleine von der Speicherablage deutlich ineffizienter sind, als Hardies Format. (bei ESP32 und Pico sicherlich kein Problem, aber beim Nano wird es schon sichtbar)
Warum seid ihr diesen abweichenden Weg gegangen, bzw. was war an Hardies Vorgaben nicht passend?
Gruß, Eckhart
- PeterVT11 Verified
- MLL-TEAM
- Beiträge: 203
- Registriert: Mi 9. Apr 2025, 21:21
- Hat sich bedankt: 435 mal
- Wurde bedankt: 474 mal
Re: P_Schedule
Hallo Eckhart,
das ist wieder ein typischer Eckhart-Post. Warum hab ihr/hab ihr nicht, statt selbst zu zeigen wie es geht. Sorry, musste mal gesagt sein.
Zu 1.: Man könnte es in die Arduino-Bibliotheken einbringen. Aber ich hab keine Ahnung, wie das geht und ob ich das überhaupt für die MLL darf. Auch ist die Verbreitung von P_Schedule nicht so ausgeprägt, dass hier was getan werden müsste.
Du planst ja gerade eine neue MLL, vielleicht kann da so was eingebaut werden.
Zu .: Wo hast Du das her, dass Hardi sich das anders ausgedacht hat? Ich kenne hierzu keine Beschreibung. Schade, dass Hardi mit seinen Motorradreisen die Lust an MLL verloren hat und hier nicht antworten wird.
Nur zu meiner Programmierung: der Einstieg zu einer Extension ist mir nur durch freundliche Hilfe (fast 3 Stunden online Videokonferenz mit Hardi) gelungen. Da hat er mir gezeigt, wie ich das machen kann. Dass das Ganze Speicher braucht und eher in ESP32/RP2040 kommen sollte war damals schon klar. Aber in kleinerem Umfang geht das auch im Arduino (selbst ausprobiert).
Aber: Der Code ist ja "Open Source", d.h. DU kannst das sicher viel besser integrieren.
das ist wieder ein typischer Eckhart-Post. Warum hab ihr/hab ihr nicht, statt selbst zu zeigen wie es geht. Sorry, musste mal gesagt sein.
Zu 1.: Man könnte es in die Arduino-Bibliotheken einbringen. Aber ich hab keine Ahnung, wie das geht und ob ich das überhaupt für die MLL darf. Auch ist die Verbreitung von P_Schedule nicht so ausgeprägt, dass hier was getan werden müsste.
Du planst ja gerade eine neue MLL, vielleicht kann da so was eingebaut werden.
Zu .: Wo hast Du das her, dass Hardi sich das anders ausgedacht hat? Ich kenne hierzu keine Beschreibung. Schade, dass Hardi mit seinen Motorradreisen die Lust an MLL verloren hat und hier nicht antworten wird.
Nur zu meiner Programmierung: der Einstieg zu einer Extension ist mir nur durch freundliche Hilfe (fast 3 Stunden online Videokonferenz mit Hardi) gelungen. Da hat er mir gezeigt, wie ich das machen kann. Dass das Ganze Speicher braucht und eher in ESP32/RP2040 kommen sollte war damals schon klar. Aber in kleinerem Umfang geht das auch im Arduino (selbst ausprobiert).
Aber: Der Code ist ja "Open Source", d.h. DU kannst das sicher viel besser integrieren.
Viele Grüße Peter
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
Märklin C-Gleis, Märklin CS3, WinDigipet, Analog und Digital
-
- Vergleichbare Themen
- Antworten
- Zugriffe
- Letzter Beitrag
-
- 10 Antworten
- 5596 Zugriffe
-
Letzter Beitrag von Gasco Verified