Arduino Pedelec HMI: Android-App für den Forumscontroller

Diskutiere Arduino Pedelec HMI: Android-App für den Forumscontroller im ForumsController Forum im Bereich Controller/Regler, Fahrerinformation, Elektronik; Da ich mich dank neuem Handy motivieren konnte, doch eine Android-App für den FC zu schreiben, möchte ich euch die nullte Version nicht...
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
Da ich mich dank neuem Handy motivieren konnte, doch eine Android-App für den FC zu schreiben, möchte ich euch die nullte Version nicht vorenthalten.
Die funktionen erstmal ganz rudimentär, können aber schon ein Display ersetzen.

Anzeige von oben nach unten:
Batteriestatus
Geschwindigkeit - Gefahrene Kilometer
Restreichweite - Durchschnittsverbrauch
Motorleistung - Verbrauchte Wh
Fahrerleistung - Geleistete Wh (nur mit Thun-Drehmomentlager)
Unterstützung in %,W,wh/km je nach Modus

Bei den Einstellungen kann die Log-Funktion eingeschaltet werden, dann werden alle empfangenen Daten in eine Textdatei unter sdcard0/pedeleclogs gespeichert.


Screenshot_2013-07-08-19-02-11.png Screenshot_2.png

Bedienung:
- Bluetoothmodul mit dem Handy pairen (über die ganz normalen Android-Bluetooth-Einstellungen, nur einmal erforderlich)
- Unter Settings die Wattstunden des Akkus eintragen
- Das Bluetoothmodul auswählen
- auf Save drücken und los gehts
- Beim nächsten start sollte am FC Bluetooth zuerst angeschaltet sein - dann wird die Verbindung sofort automatisch hergestellt. Falls nicht, einmal auf Settings und nochmal auf Save gehen.

Bitte kein fertiges Programm erwarten - das sind meine ersten Java-Gehversuche. Ich weiß auch noch nicht, wie es auf anderen Handys aussieht.
Den Sourcecode werde ich noch bei Github reinstellen.
Jetzt erstmal viel Spaß. Für Bugs und Verbesserungsvorschläge ist hier viel Platz ;)

PS1: Im Playstore nach "Arduino Pedelec HMI" suchen, oder diesem Link folgen:
https://play.google.com/store/apps/details?id=arduino.pedelec.hmi

PS2: Viele Bluetooth-Module von Ebay haben 9600 baud als Geschwindigkeit eingestellt. Mit folgendem Programm können die meisten Module auf die für den FC nötigen 115200 baud eingestellt werden, und gleich ein schönerer Name vergeben werden: https://github.com/jenkie/Arduino-Pedelec-Controller/tree/master/Bluetooth_Setup

PS3: Das ganze funktioniert natürlich nur mit dem richtigen Code auf dem Arduino - die aktuellste Version muss also vorher von Github gezogen, oder mit der Konfigurationssoftware neu auf den FC geladen werden!
 
marc b.

marc b.

Mitglied seit
13.09.2009
Beiträge
86
Ort
Berlin
Details E-Antrieb
NC 154 VR, 14A, 36V; 6,4 LiMn
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Gerade erst die Codeänderung auf github gesehen, werde ich die Tage mal probieren. Vorab schon mal danke.
 
F

futzicomp

Mitglied seit
22.04.2010
Beiträge
99
Ort
78467 Konstanz
Details E-Antrieb
KU63, Cute100HR, FC 36-48V
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

...genau darauf habe ich schon soooo lange gewartet! :dafuer: D A N K E !
 
F

futzicomp

Mitglied seit
22.04.2010
Beiträge
99
Ort
78467 Konstanz
Details E-Antrieb
KU63, Cute100HR, FC 36-48V
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Jetzt erstmal viel Spaß. Für Bugs und Verbesserungsvorschläge ist hier viel Platz ;)
...ab 2:50 wird es interessant....
http://www.youtube.com/watch?v=UcL4ICkM5I0
Das ist mir persönlich vielleicht etwas "to much style", die Idee find ich aber gut, und man kann schrittweise die Funktionen hinzufügen...soll als Anregung für Designer sein, die sich hier einbringen könnten???
@ Jenkie: hab keine Ahnung. Wieviel Aufwand ist eine Grafikprogrammierung?
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

