Forum

Intervall kleiner a...
 
Benachrichtigungen
Alles löschen

Intervall kleiner als 1h einstellen

7 Beiträge
4 Benutzer
1 Likes
2,387 Ansichten
Mitglied Admin
Beigetreten: Vor 6 Jahren
Beiträge: 28
Themenstarter  

Hallo Fahrradfreunde!

es gab mehrere Anfragen ob das Intervall der Bike Bean auf weniger als 1h z.B. auf 5 Minuten herunter gestellt werden könnte. Das geht natürlich.

Hier der Versuch es in alle Kürze zu erklären.

Folgende Änderungen müssen dafür am Code vorgenommen werden:

ab Zeile 104

bei den SMS Kommandos muss ein neues Kommando eingefügt werden:

if((strcasestr(checksmstext, "int5") != NULL && strlen(checksmstext) == 4) || (strcasestr(checksmstext, "int 5") != NULL && strlen(checksmstext) == 5)){
interval = 0.08;
char *sendernumber = SenderNumber(i);
char *sendsmstext = sendsmstextarray;
memset(sendsmstextarray, NULL, 161);
strcat(sendsmstext, "GSM will be switched on every 5 minutes.\nBattery Status: ");
char battpercentage[3] = "";
itoa(battpercent,battpercentage,10);
strcat(sendsmstext, battpercentage);
strcat(sendsmstext, "%");
SendSMS(sendernumber, sendsmstext);
free(sendernumber);
DeleteSMS(i);
}else

Achtet darauf das noch mindestens 350 Bytes Ram nach der Änderung eures Programms zur Verfügung stehen. Sollte dem nicht so seien könnt ihr einen nicht benötigtes Kommando löschen.

 

Beste Grüße,

Mirko

Dieses Thema wurde geändert Vor 4 Jahren 2 mal von Dattelpalme

   
Zitat
Active Member
Beigetreten: Vor 4 Jahren
Beiträge: 14
 

Mit der o.g. Vorgehensweise habe ich das in der Firmware der Bean, kann es aber nicht mit der App steuern, korrekt?

Kann ich als Workaround auch einfach eine Einstellung aus der App nehmen die ich nicht brauche, bspw. 24h?

Dann müsste ich im Code der oben unter ab Zeile 104 gelistet ist doch nur "int5" bzw "int 5" durch "int24"/"int 24" ersetzen und strlen(checksmstext) == 5) und nicht 4.

Die alten Zeilen zu int24 werden natürlich vorher auskommentiert.

Beste Grüße,
Bohnito


   
AntwortZitat
Mitglied
Beigetreten: Vor 6 Jahren
Beiträge: 44
 

Hallo Bohnito!

Ja das ginge. Die App wertet allerdings auch die Antwort der BB aus. Das heißt in der folgenden Zeile sollte auch der Orginaltext stehen:

strcat(sendsmstext, "GSM will be switched on every 5 minutes.\nBattery Status: ");

Den neuen Text kennt die App noch nicht. Und wenn die App keine Antwort bekommt steht dann in der App ewig "warte auf Antwort". Auch wird in der App natürlich die falsche approximierte Akkulaufzeit angezeigt. Wenn dich das nicht stört kannst du das machen.

Beste Grüße,

Dattel


   
AntwortZitat
Active Member
Beigetreten: Vor 4 Jahren
Beiträge: 14
 

Naja, da die App bei mir eh nicht richtig funktioniert und bekanntlich die Antworten nicht erkennt, wäre das nicht so tragisch.

Aber solltet Ihr das gefixt bekommen, wäre es wohl schlauer, ich nehme einfach den Int 24 Eintrag und ändere dort nur

interval = 0.08;

und lasse den Rest zum 24h Intervall stehen damit die App das erkennt.

Danke für die Aufklärung!

Beste Grüße,
Bohnito


   
AntwortZitat
Active Member
Beigetreten: Vor 4 Jahren
Beiträge: 14
 

Hallo Dattel,

eins habe ich noch vergessen:

Wenn ich die Bohne resete ist ja Standard Int 1, bleibt das so oder ist das dann mit der obigen Modifikation 0.08?

Das wäre ja schon interessant zu wissen, nicht dass man sich ungewollt den Akku leer saugt. 😉

PS. Ich hab übrigens keine Möglichkeit gefunden, meinen Post von vorhin zu editieren. Geht das für Normalsterbliche nicht oder bin ich nur blind?

PPS. Ah das geht offensichtlich nur so lange, bis jemand die Antwort liest

Diese r Beitrag wurde geändert Vor 4 Jahren 2 mal von Bohnito

Beste Grüße,
Bohnito


   
AntwortZitat
Mitglied Admin
Beigetreten: Vor 6 Jahren
Beiträge: 28
Themenstarter  

Diese Zeile definiert das Anfangsinterval nach dem Reset:

float interval = 0.08;

So wie es jetzt da steht wäre das Anfangsinterval ~ 5 Minuten

Grüzi!
Mirko


   
nasi reacted
AntwortZitat
New Member
Beigetreten: Vor 3 Jahren
Beiträge: 4
 
Veröffentlicht von: @dattelpalme

Hallo Bohnito!

Ja das ginge. Die App wertet allerdings auch die Antwort der BB aus. Das heißt in der folgenden Zeile sollte auch der Orginaltext stehen:

strcat(sendsmstext, "GSM will be switched on every 5 minutes.\nBattery Status: ");

Den neuen Text kennt die App noch nicht. Und wenn die App keine Antwort bekommt steht dann in der App ewig "warte auf Antwort". Auch wird in der App natürlich die falsche approximierte Akkulaufzeit angezeigt. Wenn dich das nicht stört kannst du das machen.

Beste Grüße,

Dattel

Ich würde das auch so machen, würde mich persönlich nicht stören, aber danke für den Hinweis. 


   
AntwortZitat