...soll als Anregung für Designer sein, die sich hier einbringen könnten???
@ Jenkie: hab keine Ahnung. Wieviel Aufwand ist eine Grafikprogrammierung?
Mir persönlich ist das schon zu viel Design - ich finde ein Handydisplay am Rad macht nur Sinn mit maximalem Kontrast, d.H. schwarzer Hintergrund und große Schrift in hellen Farben.
Ist außerdem stromsparender, weil die modernen OLED-Displays nur dort ordentlich Strom verbrauchen, wo auch ein heller Pixel angezeigt wird - je mehr schwarz, desto sparsamer.
Wenn sich aber jemand designtechnisch auslassen will - gerne! Mir gings erstmal um die Funktion ;)

Habe gerade eine neue Version hochgeladen - bin gespannt, wie lange es dauert, bis sie auf dem Handy als update "angeboten" wird :D
Jetzt wird Android ab 2.1 unterstützt - vorher ging es nur ab 4.x

Sogar auf meinem wieder ausgegrabenen X10 mini pro (unglaubliche 240x320 Pixel...) läufts ;)
screen.jpg
 
Zuletzt bearbeitet:
H

henry-n

Mitglied seit
08.12.2011
Beiträge
503
Ort
Schwarzwald
Details E-Antrieb
V-Power DD, Cyclone Mittelmotor, Bagier DD
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

So, jetzt bin ich auch mal in die Androidwelt eingestiegen und habe mich mit netbeans versucht.

Die "Arduino Pedelec HMI" app läuft aber ich wollte mal mit dem hyper-Terminal Daten schicken. Aber es tut sich leider nichts auf der Anzeige.

@jenkie: hast Du mal einen Teststring ?

Ich habs mal hiermit probiert aber das geht nicht:

18 49 49 59 49 59 49 49 59 49 49 59 49 59 49 49 59 49 59 49 59 49 49 59 49 49 59 49 19

18 ist startflag
19 ist ack
59 ist ;
49 sind einfach einsen.
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

18 49 49 59 49 59 49 49 59 49 49 59 49 59 49 49 59 49 59 49 59 49 49 59 49 49 59 49 19

18 ist startflag
19 ist ack
59 ist ;
49 sind einfach einsen.
wie kommst du auf die 18 und 19?
Schau mal hier was gesendet werden muss:
11 semikolon-getrennte Werte und am Ende ein \r\n, also 13 und 10. Nichts davor und nichts danach. Die Android-App erkennt Zeilen und trennt diese nach Semikolon.
 
H

henry-n

Mitglied seit
08.12.2011
Beiträge
503
Ort
Schwarzwald
Details E-Antrieb
V-Power DD, Cyclone Mittelmotor, Bagier DD
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Ist ja seltsam, in der bluetooth.cpp stehts aber mit führender 18 ?????

Benutzt Du nicht mehr die amarino Lib ?

Das gezeigte Protokoll sieht aus, wie Openformat. Ist ja nett!!

Code:
char ack=19;
char startFlag=18; // used to communicate with Android (leads each message to Amarino)
Serial.print(startFlag);
Serial.print(voltage,2);
Serial.print(voltage,1);
Serial.print(";");
und so weiter und so fort
 
Zuletzt bearbeitet von einem Moderator:
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Kann es sein, dass du dich noch auf eine alte Version beziehst?
In der aktuellen gibt es da nichts mehr.

Das mit Startflag und Ack stand nämlich mal im Code für Amarino - davon bin ich aber schon vor langem abgekommen, zu viel "Overhead".
 
H

henry-n

Mitglied seit
08.12.2011
Beiträge
503
Ort
Schwarzwald
Details E-Antrieb
V-Power DD, Cyclone Mittelmotor, Bagier DD
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Benutzt Du nicht mehr Amarino? Gibt es eine gute Alternative für Bluetoothfunktione unter Android ?
Ich suche immer noch eine Möglichkeit meine BMS Daten auf einer App darzustellen. (Besonders wichtig wären mir Einzelzellenspannungen, um zu erkennen, welche Zellen ggfs debalanciert sind oder vorzeitig schlapp machen)
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Benutzt Du nicht mehr Amarino? Gibt es eine gute Alternative für Bluetoothfunktione unter Android ?
Die Daten werden einfach seriell übertragen, d.h. auf dem Handy wird eine BT-Verbindung geöffnet und nach Zeilen gelauscht. Letztendlich so wie hier beschrieben:
http://developer.android.com/guide/topics/connectivity/bluetooth.html
Man braucht dafür keine Zusatzsoftware wie Amarino und man lernt auch gleich noch was dazu ;)

Ich werde bei Gelegenheit wie angekündigt den Code noch öffentlich machen, dafür muss ich aber noch aufräumen ;)
Funktioniert es denn, wenn du eine Zeile aus 11 Semikolongetrennten Werten sendest?
 
H

henry-n

Mitglied seit
08.12.2011
Beiträge
503
Ort
Schwarzwald
Details E-Antrieb
V-Power DD, Cyclone Mittelmotor, Bagier DD
AW: Arduino Pedelec HMI: Android-App für den Forumscontroller

Prima, jetzt klappts:
11 Werte und Abschluss mit Newline

Beispiel: 1;2;3;4;6;5;7;8;99;100;11; \n

Bei "Select Device" habe ich eine Liste mit allen gepairten Geräten. Da kann ich leider nichts auswählen. Ich musste die ungenutzten BT Geräte entfernen.
 
Per

Per

Mitglied seit
10.10.2013
Beiträge
27
Ort
22XXX
Details E-Antrieb
DD Hub Motor HR 250w <27km/h 36v 20Ah A123
Ist eine DSPC01 visualisierung/logung in der HMI-App geplant/möglich ?
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
Loggen ist jetzt schon möglich (einfach Werte an den übermittelten String anhängen), Visualisierung bisher mangels Bedarf nicht gemacht ;)
 
Per

Per

Mitglied seit
10.10.2013
Beiträge
27
Ort
22XXX
Details E-Antrieb
DD Hub Motor HR 250w <27km/h 36v 20Ah A123
Macht nix hab gerade herausgefunden das mein Phone diese Sensoren selbst hat und ich mit einer anderen App diese visualisieren+overlayen und loggen kann.

Toll wäre aber wenn man wenige Messwerte von der HMI als overlay in andere App's visualisieren könnte. z.B. in eine Navi App :D
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
Ich weiß nicht wie einfach es in Android ist, dass eine im Hintergrund laufende App etwas auf dem Bildschirm schreibt. Ich könnte mir da eher vorstellen, wichtige Informationen (Akkuzustand) in der Statuszeile am oberen Bildschirmrand unterzubringen.
 
abachtern

abachtern

Mitglied seit
29.07.2012
Beiträge
339
Ort
Alpenrand
Details E-Antrieb
elfkw CST + Cute100H; Forumscontroller; 40,7V 5Ah
Hallo,
Ich habe mir die Android App runtergeladen und das BT-Modul angeschlossen.
Kann man das BT-Modul auch ohne Nokia-Display einschalten?

Gruß
abachtern
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
Kann man das BT-Modul auch ohne Nokia-Display einschalten
Das BT-Modul ist völlig unabhängig vom Display, du kannst auch jede andere Tasteraktion mit dem Anschalten des Bluetooth-Moduls belegen. Du kannst aber auch mal versuchen, direkt beim Start das Bluetooth-Modul immer anzuschalten, indem du hier HIGH statt LOW schreibst. Dann kann es aber sein, dass du den Arduino zum neuprogrammieren abziehen musst.
 
J

jenkie

Mitglied seit
28.06.2011
Beiträge
1.705
Details E-Antrieb
elfkw HR + Forumscontroller
Kannst du mir die Beschreibung der Werte der Logdatei zukommen lassen, einige sind klar, bei anderen kann ich nicht erkennen, welcher Wert das ist.
Code:
void serial_android(HardwareSerial* localSerial)
{
#if (SERIAL_MODE & SERIAL_MODE_ANDROID)||(BLUETOOTH_MODE & BLUETOOTH_MODE_ANDROID)
localSerial->print(voltage,1);
localSerial->print(MY_F(";"));
localSerial->print(current,1);
localSerial->print(MY_F(";"));
localSerial->print((int)power);
localSerial->print(MY_F(";"));
localSerial->print(spd,1);
localSerial->print(MY_F(";"));
localSerial->print(km,3);
localSerial->print(MY_F(";"));
localSerial->print((int)cad);
localSerial->print(MY_F(";"));
localSerial->print((int)wh);
localSerial->print(MY_F(";"));
localSerial->print((int)power_human);
localSerial->print(MY_F(";"));
localSerial->print((int)wh_human);
localSerial->print(MY_F(";"));
localSerial->print((int)(poti_stat/1023.0*curr_power_poti_max));
localSerial->print(MY_F(";"));
localSerial->println(CONTROL_MODE);
#endif
}
In der Log-Datei (zu finden im Android-Dateisystem unter /pedeleclogs/...) wird einfach der String gespeichert, der vom FC gesendet wird. Was gesendet wird steht in der Funktion serial_android und kann auch beliebig erweitert werden.
 
Zuletzt bearbeitet:
T

teddy38

Mitglied seit
20.06.2014
Beiträge
1.141
Wäre es möglich, das man bei der App zwischen den Profilen Switchen kann wie bei der Iphone App?
 
Thema:

Arduino Pedelec HMI: Android-App für den Forumscontroller

Werbepartner

Oben