mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Arduino Custom Firmware für Fitness Armband mit NRF52


Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
3 lesenswert
nicht lesenswert
Moin, dies ist ein Folgebeitrag für diesen eigentlichen Post: 
Beitrag "Suche bauteil identität"


Es geht hier nun darum um einen Diskussions oder auch Bastel Thread zu 
erstellen der sich um die I6HRC Smart Watch/ Fitness Tracker dreht,

bei dieser Fitness Uhr handelt es sich um eine Ideale Bastel Plattform 
die sehr einfach mit Arduino programmiert werden kann.

Hier ein Link zu der Uhr auf A*azon: https://amzn.to/2AVOTRY oder 
https://amzn.to/2Wao31y
Ich habe sie zum Preis von 16€ gekauft.

Hier ein Kurzes Video mit einer Arduino Firmware auf der UHR:
Youtube-Video "Arduino Fitness Tracker NRF52832 umprogrammierung und erklärung."


Mit dem Core Port von Sandeepmistry ist eine Programmierung "in" Arduino 
möglich: https://github.com/sandeepmistry/arduino-nRF5

Hier die vorhandene Hardware:

MCU ist ein NRF52832 mit 512kB flash und 64kB Ram 
https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nrf52832pinoutquestion.png

Bewegungssensor KX023 (Kompatibelmit dem KX022) 
https://www.willow.co.uk/components/com_virtuemart/shop_image/product/OEM%20Component%20Level%20Accelerometers/pdfs/KX023-1025%20Specifications%20Rev%2012.0.pdf

Ein SPI Font Speicher GT24L24A2Y dieser ist zu vernachlässigen da sehr 
viel speicher zur Verfügung. 
http://www.genitop.com/admin/upload/20150817133547540.pdf

Ein Vollintegrierter Herzfrequenzsensor PPS964 
http://www.richwellgroup.com/Private/Files/20181025102416127%E2%88%AEPPS964%20datasheet%20Rev02_150817.pdf

Ein 0,96" IPS SPI Display mit 16bit Farbtiefe und ST7735 Kontroller 
https://www.displayfuture.com/Display/datasheet/controller/ST7735.pdf

2 Touchfelder vor dem Display, geteilt in der Mitte nach oben und unten.

Einen 65mAh Lipo Akku inkl Laderegler.

Eine lichtempfindliche Diode.

USB Anschluss direkt am Gehäuse, hier sind die inneren Datenpins 
ungenutzt und ich habe mir den SWD Port des NRF52 darüber nach Draußen 
geführt.


Bis auf den Lichtsensor ist soweit jede Hardware von mir getestet und 
funktioniert soweit unter Arduino

Das Pin out werde ich noch hochladen, habe es bis jetzt nur auf einem 
Kritzel zettel das will keiner sehen :D

Anbei noch ein Paar Bilder.


Achso, der Stromverbrauch ist derzeit im Standby bei ca. 70uA im Betrieb 
mit 50% Hintergrundbeleuchtung bei 12,5mA

: Bearbeitet durch User
Autor: John P. (brushlesspower)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Sehr schönes Projekt.
Ich arbeite auch sehr viel mit den NRF52 unter Arduino


Aaron C. schrieb:
> Mit dem Core Port von Sandeepmistry ist eine Programmierung "in" Arduino
> möglich: https://github.com/sandeepmistry/arduino-nRF5

Als Anmerkung.
Ich hatte auch mit der Lib von Sandeepmistry angefangen. Ich musste aber 
bald festellen das diese Lib noch nicht ausgereift ist. (Kann inzwischen 
anders sein)

Die Redbear Library ist zwar gut, aber veraltet.

Nutze die Adafruit NRF52 Library!
Sie baut auf der von Sandeemistry auf. Bietet BLE 5.0 und Update via OTA
insgesamt gut supported und ausgereift.

Aaron C. schrieb:
> Achso, der Stromverbrauch ist derzeit im Standby bei ca. 70uA

Das ist aber noch reichlich viel. Die NRF52 (Arduino) schaffen unter 
10µA.
Zumindest wenn man alle zusätzliche Hardware abschalten kann.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
John P. schrieb:
> Sehr schönes Projekt.
> Ich arbeite auch sehr viel mit den NRF52 unter Arduino

Cool das es da noch welche gibt die weiter sind :)
danke für den Tipp mit der Library, OTA Updates sind ja deutlich 
angenehmer, sehe mir das nach Feierabend mal an! Finde die Die 
Sandeepmistry wirklicht etwas unausgereift.

> Das ist aber noch reichlich viel. Die NRF52 (Arduino) schaffen unter
> 10µA.
> Zumindest wenn man alle zusätzliche Hardware abschalten kann.

Die 70uA sind mit Aktivem Bluetooth, Bewegungssensor und Aktiven 
Interupts.

Grüße

Autor: äxl (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
sehr geil. cool thumbsup
also doch kein OLED, mit eingefärbten Bereichen, sondern ein kleines 
16Bit Colr-TFT. sehr chic...
Auch die anderen Sensoren sind ja nun nicht zu verachten.
Andereseits reicht mir die gebotene Funktionalität vorerst aus.
Bin schon gespannt, was man sonst noch für Ideen damit umsetzen könnte.
Gut gemacht!!!

Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Die 70uA sind mit Aktivem Bluetooth, Bewegungssensor und Aktiven
> Interupts.

Ich erreiche hier mit aktiven, BLE, und aktiven Interrupts etwa 6µA auf 
meiner Hardware.

Welches Advertise Interval hast du eingestellt?
Habe bei mir 2 sek, also 2000ms. default sind etwa 100ms

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
John P. schrieb:
> Ich erreiche hier mit aktiven, BLE, und aktiven Interrupts etwa 6µA auf
> meiner Hardware.
>
> Welches Advertise Interval hast du eingestellt?
> Habe bei mir 2 sek, also 2000ms. default sind etwa 100ms

Habe den Interval auf 400ms gesetzt, kann auch im DeepSleep Daten senden 
und empfangen, weiß nicht ob das noch was an der Stromaufnahme ändert.
Denke hier macht aber die zusätzliche Hardware auch viel aus.

Bei einem NRF51 Board bin ich glaube ich auch nur auf Min 60uA gekommen, 
ohne zusätzliche Hardware

Habe gerade schon mal grob die Adarauit Library angeschaut und finde 
leider keine Möglichkeit per St-Link zu Programmieren?! geht das dort 
auch so Problemlos wie bei Sandeepmistry?.

: Bearbeitet durch User
Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Habe gerade schon mal grob die Adarauit Library angeschaut und finde
> leider keine Möglichkeit per St-Link zu Programmieren?! geht das dort
> auch so Problemlos wie bei Sandeepmistry?.

Das ist eine gute Frage.

Normalerweise flasht man das Softdevice+Adafruit Bootloader via SWD
Danach nutze ich den Bootloader via UART.

Irgendwo habe ich gelesen das man auch den J-Link zum flashen nutzen 
kann.
Irgendwo habe ich gelsen das man den ST-Link als J-Link nutzen kann.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
John P. schrieb:
> Irgendwo habe ich gelesen das man auch den J-Link zum flashen nutzen
> kann.
> Irgendwo habe ich gelesen das man den ST-Link als J-Link nutzen kann.

Ok, per J-Link Flashen funktioniert wenn man auf Hochladen mit 
Programmer geht und vorher J-Link für Bluefruit als Programmer auswählt, 
habe einen J-link, finde es damit aber doch etwas umständlicher.

Werde mal nach J-link zu St-Link schauen.

Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Ok, per J-Link Flashen funktioniert wenn man auf Hochladen mit
> Programmer geht und vorher J-Link für Bluefruit als Programmer auswählt,
> habe einen J-link, finde es damit aber doch etwas umständlicher.

Schön zu hören, dass es funktioniert.
Man kann halt nicht alles haben.

Ich selbst finde das ganze Jlink, open ocd zeug auch alles zu 
kompliziert.

Daher flashe ich das Softdevice via Drap&Drop mit dem DAP-Link (CMSIS 
DAP?)
Danach kann ich mit jedem beliebigen USB-UART Adapter flashen.

Das setzt natürlich vorraus, dass die UART Pins frei sind und man auch 
rankommt.

Eigentlich sollte sich die Application auch mit dem DAP-Link flashen 
lassen.

Die Hürde ist hier wohl eher alles in der Arduino Umgebung zum laufen zu 
bekommen.

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
John P. schrieb:
> Nutze die Adafruit NRF52 Library!
> Sie baut auf der von Sandeemistry auf. Bietet BLE 5.0 und Update via OTA
> insgesamt gut supported und ausgereift.

Können wir dafür die "Arduino nRF52 Boards" als Boardverwalter nehmen?
Oder welche Boardverwalter sollte man zum Connecten verwenden?

Als Lib habe ich mir die "Adafruit BluefruitLE nRF51" installiert.

Aaron C. schrieb:
> Hier ein Kurzes Video mit einer Arduino Firmware auf der UHR:

Geile Sache! Wie hast du den Bootloader installiert? Über JLink oder 
gibts bei Arduino ein Board das man auswählen kann und über den internen 
USB zu flashen?

Autor: Marc Horby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst Du den Sketch den du auf deiner Uhr hast mit uns bitte teilen?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Alex W. schrieb:
> Geile Sache! Wie hast du den Bootloader installiert? Über JLink oder
> gibts bei Arduino ein Board das man auswählen kann und über den internen
> USB zu flashen?

Habe die Library von Sandeemistry installiert und mit dem St-Link die 
SoftDevice 132 installiert, diese muss man selber runterladen und in 
einen ordner reinkopieren, den pfad erfährt man wenn man einmal versucht 
SoftDevice zu flashen. Dann kann man als programmer St-Link auswählen 
und auf "NRF5 Flash SoftDevive" diesen installieren, hierbei benötigt 
man ja keinen Bootloader.


Hier der Link zum softdevice: 
https://www.nordicsemi.com/Software-and-Tools/Software/S132/Download#infotabs 
als version 2.0.1 auswählen.
Als Board nutze ich Generic NRF52

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Hier der Sketch aus dem Video, es ist alles undokumentiert und noch sehr 
am anfang/durcheinander war erstmal proof of conzept und testen.

Hoffe es hilft dennoch.


es wird die Library UCGLIB benötigt, die i2c und spi bins in der Datei 
variant.h vom Board Generic müssen noch angepasst werden.

: Bearbeitet durch User
Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Alex W. schrieb:
>> Geile Sache! Wie hast du den Bootloader installiert? Über JLink oder
>> gibts bei Arduino ein Board das man auswählen kann und über den internen
>> USB zu flashen?
>
> Habe die Library von Sandeemistry installiert und mit dem St-Link die
> SoftDevice 132 installiert, diese muss man selber runterladen und in
> einen ordner reinkopieren, den pfad erfährt man wenn man einmal versucht
> SoftDevice zu flashen. Dann kann man als programmer St-Link auswählen
> und auf "NRF5 Flash SoftDevive" diesen installieren, hierbei benötigt
> man ja keinen Bootloader.
>
> Hier der Link zum softdevice:
> https://www.nordicsemi.com/Software-and-Tools/Software/S132/Download#infotabs
> als version 2.0.1 auswählen.
> Als Board nutze ich Generic NRF52

Danke! Ichhätte mich jetzt dusselig gesucht :-D

Frage zum ST-Link: bei meiner Uhr ist

SWCLK
SWDIO
RS
SD
SC
INT
VDDH
MTO
RX
TX
RX1
V3.3

Reicht es vom ST-Link die SWDIO, RST, SWCLK und GND zu verwenden?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Alex W. schrieb:
> SWCLK
> SWDIO
> RS
> SD
> SC
> INT
> VDDH
> MTO
> RX
> TX
> RX1
> V3.3
> Reicht es vom ST-Link die SWDIO, RST, SWCLK und GND zu verwenden?


Es müssen nur SWDIO, SWCLK und GND verbunden werden, reset nicht der 
reset vom NRF sondern von dem PPS964 Puls Sensor.


Es ist noch zu erwähnen das die UCGLIB nur ein Display mit 128x160 
Pixeln kennt es werden immer rechts und links 24 Pixel nicht mit 
angezeigt, hier einfach immer erst bei pixel 24 anfangen.

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kurzer Hinweis beim Verwenden einer frischen Arduino-Umgebung (zum 
Testen von Aaron's ino-Sketch):

Zusätzlich wird benötigt:
-> https://github.com/sandeepmistry/arduino-BLEPeripheral
-> https://github.com/olikraus/ucglib

Nachtrag da erst jetzt gesehen:

Aaron C. schrieb:
> Es müssen nur SWDIO, SWCLK und GND verbunden werden, reset nicht der
> reset vom NRF sondern von dem PPS964 Puls Sensor.


Danke!

: Bearbeitet durch User
Autor: Marc Horby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man die originale Firmware vorher auslesen? Oder irgendwo 
herunterladen?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Marc Horby schrieb:
> Kann man die originale Firmware vorher auslesen? Oder irgendwo
> herunterladen?

Mit dem Tool NRFGo Studio lässt sich der Flash auslesen, ich hatte dies 
bei meiner uhr gemacht jedoch lies sich das Backup nicht flashen, habe 
es nicht weiter probiert.

Hier zum download: 
https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF24-series


damit lässt sich auch der die das SoftDevice Flashen.

Achso das NRFgo Studio kann allerdings nur mit J-Link und nicht mit dem 
ST-Link umgehen.




Habe gerade das Backup von der Uhr in IDA eingelesen, das kommt damit 
sogar klar und vielleicht lässt sich dort noch etwas mehr die Funktion 
den Pulssensors auslesen, da hänge ich gerade noch bei den richtigen 
Register werten.

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Es geht nun weiter mit dem Fitness Tracker, ich konnte nun in 
Nächtlicher feinst arbeit den Puls Sensor vernünftig auslesen/nutzen.

Ein Grund weswegen es nun funktioniert ist, das der Verbaute Voll 
integrierte PPG Sensor ein PPS964 ist, jedoch ist dieser Chip auch 
wieder aus 2 anderen Bauteilen gemacht. Zum einen ist dort das 
Lichtsende und Photosensor Modul, zum anderen ein AFE4404 IC von TI 
welches die eigentliche Logik enthält. dieser TI Chip ist wiederum auf 
der So genannten Heart Rate 3 Click Platine zu finden und dort gibt es 
ein Beispiel für Arduino siehe hier: 
https://bitbucket.org/nsted/afe4404_heartrate_arduinoesp8266/src/ec2196df1746?at=master
Der Code hat mich sehr weitergebracht, wie im Folgenden Video ist aber 
das Größere Problem der Enable Pin am NRF52 gewesen da die NFC Pins erst 
auf GPIO umgeschaltet werden müssen.

Wie man diese einstell Möglichkeit bei der sandeepmistry NRF5 Library 
hinzufügt steht hier: 
https://github.com/sandeepmistry/arduino-nRF5/pull/208

Hier nun noch ein neues Youtube Video vom Puls Sensor: 
Youtube-Video "Arduino Fitness Tracker Hack Puls Sensor"

: Bearbeitet durch User
Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Dir!


ich habs geschafft mein Display beim Zusammenbau zu zerbrechen! Ist das 
erste mal dass ich ein Display kaputt bekommen habe.

Wollte die Progleitungen wie bei dir zum USB führen. Kabel waren wohl zu 
dick. Jetzt werden es CuLackDraht...

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex W. schrieb:
> Danke Dir!
>
>
> ich habs geschafft mein Display beim Zusammenbau zu zerbrechen! Ist das
> erste mal dass ich ein Display kaputt bekommen habe.
>
> Wollte die Progleitungen wie bei dir zum USB führen. Kabel waren wohl zu
> dick. Jetzt werden es CuLackDraht...

Habe das auch bei einer uhr geschafft. Hier gibt es ersatz.
http://rover.ebay.com/rover/1/707-53477-19255-0/1?icep_ff3=2&pub=5575152713&toolid=10001&campid=5337805879&customid=&icep_item=323299810218&ipn=psmain&icep_vectorid=229487&kwid=902099&mtid=824&kw=lg

Hatte zum glück welche da

Habe es bei mir auch mit CuLackDraht gemacht glaube 0.4mm und habe 
keinerlei probleme mit störungen oder so.

: Bearbeitet durch User
Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Habe das auch bei einer uhr geschafft.

:-)

Wenn das so weiter geht, können wir bald die Platinen selbst bestücken!

Eventuell wäre ein ESP32 dann interessant...

Dann bucht sich die Uhr ins WLAN ein und zieht vom eigenen Server die 
Daten die man vorgibt...

Beitrag #5711819 wurde von einem Moderator gelöscht.
Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

interessantes Thema, hat jemand vielleicht einen Tipp, wo man ein 
passendes Exemplar kaufen kann? Amazon sagt nur "nicht verfügbar" und 
ich kann nicht einschätzen, unter welchem Namen das richtige Modell noch 
zu finden sein könnte, halbwegs bezahlbar wäre auch gut...

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Diese wäre die richtige:

https://amzn.to/2COFwnq

Ist aber einfach viel zu teuer, nicht die schwarze variante, das ist 
noch eine andere.

Mfg

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Aaron C. schrieb:
> Ist aber einfach viel zu teuer, nicht die schwarze variante, das ist
> noch eine andere.

Danke. Naja, da ich auch nichts unter dem Preis gefunden habe, wäre das 
nur ein Problem. ;) Größeres Problem: es wäre nur Interesse und 
Spielerei und davon liegen hier noch etliche Sachen rum...
Ich behalte es aber trotzdem mal im Auge.

Gruß aus Berlin
Michael

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

so, die Neugier hat gewonnen, nun ist nur noch eine verfügbar bei 
Amazon...

Eine portable-IDE habe ich schon installiert, die Libs usw. 
zusammengesucht und die Boardgeschichte von sandeepmistry.
Zumndest compiliert der den Sketch von oben ohne zu maulen. Einen 
ST-Link v2 mußte auch noch her, der soll morgen ankommen und war ja 
wenigstens bezahlbar. ;)

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> Hallo,
>
> so, die Neugier hat gewonnen, nun ist nur noch eine verfügbar bei
> Amazon...
>
> Eine portable-IDE habe ich schon installiert, die Libs usw.
> zusammengesucht und die Boardgeschichte von sandeepmistry.
> Zumndest compiliert der den Sketch von oben ohne zu maulen. Einen
> ST-Link v2 mußte auch noch her, der soll morgen ankommen und war ja
> wenigstens bezahlbar. ;)
>
> Gruß aus Berlin
> Michael

War ja klar :D

Viel spass beim basteln.


Habe mir nun auch etwas mehr die Original App angesehen und kann von 
jeglicher nutzung abraten!!!
Alle paar minuten sendet die app den standort gps genau nach china und 
alles fitness daten natürlich auch.
Leider kommt hinzu das jeder der die UserId kennt alle daten die dort 
gespeichert sind abfragen und auch neu schreiben kann, ohne irgendeine 
passwort abfrage.

Eine gute sache hat die app aber sie lässt sich einfach decompilen und 
so konnte ich mit einer eigenen app die uhr schon in den update modus 
bringen, danach ist sie im NRF dfu modus und kann per Bluetooth geflasht 
werden, das ist aber noch zukunftsmusik.

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Alle paar minuten sendet die app den standort gps genau nach china und
> alles fitness daten natürlich auch.

Guten Morgen Aaron,

wie hast du dies ermittelt? Würde gerne da tiefer einsteigen, da ich den 
Chinesenapps auch nicht traue. Eventuell könnte man den angegebenen 
Chinesenserver durch einen mit 127.0.0.1 ersetzen...

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Aaron C. schrieb:
> Es müssen nur SWDIO, SWCLK und GND verbunden werden, reset nicht der
> reset vom NRF sondern von dem PPS964 Puls Sensor.
Das mit Reset wirst Du mir vermutlich noch erklären müssen...
Du hat ja im Video den Kram auf die freien USB-Pins gelegt, da sind doch 
aber nur 2?

> Es ist noch zu erwähnen das die UCGLIB nur ein Display mit 128x160
> Pixeln kennt es werden immer rechts und links 24 Pixel nicht mit
> angezeigt, hier einfach immer erst bei pixel 24 anfangen.
Die UCGLIB werde ich mir mal anschauen wegen der Auflösung, ganz fremd 
ist mir der ST7735 nicht.

Erstmal will ich Deinen Test-Sketch auf die Uhr bekommen aus der IDE.
Deinen Zettel mit den Pin-Belegungen fände ich auch ganz nett, vorerst 
kann ich ja erstmal mit den Angaben in der variant.h leben oder eben 
selber suchen.

Ich muß mir das alles erstmal genauer anschauen, bisher eher AVR und 
ESP, also ziemlich ARM dran oder ARM ab. ;)

Gruß aus Berlin
Michael

: Bearbeitet durch User
Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex W. schrieb:
> John P. schrieb:
>> Nutze die Adafruit NRF52 Library!
>> Sie baut auf der von Sandeemistry auf. Bietet BLE 5.0 und Update via OTA
>> insgesamt gut supported und ausgereift.
>
> Können wir dafür die "Arduino nRF52 Boards" als Boardverwalter nehmen?
> Oder welche Boardverwalter sollte man zum Connecten verwenden?
>
> Als Lib habe ich mir die "Adafruit BluefruitLE nRF51" installiert.

Hier die entsprechende adafruit Library mit allen zusätzlichen Infos's

https://github.com/adafruit/Adafruit_nRF52_Arduino

als Board den Bluefruit Feather nRF52832 auswahlen und die Variant.h ggf 
anpassen

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex W. schrieb:
> Guten Morgen Aaron,
>
> wie hast du dies ermittelt? Würde gerne da tiefer einsteigen, da ich den
> Chinesenapps auch nicht traue. Eventuell könnte man den angegebenen
> Chinesenserver durch einen mit 127.0.0.1 ersetzen...

Moin Alex.
Normaler weise nutze ich die app packet capture um zu sehen was so 
gesendet wird braucht root kann aber auch ssl also https daten anzeigen, 
das funktioniert bei dieser app aber nicht.
Falls das nicht klapt wie hier nutze ich die app "APK editor Pro", 
hiermit kann man den smali source code bearbeiten, und ändere alle 
https:// einträge zu http:// damit werden dann normalerweise alle 
anfragen auch über packet capture sichtbar, darüber kann man auch alle 
anfragen zu 127.0.0.1 ändern, es gibt aber am anfang den login 
bildschirm den man umgehen müsste, also entweder selber einen server 
laufen lassen oder die app umschreiben.

Möchte nich zu sehr ins detail gehen da es in deutschland ja 
lustigerweise nicht erlaubt ist sowas zu machen.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> Du hat ja im Video den Kram auf die freien USB-Pins gelegt, da sind doch
> aber nur 2?

So lieber in 2 antworten sonst wird es unübersichtlich,
Der SWD Port braucht nicht immer einen Reset pin das läuft da über das 
protokoll ab, also werden nur 2 Pins benötigt, der Test Pad mit dem 
namen Reset ist der ausgangsport für den PPS964 Pulssensor damit wird 
dieser Resetet.
Es ist der Reset pin vom NRF52 nicht einmal aktiviert und er wird als 
normaler GPIO genutzt.

Das was ich im Video mache ist es den SWD clk pin ganz kurz auf 5V zu 
ziehen, kann ich nicht empfehlen nachzumachen aber bei mir funktioniert 
es.

> Die UCGLIB werde ich mir mal anschauen wegen der Auflösung, ganz fremd
> ist mir der ST7735 nicht.

Hatte mir das auch schon angesehen, man muss leider sehr viel 
umschreiben deswegen hab ich das erstmal gelassen.
Es funktioniert ja auch so, achso Die Farben Rot und Blau sind auch noch 
vertauscht ist aber auch nichts Dramatisches.

> Deinen Zettel mit den Pin-Belegungen fände ich auch ganz nett, vorerst
> kann ich ja erstmal mit den Angaben in der variant.h leben

Ich habe in 2 oder drei posts vorher ganz still das Pinout als Bild mit 
hochgeladen :)


Durch Arduino merkt man von ARM oder nicht ARM ja garnicht so viel :D

Grüsse zurück

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ok, Resetfrage auch erstmal soweit geklärt.

Aaron C. schrieb:
> Ich habe in 2 oder drei posts vorher ganz still das Pinout als Bild mit
> hochgeladen :)
>
> Durch Arduino merkt man von ARM oder nicht ARM ja garnicht so viel :D

glatt übersehen, dabei ist es so schon bunt, Danke.

Arduino ist bei mir ein Grund dafür, sowas einfach anzugehen, war bei 
den ESP auch so. Ich habe zwar auch ein ESP32 IDF hier installiert, 
nutze ich aber meist nur als Testumgebung, wenn ein ESP32 Beispielcode 
auds der ArduinoIDE eigene Ansichten entwickelt. Ist eben alles nur 
Zeitvertreib...

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier noch ein weiteres Bild mit Infos über Andere Tracker die ich 
bestellt habe,
Es folgen noch 5 weitere die sind aber noch unterwegs.

Biss her ist leider der I6HRC also der aus dem Thread hier der einzige 
richtig gute, durch das einfach zu öffnende Gehäuse und die 2 Freien 
Pins ist er ideal zum Basteln.

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

laß mich raten: Guinness Buch - Die größte Fitness-Tracker Sammlung der 
Welt? ;)

Ich habe da zum Display noch was gefunden:
https://github.com/olikraus/Ucglib_Arduino/issues/13
Ich werde das mal einbauen und testen, aber erstmal muß ST-Link und Uhr 
hier sein und Dein Sketch drauf.......

Gruß aus Berlin
Michael

: Bearbeitet durch User
Autor: Bastler 4.0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
seh ich das richtig, dass sich die nRF51/52xxx mit den alten nrf24L01+ 
bei 250 kBit/s unterhalten können?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> Hallo,
>
> laß mich raten: Guinness Buch - Die größte Fitness-Tracker Sammlung der
> Welt? ;)
>
> Ich habe da zum Display noch was gefunden:
> https://github.com/olikraus/Ucglib_Arduino/issues/13
> Ich werde das mal einbauen und testen, aber erstmal muß ST-Link und Uhr
> hier sein und Dein Sketch drauf.......
>
> Gruß aus Berlin
> Michael

Naja die anderen uhren werd ich wohl niee weiter benutzen :D
Eher Müllsammlung ^^

Hatte das wir gesagt mit der ucglib schon probiert, funktioniert quasi 
auch, leider ist der sichtbare bereich bei dem 80×160 Display in der 
mitte vom RAM displays und nicht am rand, so wurde immer nur die hälfte 
angezeigt. Möglich wird es aber sein, soweit kommt man ja damit klar.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Bastler 4.0 schrieb:
> Hi,
> seh ich das richtig, dass sich die nRF51/52xxx mit den alten nrf24L01+
> bei 250 kBit/s unterhalten können?

Die NRF51und NRF52 haben ein proprietäres funkprotokoll welches nicht 
BLE ist.

Ob dies NRF24L01 kompatibel ist weis ich so leider nicht.

Wird hier aber auch erwähnt:
https://devzone.nordicsemi.com/f/nordic-q-a/1950/advice-for-simple-communication-from-nrf51822-to-nrf24l01

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Bastler 4.0 schrieb:
> seh ich das richtig, dass sich die nRF51/52xxx mit den alten nrf24L01+
> bei 250 kBit/s unterhalten können?

interessanter Hinweis. Radio Eriwan und Nordic sagen im Prinzip ja.

Gruß aus Berlin
Michael

Autor: Torsten R. (Firma: robitzki.de) (torstenrobitzki)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Die NRF51und NRF52 haben ein proprietäres funkprotokoll welches nicht
> BLE ist.

Der Hersteller (Nordic) liefert Libraries, die konformes BLE (sowohl 
Peripheral, als auch Central) implementieren.

Alternativ gibt es OpenSource:
https://www.zephyrproject.org
https://mynewt.apache.org/v0_9_0/network/ble/ble_intro/
https://github.com/TorstenRobitzki/bluetoe

nRF51/52 sind Mircrocontroller (M0/M4), die ein Radio-Peripheral haben, 
die sowohl proprietäre Protokolle, als auch BLE erlauben.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Habe es nun auch geschafft die Library 
https://github.com/adafruit/Adafruit-ST7735-Library von Adafruit für das 
Display zum laufen zu bekommen.

Das gute an der Library es supportet das 80x160 Display.


Man benötigt zusätzlich noch die Library 
https://github.com/adafruit/Adafruit-GFX-Library


in der GFX library musste ich in der Datei: Adafruit_SPITFT.h
In Zeile 15 das #define USE_FAST_PINIO ausklammern.
Dadurch wird die Fast Pin IO option deaktiviert da sie nicht beim NRF52 
funktioniert.

: Bearbeitet durch User
Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Aaron,

ich warte gerade bei meinem auf Ersatz/andere Armbänder.

Ich habe aber zwischenzeitlich vergebens versucht den NRF zu connecten. 
Der ST-Link V2 sagt dass er keine Verbindung aufbauen kann. Eventuell 
kannst du mal deine Einstellungen teilen die du verwendest.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex W. schrieb:
> Danke Aaron,
>
> ich warte gerade bei meinem auf Ersatz/andere Armbänder.
>
> Ich habe aber zwischenzeitlich vergebens versucht den NRF zu connecten.
> Der ST-Link V2 sagt dass er keine Verbindung aufbauen kann. Eventuell
> kannst du mal deine Einstellungen teilen die du verwendest.

Mit was versuchst du zu verbinden?

Wenn unter Arduino muss man bei Programmer also ganz unten den ST Link 2 
auswählen

Das ST Link tool selber kann sich nicht mit dem NRF verbinden

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, das wusste ich jetzt nicht! Ich dachte mit dem Tool kann ich später 
die .bin schreiben und benötige zumindest mal ein connect.. :-)

Gerade festgestellt das eine i6HR nicht immer eine i6HR ist. Die eine 
hat ein Farbdisplay, die andere ein monochrom...

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex W. schrieb:
> OK, das wusste ich jetzt nicht! Ich dachte mit dem Tool kann ich später
> die .bin schreiben und benötige zumindest mal ein connect.. :-)
>
> Gerade festgestellt das eine i6HR nicht immer eine i6HR ist. Die eine
> hat ein Farbdisplay, die andere ein monochrom...

Ja wie gesagt die bin kann man nur mit dem nrfgo programm schreiben oder 
lesen.

Die i6hr hat oled monochrom undie i6hrc (color) ist farbig :)
Die i6hrc ist die neuere variante.

Hast du eine i6hr da? Frage mich ob da der rest gleich ist und nur das 
display anders?!

: Bearbeitet durch User
Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Hast du eine i6hr da?

Auf der Packung steht i3 HR. Die sah halt optisch gleich aus. Werde ich 
heute Abend mal zerlegen :-)

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ok, die I3HR ist wohl von Zeroner, ist aber auch wieder der gleiche 
Hersteller IWOWN also ist die Wahrscheinlichkeit groß das es auch ein 
NRF ist.

IWOWN stellt Uhren mit folgenden Chipherstellern her:
1 - Ti, 2 - nordic/nrf, 3 - dialog, 4 - mtk

ich bin gespannt :)

Anbei nun noch mein Arduino sketch mit Adafruit Display Library, das 
Display wird damit auch viel schneller angesteuert und es können Bilder 
angezeigt werden.

: Bearbeitet durch User
Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

so, die Uhr ist vorhin eingetroffen, hängt zum Akku laden dran.
Ich habe noch nicht probiert, aber bevor ich eine Flex hole: wie geht 
die am Besten auf?

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> Hallo,
>
> so, die Uhr ist vorhin eingetroffen, hängt zum Akku laden dran.
> Ich habe noch nicht probiert, aber bevor ich eine Flex hole: wie geht
> die am Besten auf?
>
> Gruß aus Berlin
> Michael

:D

Wenn ein Fingernagel lang genug ist mit einem davon oben oder unten 
zwischen glexiglas und gehäuse an der Front drunter gehen und ganz 
langsam abziehen, es ist so ein klebriger Filz dadrunter als Kleber der 
löst sich langsam ab ruhig mit Geduld

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Danke, Fingernagel war lang genug.
"Bin ich schon drin oder was? Das war ja einfach..."

Gruß aus Berlin
Michael

Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Wenn ein Fingernagel lang genug ist mit einem davon oben oder unten
> zwischen glexiglas und gehäuse

 Ein Plektrum aus Kunststoff für Gitarren eignet sich in der Regel gut 
dafür. Gibt's in unterschiedlichen Stärken.

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

@Aaron C.: was hast Du mir da angetan auf meine alten Tage? so'ne 
Fummelei... ;-)

ok. Uhr lebte nach den Lötereien erstmal noch.
Problem: ArduinoIDE sagt mir;
Info : STLINK v2 JTAG v17 API v2 SWIM v4 VID 0x0483 PID 0x3748
Info : using stlink api v2
Info : Target voltage: 3.222178
Info : nrf52.cpu: hardware has 6 breakpoints, 4 watchpoints
nrf52.cpu: target state: halted
target halted due to debug-request, current mode: Thread 
xPSR: 0x01000000 pc: 0x000008e4 msp: 0x20000400
** Programming Started **
auto erase enabled
Info : nRF51822-QFN48(build code: B00) 512kB Flash
Warn : using fast async flash loader. This is currently supported
Warn : only with ST-Link and CMSIS-DAP. If you have issues, add
Warn : "set WORKAREASIZE 0" before sourcing nrf51.cfg to disable it
nrf52.cpu: target state: halted
target halted due to breakpoint, current mode: Thread 
xPSR: 0x61000000 pc: 0x2000001e msp: 0x20000400
wrote 36864 bytes from file C:\Users\Roehre\AppData\Local\Temp\arduino_build_564195/Uhr_Adafruit.ino.hex in 1.684803s (21.367 KiB/s)
** Programming Finished **
** Verify Started **
nrf52.cpu: target state: halted
target halted due to breakpoint, current mode: Thread 
xPSR: 0x61000000 pc: 0x2000002e msp: 0x20000400
verified 36760 bytes in 0.436801s (82.185 KiB/s)
** Verified OK **
** Resetting Target **
shutdown command invoked

Sieht für mich zumindest nicht ganz falsch aus (keine Ahnung...).
Problem: Display bleibt dunkel und zeigt nichts an. Sowohl mit dem alten 
Sketch als auch dem neuen. Beim Adafruit-Sketch habe ich noch das 
Problem, daß tft.enterSleep(); und tft.exitSleep(); nicht bekannt sind?
Ich habe das im Moment kurzerhand erstmal auskommentiert.

Irgendeine Idee?

Gruß aus Berlin
Michael

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht schon sehr gut aus, es muss vorher noch das softdevice geflasht 
werden, ist weiter oben beschrieben wie das geht, danach kann man das 
programm erneut flashen und es läuft.

Hier der Beitrag erneut:
Habe die Library von Sandeemistry installiert und mit dem St-Link die 
SoftDevice 132 installiert, diese muss man selber runterladen und in 
einen ordner reinkopieren, den pfad erfährt man wenn man einmal versucht 
SoftDevice zu flashen. Dann kann man als programmer St-Link auswählen 
und auf "NRF5 Flash SoftDevive" diesen installieren, hierbei benötigt 
man ja keinen Bootloader.
Hier der Link zum softdevice: 
https://www.nordicsemi.com/Software-and-Tools/Software/S132/Download#infotabs 
als version 2.0.1 auswählen.
Als Board nutze ich Generic NRF52


Stimmt die enterSleep und exitSleep habe ich selber noch hinzugefügt 
beschreibe ich später noch genauer wenn ich am pc bin. Kann erstmal 
ausgeklammert werden.

: Bearbeitet durch User
Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht als zusätzliche Info für alle die noch nie mit den NRF's 
gearbeitet haben.

Das Softdevice ist vorkompilierter code und kümmert sich unter anderem 
um den ganzen Bluetooth Stack und vereinfach einige funktionen.

Jede Api (Sandeemistry, Redbear, oder Adafruit) ist für eine bestimmte 
Softdevice Version kompatibel

Sandeemistry = Softdevice 2.0.1
Readbear = Softdevice 2.0.1
Adafruit = Softdevice 6.1.1 (BLE 5.0 fähig)

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mal eine ganz andere Frage sollte man in der hier besprochenen app eine 
deutlich größere Sicherheitslücke finden was sollte man da am besten 
tun? Möchte da ungern weiter ins Detail gehen

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

@John P. (brushlesspower): danke für die Erklärung. So kann ich das 
vorerst wenigstens zuordnen.

@ Aaron C. (Firma: atcnetz.de) (atc1441):
So, es lebt. Das mit dem SoftDevice ist mir gestern Abend 
durchgerutscht, ich hatte alles schon bereit liegen, bin aber nicht auf 
die Idee gekommen, mal auf nRF5 Flash SoftDevice zu klicken usw. In 
seinen Ordner verfrachtet, geflasht und... Denkste. Naja fast: backlight 
ging an und mein Handy fand beim BT-Scan das SmartArdu. Display blieb 
schwarz...
Grade nochmal Deine Posts abgegrast und die variant.h an ihren Platz 
befördert und nun sehe ich auch was.
Kann ich mich nachher mal etwas weiter durch den Kram wühlen und 
Bildungslücken auffüllen.

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael schön dass es nun funktioniert wenn das alles etwas 
sortierter ist und man mal eine beständigere Bezugsquelle für die Uhr 
findet wäre es ja durchaus sinnvoll eine Schritt-für-Schritt-Anleitung 
zu erstellen wenn es aber nirgendwo diese Uhren mehr gibt weiß ich nicht 
ob sich das lohnt.

Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> wenn es aber nirgendwo diese Uhren mehr

Ist scheinbar schon ein "älteres" Modell.
Ich habe meine bei Ali für 22€ inkl. Versand bestellt. Irgendwie hat's 
doch gejuckt ;)

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin nochmal, musste nun das Pinout minimal ändern, GPIO 0.16 ist der CS 
Pin vom KX023 Accel sensor.

Wird benötigt um ihn im SPI Modus zu nutzen, anbei das Geänderte Pinout. 
EDIT CS ist natürlich Output.


Es fehlt nun nur noch der Helligkeits Sensor, dieser wird normalerweise 
über einen analog Pin gelesen es zeigt aber kein analog Eingang eine 
Änderung bei veränderten Lichtverhältnissen, könnte nur sein das man der 
Diode vorher noch Spannung geben muss durch einen anderen Pin, habe aber 
nichts gefunden.

: Bearbeitet durch User
Autor: fritsche (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Interessanter Artikel.
Bin auch mit BLE als Steuerungsmodul am experimentieren allerdings mit 
der Dialog-Familie DA145xx/146xx.
Habe noch 2 Fitness-Tracker mit nRF 52382 bei Bangood gefunden.
1. bakeey Z6.  2. 3C HR. Kosten unter 20$.

Grüße an Autor
fritsche

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
fritsche schrieb:
> Interessanter Artikel.
> Bin auch mit BLE als Steuerungsmodul am experimentieren allerdings mit
> der Dialog-Familie DA145xx/146xx.
> Habe noch 2 Fitness-Tracker mit nRF 52382 bei Bangood gefunden.
> 1. bakeey Z6.  2. 3C HR. Kosten unter 20$.
>
> Grüße an Autor
> fritsche

Cool, hast du da möglichkeiten gefunden die Dialog  chips 
umzuprogrammieren?
Soll ja auch einige uhren geben die auch dialog chips beinhalten.

Bestelle mir mal die beiden uhren, danke.

Grösste problem ist immer die zerstörungsfreie öffnung, das lässt sich 
ja nur ausprobieren :)

Autor: Robertliait (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Modern stairs and fences made of glass and wood

Autor: Friedhelm E. (fritsche)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Tracker können sich natürlich in den Sensoren unterscheiden aber die 
CPU ist identisch aber für einen Technikfreak eine Herausforderung.

Zur DA1458x und 1468x Serie bin ich seit ca. 1 Jahr am 
experimentieren/recherchieren, besonders was die ARM M0 Programmierung 
in Verbindung mit den BLE-Fähigkeiten betrifft. Habe mit dem einfachen 
CUBOT V1
angefangen und über J-Link die Programmierung analysiert, aber keine 
Modifikation vorgenommen, lediglich zum Verständnis. Der DA1468x ist 
eine eierlegende Wollmilchsau. BLE im ROM, grosser Flash, 50Ohm 
Ausgangsimpedanz bei 0dBm, USB Connectivity und Lipo-Charger onboard und 
das bei ca 4-5mA Gesamtstrom im Betrieb.
Die Programmierumgebung von Dialog in Verbindung mit Segger und Keil ist 
ausgesprochen professionell.
In aktuellen Tracker wird der DA14585 in Verbindung mit 
unterschiedkichen Sensoren und Displays gerne eingebaut,teilweise auch 
schon der DA14681.

Die Änderung des Trackerprogramms am nRF52382 für individuelle Lösungen 
finde ich interessant, könnte aber noch detailreicher sein, da keine 
Konkurrenz oder Copyrightsituation dem entgegen steht
Z.B. Schnittstellenprogrammierung und ihre Spezialitäten,
die BLE-Programmierung und die verschiedenen Einstellungen 
-Advertising-etc.
Vielleicht wird der ein oder andere Interesse an dem Thema finden.
Weiter so.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier nun noch ein Update,

Youtube-Video "Arduino Fitness tracker Hack: Pulssensor und Bewegungssensor"

Pulssensor und Bewegungssensor funktionieren nun in einem Sketch

Der Accl Sensor wird nun über spi angesteuert, und der Pulssensor über 
SoftI2C, eigentlich könnte man den Accl auch über I2C nutzen, hatte es 
anders versucht um Alles in Hardware I2C und SPI anzusteuern aber es ist 
nur möglich entweder I2C oder SPI1 zu nutzen.


Wie im Video erwähnt löst blöderweise der Interrupt trotz Deaktivierung 
aus, das hat aber denke ich was mit der Arduino IDE zu tun, da gibt es 
irgendwo einen BUG.
Hier wird ein ähnliches verhalten beschrieben aber auch ohne Lösung: 
https://devzone.nordicsemi.com/f/nordic-q-a/9157/wakeup-immediately-from-sd_app_evt_wait-with-external-lfclk


@Friedhelm Mit der NRF5x Variante sind wir da ja bis jetzt noch deutlich 
besser dran.

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Aaron C. schrieb:
> Pulssensor und Bewegungssensor funktionieren nun in einem Sketch

schön das zu hören. Sei doch großzügig und hänge den Sketch hier an. ;)
Ich komme im Moment nicht richtig dazu, weiterzumachen.
Meine Pläne gehen auch weniger dahin, die Originalfunktionalität 
nachzubilden, trotzdem ist es gut, wenn das geht und ich schaue da schon 
gern ab.
Ich werde mich erstmal mit BLE auseinadersetzen, die Richtung:
ein ESP32 als Bridge mit BLE zur Uhr und WLAN zum MQTT-Broker in meinem 
Netz. Nur einen Textstring mit einem MQTT-Topic bei Bedarf von Uhr zu 
ESP bzw. ESP zur Uhr schicken. Als Fernbedienung und/oder als Anzeige 
ohnehin vorhandener Daten von FHEM. Natürlich darf sie gern auch 
weiterhin Pulsrate usw. anzeigen, wenn ich das möchte, ist mir aber 
erstmal weniger wichtig.

PS: kannst Du tft.enterSleep/exitSleep vielleicht auch noch hier 
reinwefen?
Ich hoffe mal, ich bin nicht zu ausverschämt...

Gruß aus Berlin
Michael

Autor: RF-softie (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> SoftI2C

Warum?:

>The GPIOs used for each two-wire interface line can be chosen from any
>GPIO on the device and are independently configurable.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> schön das zu hören. Sei doch großzügig und hänge den Sketch hier an. ;)

Na klar, ist jetzt als rar Datei da mehrere Files.

> PS: kannst Du tft.enterSleep/exitSleep vielleicht auch noch hier
> reinwefen?
> Ich hoffe mal, ich bin nicht zu ausverschämt...

Hier eine kurze Beschreibung der enter- Exit sleep Funktion.

Damit wird der Display Kontroller schlafen gelegt da eine erneute 
Initialisierung zu lange dauert und die Uhr dann ca. 2 sekunden zum 
aufwachen braucht.

Hier die Installation davon, im Library Ordner 
Adafruit_ST7735_and_ST7789_Library in der datei: Adafruit_ST7735.cpp

funktion:

void Adafruit_ST7735::enterSleep(void) {
    startWrite();
    writeCommand( ST7735_SLPIN );
    endWrite();
}

void Adafruit_ST7735::exitSleep(void) {
    startWrite();
    writeCommand( ST7735_SLPOUT );
    endWrite();
}

hinzufügen.

und in der datei Adafruit_ST7735.h

    void    enterSleep(void);
    void    exitSleep(void);

die beiden Zeilen in ca. Zeile 64 Hinzufügen um die Funktion bekannt zu 
machen.

zusätzlich noch bei dem #define block die beiden Register Addressen 
definieren, ca. Zeile 33


#define ST7735_SLPIN     0x10
#define ST7735_SLPOUT     0x11



@RF-softie

Das Problem ist hierbei die Arduino-Nrf52 Library, jede Hardware Braucht 
einen Interrupt und das I2c Nutzt den SPI1 Interrupt für sich, wenn man 
Gleichzeitig versucht den SPI1 Port zu nutzen geht da was schief das sie 
beide darauf zugreifen wollen.
ist hier auch etwas beschrieben: 
https://github.com/sandeepmistry/arduino-nRF5/issues/189

Man müsste in der NRF52 Core was ändern damit es funktioniert.

grüße

: Bearbeitet durch User
Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Aaron C. schrieb:
> Na klar, ist jetzt als rar Datei da mehrere Files.

Danke für die mundgerechte Erklärung. :-) In diesem Fall hätten es sogar 
die Funktionen alleine getan, den Rest hätte ich soagr hinbekommen.

ich habe noch nicht weiter reingeschaut, habe auch jetzt erstmal keine 
Zeit, aber:
D:\Arduino-1.8.8-nRF\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\variants\Generic/variant.h:82:34: warning: large integer implicitly truncated to unsigned type [-Woverflow]

 #define PIN_SPI_MISO         (-1u) // P0.22

                                  ^

D:\Arduino-1.8.8-nRF\portable\packages\sandeepmistry\hardware\nRF5\0.6.0\variants\Generic/variant.h:88:29: note: in expansion of macro 'PIN_SPI_MISO'

 static const uint8_t MISO = PIN_SPI_MISO ;

                             ^

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kein Problem.



Die Fehlermeldung entsteht durch die Angabe des - 1 Pins der PIN wird 
für die spi  Schnittstelle nicht gebraucht man könnte dort auch z.b. 9 
eintragen. Da an diesem pin scheinbar nichts angeschlossen ist oder in 
Arduino die Log Einstellung auf keine oder Standard ändern bin gerade 
unterwegs ist so aus dem Kopf


Achso vielleicht könnte man auch das unsigniert int in ein int Ändern 
dann dürfte er normalerweise nicht mehr meckern, also dass u einfach 
löschen

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Die pin im variant als Int zu definieren hat leider nicht viel geholfen, 
Fehlermeldung bleibt.



Habe heute auch 3 Weitere Uhren erhalten und 2 davon sind garnicht mal 
so schlecht.

Nr 1 Amaz*n 15,99 Prime, https://amzn.to/2S2prFc

IPS Color Display

Hat auch einen NRF52 und ungenutzte usb data pins, Pinout konnte ich 
innerhalb 2 stunden sehr weit raus meßen und rumprobieren, siehe bild.
Einizges Problem, uhr lässt sich ohne Zerstörung öffnen man muss nur 
noch rausfinden wie sie sich vernünftig wieder schließen lässt, mit 
Sekunden Kleber will ich da nicht bei weil die dämpfe meist Rückstände 
auf der innen Seite des Plastik beim Display hinterlassen.

Insgesamt ein nettes teil und verfügbar.

IWHOP

Nr 2 E*ay 10,99 aus China 
http://rover.ebay.com/rover/1/707-53477-19255-0/1?icep_ff3=2&pub=5575152713&toolid=10001&campid=5337805879&customid=&icep_item=253401420779&ipn=psmain&icep_vectorid=229487&kwid=902099&mtid=824&kw=lg

Oled 0,66"
Hat einen NRF51 aber keine ungenutzten data pin, lässt sich dafür leicht 
öffnen und schließen.
Habe mich damit nicht weiter Pinout mäßig beschäftigt da mich das OLED 
nicht wirklich Reizt.

Ist witziger weise der gleiche Hersteller IWHOP

: Bearbeitet durch User
Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Aaron C. schrieb:
> Nr 1 Amaz*n 15,99 Prime, https://amzn.to/2S2prFc

ok, habe ich eben morgen auch noch ein zweites Modell... ;-)

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Michael U. schrieb:
> ok, habe ich eben morgen auch noch ein zweites Modell... ;-)

Sehr gut :D

Habe gerade scheinbar den Transistor für die Hintergrundbeleuchtung 
durchgejagt. weiß leider nicht genau ob versehentlich ein Kurzschluss 
verursacht wurde oder ob die Beleuchtung nicht dauernd auf volldampf 
sein darf.

Also vielleicht lieber mit analogWrite auf 70% gehen.


Achso, und ich musste mittels J-Link und NRFgo ein Recovery durchführen 
um überhaupt auf den NRF52 zuzugreifen.
Ich denke das der Chip Gelockt ist und dadurch wird er entsperrt. Habe 
etwas gesucht ob dies auch mit dem St-Link funktioniert aber noch nichts 
eindeutiges gefunden.


Leider findet man nicht viel zu dem Beschleunigungssensor, könnte ein 
KX126 sein.EDIT Leider kein KX126 er spricht auf die adresse 0x27 per 
i2c an finde aber nicht wirklich einen chip im netz der die adresse hat. 
Suche noch etwas weiter.

Auf dem Chip steht 310 07F

: Bearbeitet durch User
Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Aaron C. schrieb:
> Nr 1 Amaz*n 15,99 Prime, https://amzn.to/2S2prFc
>
> IPS Color Display

hmmm, Verwirrung: Uhr ist gerade angekommen und lädt jetzt erstmal,
das "Handbuch" sagt OLED 0,96"
Muß ich im Moment nicht verstehen...

Gruß aus Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> Hallo,
>
> Aaron C. schrieb:
>> Nr 1 Amaz*n 15,99 Prime, https://amzn.to/2S2prFc
>>
>> IPS Color Display
>
> hmmm, Verwirrung: Uhr ist gerade angekommen und lädt jetzt erstmal,
> das "Handbuch" sagt OLED 0,96"
> Muß ich im Moment nicht verstehen...
>
> Gruß aus Berlin
> Michael

Meist steht da ja quatsch im handbuch wegen schlechter übersetzung und 
buzz wörtern.

Display müsste ja nun schon an sein wenn es so ein hochkannt display ist 
wie bei der anderen uhr ist es ein ips display.
Mir ist kein Oled in der bauform bekannt.

Zum öffnen mit einem fön das gehäuse erwährmen und m8t etwas sehr dünnem 
so wie ein cuttermesser ganz leicht und vorsichtig die seiten anheben 
bis eine ecke hochkommt, dann kann man mit dem fingernagel weitermachen.



Habe gestern abend noch erfolgreich den Bewegungssensor ansteuern können 
:)

Ist ein MSA300 und ein datasheet gibt es nur bei lcsc zum download, 
durch die andere uhr ging es aber sogar recht einfach mit dem ansteuern

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Nachschub ist da, heute abend gibt es weitere infos.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Als Läufer und Hobby Programmierer finde ich das Thema interessant.

Ich habe bei Aliexpress 20$ Uhren mit NRF52 inklusive GPS gefunden.. bei 
Amazon ab 50€ inklu GPS.

Frage ist jetzt, Werbe Trick oder nicht.. Für mich machts erst richtig 
mit GPS Spaß.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Als Läufer und Hobby Programmierer finde ich das Thema interessant.
>
> Ich habe bei Aliexpress 20$ Uhren mit NRF52 inklusive GPS gefunden.. bei
> Amazon ab 50€ inklu GPS.
>
> Frage ist jetzt, Werbe Trick oder nicht.. Für mich machts erst richtig
> mit GPS Spaß.

Es gibt aufjedenfall auch welche mit GPS, wäre da aber wirklich 
vosichtig, viele machen die angabe gps running oder so und nutzen dann 
aber nur die App bzw. das handy dafür.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach mal bestellt:
https://www.aliexpress.com/item/Greentiger-W7-smart-bracelet-GPS-heart-rate-smart-wristband-fitness-tracker-Music-Control-Sport-Smart-band/32922427015.html

Wo bekomtm man jetzt eine Standard günstig her, sind die 15,99€ bei 
Amazon minimum?

Aaron C. schrieb:
> Nachschub ist da, heute abend gibt es weitere infos.

Gibts die so in Masse günstiger?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Einfach mal bestellt:
> 
https://www.aliexpress.com/item/Greentiger-W7-smart-bracelet-GPS-heart-rate-smart-wristband-fitness-tracker-Music-Control-Sport-Smart-band/32922427015.html
>
> Wo bekomtm man jetzt eine Standard günstig her, sind die 15,99€ bei
> Amazon minimum?
>
> Aaron C. schrieb:
>> Nachschub ist da, heute abend gibt es weitere infos.
>
> Gibts die so in Masse günstiger?

Die Uhr aus dem Original Beitrag gibt es leider derzeit nur für 34€ zu 
kaufen.

Die 2. Also die https://amzn.to/2S2prFc ist mit 15,99€ die beste 
preislich gesehen aber nicht ganz so gut zu verschließen wie die für 34€

Die von den neusten Fotos Liegen Teils bei 5€ und Teils bei 10€ Pro 
stück, bestelle lieber gleich mehr, falls da was gutes dabei ist will 
ich nicht nochmal warten bis die aus China hier sind.


Die 2 Versionen Rechts auf dem Bild sind bei Aamz*n mit Prime Bestellt 
und liegen bei 10€ das Stück,

Leider lassen die sich nicht gut öffnen wären aber wirklich ideal da 
Hardware stimmt, das Gehäuse wird jeweils zerstört.
Also wer nur Billige Hardware sucht ist da gut aufgehoben.

Hier der Ama*on Link: https://amzn.to/2BdallJ  Hatte einmal die 2018 und 
einmal die Blue Version bestellt ist bei beiden das gleiche drin nur 
etwas anders angeordnet.


NRF52832
0.96" IPS Display
Flash Speicher und Font Speicher auf dem PCB

KX023 Bewegungssensor.



Die anderen Uhren Haben Jeweils einen Telink TLSR8266 mit 512Kb Flash
Sie werden über eine SWS Schnittstelle Programmiert leider findet man 
keinen Programmier Adapter und keine Richtigen Infos.
Wäre für 5€ Perfekt und lassen sich super easy öffnen und schließen.

Hier der E*ay Link: 
http://rover.ebay.com/rover/1/707-53477-19255-0/1?icep_ff3=2&pub=5575152713&toolid=10001&campid=5337805630&customid=&icep_item=153332792159&ipn=psmain&icep_vectorid=229487&kwid=902099&mtid=824&kw=lg

: Bearbeitet durch User
Beitrag #5723040 wurde vom Autor gelöscht.
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm okay, also ich kann stm32 programmieren und habe auch etliche
Programmer da, SWD hab ich auch..

ich würde erstmal nur versuchen die Bilder der Uhr auszutauschen.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe das jetzt auch mal soweit wie im Video gemacht, Bootloader flashen 
ging schonmal ausversehen. jetzt habe ich anstatt ein blaues Ladezeichen 
ein weisses..

Das Ino selbst kan nicht geflasht werden. Rein erfahrungsgemäss würde 
ich sagen der reset fehlt :/

Aber im Video werden ja auch nur dei 2 SWD benutzt?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Habe das jetzt auch mal soweit wie im Video gemacht, Bootloader flashen
> ging schonmal ausversehen. jetzt habe ich anstatt ein blaues Ladezeichen
> ein weisses..
>
> Das Ino selbst kan nicht geflasht werden. Rein erfahrungsgemäss würde
> ich sagen der reset fehlt :/
>
> Aber im Video werden ja auch nur dei 2 SWD benutzt?

Wäre jetzt jedenfalls die frage welche Uhr du genau hast, der code der 
hier hochgeladen ist, ist für die I6HRC uhr und funktioniert ohne 
weitere Änderungen nicht an anderen Uhren.


Der SWD Port braucht kein Reset das wird Software seitig gemacht.

Wie bist du nun vorgegangen ? hast du die 
https://github.com/sandeepmistry/arduino-nRF5 arduino library 
installiert?

hast du einen J-Link zur hand ? damit könnte man schonmal mit dem NRFGo 
Programm schauen was die uhr sagt.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Wäre jetzt jedenfalls die frage welche Uhr du genau hast, der code der
> hier hochgeladen ist, ist für die I6HRC uhr und funktioniert ohne
> weitere Änderungen nicht an anderen Uhren.
Ich habe die 15,99€ genommen.. gehäuse leider gedamaged.. bestelle ich 
nochmal. :D

> Der SWD Port braucht kein Reset das wird Software seitig gemacht.
Achso ja.

> Wie bist du nun vorgegangen ? hast du die
> https://github.com/sandeepmistry/arduino-nRF5 arduino library
> installiert?
Ja genau.

> hast du einen J-Link zur hand ? damit könnte man schonmal mit dem NRFGo
> Programm schauen was die uhr sagt.
nei nur den stlink vom f4Discovery.. lässt sich leide rnicht zum jlink 
umflashen.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Achso, und ich musste mittels J-Link und NRFgo ein Recovery durchführen
> um überhaupt auf den NRF52 zuzugreifen.
> Ich denke das der Chip Gelockt ist und dadurch wird er entsperrt. Habe
> etwas gesucht ob dies auch mit dem St-Link funktioniert aber noch nichts
> eindeutiges gefunden.


Hatte in dem Beitrag noch das "Problem" der 15,99€ Uhr benannt,
schaue sonst jetzt noch mal ob auch ohne J-Link ein Recovery geht.

Melde mich gleich

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe ich alles schon probiert, leider nicht.. Bluepill hab ich denke ich 
noch da.

Mach dann mal wann anders weiter. Danke für die Tips :)

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alles klar, soweit nen schönen abend,

habe nun doch noch etwas weiter mit der 9,99€ Ama*on Uhr Probiert,

https://amzn.to/2SbxqzF

also bei der Version Blue V10 ist es möglich das obere glas ab zu nehmen 
und direkt am nrf52 Chip an den swd Port zu gehen, ist zwar super fummel 
kram aber es funktioniert, danach kann die front wieder draufgeklebt 
werden.
Das Sketch müsste dann natürlich endgültig sein, oder es geht mit OTA 
weiter.


Hier gibt es noch eine anleitung wie der chip zurückgesetzt werden kann 
mit dem St_link

: Bearbeitet durch User
Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wollte mich nur kurz mal melden: bei der ersten (teueren) Uhr habe ich 
jetzt erfolgreich das Display gebrochen, mit der ist also erstmal Ruhe 
im Karton...
Displays hatte ich in China ohnehin schon bestellt, mal schauen, was ich 
da mache, wenn die irgendwann ankommen.

Uhr 2 (15,99€) steht zumindest zum "Abschuß" bereit, wie ich gelesen 
habe, kann ich mein onBoard-ST-Link vom STM32Nucleo-Board zum J-Link 
umflaschen, das Zeug habe ich mir mal zusammengesucht. Mal schauen, wann 
ich dazu komme.
Die 9,99€ Uhr ist auch schon da, die gefällt mir im Moment noch im 
Originaglzustand ganz gut (ohne die APP), die darf noch etwas so 
bleiben. 2 der ebay-Uhren sind auch noch bestellt...

Reicht mir dann auch. ;-)

Gruß aus Berlin
Michael

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael U. schrieb:
> Uhr 2 (15,99€) steht zumindest zum "Abschuß" bereit, wie ich gelesen
> habe,

Bei der Uhr habe ich zwar erstmal falsch angesetzt und damit das Gehäuse 
zerstört.. aber das geht auch anders.

Im Prinzip kann man vielleicht mit Wärme nur das displayglas abziehen, 
alles hochklappen, 2 drähte unter dem IPS auf den USB anlöten und 
unsichtbar wieder verschliessen. Das wäre dann perfekt gemoddet.

Das mit dem Jlink hat bei meinem STM32F4 Discovery nicht geklappt, ich 
versuche das nochmal mit dem Bluepill.

Beitrag #5725358 wurde von einem Moderator gelöscht.
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann auch übrigens einen Bluepill mit J-Link Firmware flashen.

Nennt sich dann "J-Link OB", ist ein Projekt von Segger für Stm32.

Allerdings meldete Arduino dabei das kein J-Link gefunden wurde obwohl 
der richtig im Gerätemanager angezeigt wurde.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier hat RogerClark auch etwas dazu geschrieben, werde das aufjedenfall 
mal testen, mit dem Großen J-Link zu hantieren ist auf dauer doch 
nervig.

https://www.stm32duino.com/viewtopic.php?t=2140

https://github.com/GCY/JLINK-ARM-OB

jedenfalls nen guter Fund, danke dafür

Dort steht ja das man PA4 und PA7 mit 100Ohm Kurzschließen soll, 
vielleicht fehlte das ja bei dir noch.? oder hattest du eine ganz andere 
Firmware gefunden ?

grüße

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe gerade mal einen bluepill Board damit programmiert und es wird von 
dem nrf go studio einwandfrei erkannt es sollte direkt noch ein Firmware 
Update gemacht werden.

Hast du in Arduino denn den jlink Unter Programmiergerät ausgewählt der 
wird da normalerweise nicht angezeigt habe es aber auch nie hinbekommen 
mit dem anderen richtigen jailing unter Arduino zu programmieren glaube 
da war mal was

Das Freischalten müsste eh in dem nrf go studio gemacht werden

: Bearbeitet durch User
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte die gleiche Quelle, allerdings auch keine Zeit um weiter 
nachzuschauen.

Gelesen hatte ich das mit der Brücke auch. Werde mich wohl gegen 
Wochenende mit dem nrfgo richtig ransetzen. Der Jlink war im 
Gerätemanager korrekt installiert, vielleicht hat der OB eine veränderte 
Device ID.

Das BlackmagicProbe ging auch soweit, konnte nur den Chip nicht finden.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, habs nun einmal komplett getestet. mit der Hex datei von 
https://github.com/GCY/JLINK-ARM-OB kann man ein BLuePill board zum 
Jlink Bo flashen und mit NrfGo den NRF52 Erfolgreich Unlocken/Recovern.


Flashen über Arduino lässt sich der NRF52 jedoch nicht mit dem J-Link 
das Liegt aber an der NRF Arduino Library das dort etwas nicht stimmt.


Grüße

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> So, habs nun einmal komplett getestet.

Super, danke. Gibt es eigentlich schon nachgecodete Arduino Firmwares 
die an die Originalen kommen?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider noch nichts direkt in die richtung, das grundgerüst dafür ist 
aber gegeben das ja alles an hardware funktioniert.

Habe die tage noch etwas mit dem Display gespielt und die 
Bildwiederholrate probiert, hier ein kurzes video wie der stand ist.

Es ist kein Scanning effect zu erkennen und das Fuß bild braucht ca. 
32ms bis es aktualisiert ist, das gesamte Display braucht um 76ms.

Es sieht in echt deutlich schöner aus, kann man leider nicht so gut 
filmen.
Youtube-Video "Arduino NRF52 St7735 Display Refresh Rate"

: Bearbeitet durch User
Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Flashen über Arduino lässt sich der NRF52 jedoch nicht mit dem J-Link
> das Liegt aber an der NRF Arduino Library das dort etwas nicht stimmt.

Arduino generiert im Hintergrund ein Hexfile (der Pfad ist im 
kopilierfenster zu finden)

ungefähr so...
C:\Users\"Benutzer"\AppData\Local\Temp\arduino_build_XXXXXX\

Das müsste sich dann eigentlich über NRFGo flashen lassen.

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das konnte ich nun auch erfolgreich testen!

Der die das NRFgo Programm meckert zwar das ein Emulator nicht verbunden 
sei es wird die HEX Datei aber erfolgreich geschrieben und läuft danach 
auch an.
Wenn man ein Verify macht läuft dieses auch erfolgreich ab.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Arduino mit J-Link funktioniert jetzt:

aus dem wiki ;)

Driver Setup for Segger J-Link

    Download Zadig
    Plugin Segger J-Link or DK board
    Start Zadig
    Select Options -> List All Devices
    Plug and unplug your device to find what changes, and select the 
Interface 2 from the device dropdown
    Click Replace Driver

NOTE: To roll back to the original driver go to: Device Manager -> Right 
click on device -> Check box for "Delete the driver software for this 
device" and click Uninstall

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> Das konnte ich nun auch erfolgreich testen!

Wenn ich jetzt Dein Beispiel Ino auf das 15€ Band laden möchte, muss ich 
da noch irgendwas beachten? Ic habe es mal hochgeladen und de 
rbildschirm bleibt schwarz.

Wie sieht das aus bei den 10€ teilen.. muss man da die pins noch 
herausfinden oder gibt es da schon vorgefertigte configs?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Aaron C. schrieb:
>> Das konnte ich nun auch erfolgreich testen!
>
> Wenn ich jetzt Dein Beispiel Ino auf das 15€ Band laden möchte, muss ich
> da noch irgendwas beachten? Ic habe es mal hochgeladen und de
> rbildschirm bleibt schwarz.
>
> Wie sieht das aus bei den 10€ teilen.. muss man da die pins noch
> herausfinden oder gibt es da schon vorgefertigte configs?

von dem 15€ teil hatte ich noch gar kein code hochgeladen, hier einer 
anbei.
zu beachten ist das dort die variant auch mit geändert werden muss und 
die Adafruit Library st7735 st7789.
Das Pinout ist weiter oben hochgeladen

werde mich wohl weniger mit den 15€ teilen beschäftigen da die 10€ 
Bänder erstmal interessanter sind.
Habe das nun bei mir so gemacht das ich eigene boards für die 
verschiedenen bänder erstellt habe und dann werde ich in den Variant.h 
Files das pinout genau definieren dann sollte der code immer recht 
variable für die verschiedenen bänder sein.

Bei den 10€ Dingern habe ich gestern Abend das pinout rausgefummelt und 
auch einen test code erstellt

: Bearbeitet durch User
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> von dem 15€ teil hatte ich noch gar kein code hochgeladen, hier einer
> anbei.
> zu beachten ist

das Pinout habe ich gefunden.. danke für deine mühe, da ist noch 
irgendwo der Wurm drin, backlight habe ich selbst in den code gebracht, 
zeigt nur nichts an..

Ich würde ja soweit klarkommen wenn ich das richtige Pinout hätte. 
Übrigens gibt es noch einen "Arduino nrf52 Core" der die RTC 
initialisiert.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Aahh sorry hier die richtige Variant.h
sind ja nun doch ein paar mehr verschiedene :D


war der letzte satz eine frage?

wenn ja kann das wohl die Adafruit NRF52 core und eine die heist glaube 
ich RedBear, das offiziele Arduino board Primo hat das aufjedenfall 
integriert, hatte aber nicht geschafft dies mit einem Custom Board zum 
laufen zu bekommen. https://github.com/arduino-org/arduino-core-nrf52



werde mich damit auch als nächstes beschäftigen da eine uhr nur mit 
aktivierten RTC in deepsleep funktionieren würde.

: Bearbeitet durch User
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die SPI Pins hatte ich mir natürlich schon angepasst..

leider passiert da nichts. Muss ich mich wohl von Anfang an selbst 
durchfuchsen :)

Also mein Ziel ist für das erste eine funktionierende lowpower Uhr mit 
hintergrund und transparenten Colored Bmp Fonts.

habe im Prinzip schon alles zusammen, muss jetzt nur den Start 
hinbekommen.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mhh schade, wenn die Hintergrundbeleuchtung schonmal an geht liegt es ja 
scheinbar an der display ansteuerung?!

mehr als das hochgeladene habe ich aber leider auch nicht.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> mehr als das hochgeladene habe ich aber leider auch nicht.

hattest du aber schon am laufen mit dem Pinout vom Zettel?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja, habe ja auch das bild mit hochgeladen, am späten abend hatte ich 
dann auch den Accel am laufen und das ist auch das Hochgeladene sketch

vielleicht sonst das ganze mit der UCGLIB probieren vielleicht liegt es 
ja ander Adafruit library.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm.. jetzt hab ich ausversehen das softdevice mit Lock geschrieben und 
der Chip ist mausetod.

Vielleicht eine Idee?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Hm.. jetzt hab ich ausversehen das softdevice mit Lock geschrieben und
> der Chip ist mausetod.
>
> Vielleicht eine Idee?

mhh könnte mir nur die lösung mit nrfgo und dort auf recovery gehen 
vostellen.

dann ja mit dem j-link

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Habe mich wie "versprochen" heute noch weiter mit dem Timer und RTC 
beschäftigt, konnte erfolgreich einen RTC timer auf 1 Sekunde setzen und 
er zählt auch schön im deep sleep weiter,
leider geht der chip dann aber nie richtig in den deep sleep und zieht 
weiterhin 7mA.
Anbei der code dafür.


Nach dem ich nun stundenlang rumprobiert habe merkte ich nun das der 
millis() counter eh auch im Deepsleep weiterläuft....
ich meine gelesen zu haben das der auch über den Low Frequenz Quarz 
läuft also auch recht genau sein müsste.


Nochmal nachgeschaut:


uint32_t millis( void )
{
  uint64_t ticks = (uint64_t)((uint64_t)overflows << (uint64_t)24) | 
(uint64_t)(NRF_RTC1->COUNTER);

  return (ticks * 1000) / 32768;
}

uint32_t micros( void )
{
  uint64_t ticks = (uint64_t)((uint64_t)overflows << (uint64_t)24) | 
(uint64_t)(NRF_RTC1->COUNTER);

  return (ticks * 1000000) / 32768;
}


die millis() kommen vom LowFreq Quarz und laufen über den RTC1 Timer

: Bearbeitet durch User
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja Danke, ich mache erstmal die Grafik..

Mit der neuen Uhr funktioniert jetzt auch das Display via Adafruit, nur 
irgendwie invertiert oder RGB/BGR Fehler.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Ja Danke, ich mache erstmal die Grafik..
>
> Mit der neuen Uhr funktioniert jetzt auch das Display via Adafruit, nur
> irgendwie invertiert oder RGB/BGR Fehler.


Ja es gibt da verschiedene versionen vom display.

In der library kann man in der datei 
https://github.com/adafruit/Adafruit-ST7735-Library/blob/master/Adafruit_ST7735.cpp

Bei set rotation alle ST77XX_MADCTL_RGB in ST7735_MADCTL_BGR

Ändern, müssten 4 stück sein.

Falls am rand eine komische linie sein sollte muss man noch die 
_colstart und _rowstart werte ändern. Bin gerade aber unter wegs. Der 
eine 4 pixel und der andere 2 pixel



Erste uhr versuche laufen auch erfolgreich.

Per bluetooth wird vom handy beim neustart ein unixtimestamp gesendet 
und mit der normalen Time library verarbeitet.

: Bearbeitet durch User
Autor: Toto mit Harry (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich werde mich da mal Step by Step befassen.

auf den beiden Bildern zu sehen stimmt da noch was nicht..

Das RGB hatte ich schon gleich versucht, das ganze Display war 
invertiert.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht ja schon gut aus,

ja danach kann man noch nach dem Display Init
  tft.invertDisplay(true);

hinzufügen um dann die richtigen Farben zu haben.

und es sieht auch nach der linie am rand aus, dazu hier die änderung:

in datei Adafruit_ST7735.cpp

habe ich bei zeile 241 folgendes hinzugefügt:

 // #define pcbspi
   #ifdef pcbspi
    _colstart = 26;
    _rowstart = 1;
#else
    _colstart = 24;
    _rowstart = 0;
#endif

dafür halt die vorherige col und rowstart rausgenommen.


da bei den verschiedenen Uhren mal ein rand ist und mal nicht kann man 
es durch das define leichter verändern, das rausklammern oder halt 
nicht.


Schwer das so zu schreiben hoffe du verstehst es trotzdem.

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Habe nun auch mal ansatzweise ein Menü gebastelt obere taste blättert 
durchs Menü und die untere macht eine Aktion.

Dazu noch eine Android App die die Unixzeit automatisch ins Gatt 
schreibt, so muss man nicht hin und her kopieren.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo nicht schlecht..

Aus dem README, komisch dasman dasüberliest ;)
Low Frequency Clock Source (LFCLKSRC)

If the selected board has an external 32 kHz crystal connected, it will 
be used as the source for the low frequency clock. Otherwise the 
internal 32 kHz RC oscillator will be used. The low frequency clock is 
used by the delay(ms) and millis() Arduino API's.

The Generic nRF51 and nRF52 board options have an additional menu item 
under Tools -> Low Frequency Clock that allows you to select the low 
frequency clock source. However, Nordic does not recommend the 
Synthesized clock, which also has a significant power impact.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mich mal an dei Adafruit ST7735 Library rangesetzt..

Ich habe mir eigene Funktionen für das Schreiben von RGB24 Bitmaps aus 
dem Flash geschrieben.Mit den vorhandenen Funktionen RGB565/uin16_t 
Pixel gab es bei mir Farb Verfälschungen/Vertauschungen dadieBytes 
zigmal geflippt und getauscht wurden. (Ich habe ein eigenes Java Tool 
für andere Displays zur Array/Bitmapkonvertierung )

Hiermal das aktuelle Beispiel, das einzige Delay im Loop ist 
dasSchreiben via SPI.. theoretisch sollten 25FPS klappen.

Die Farben kommen der Realität erst so ab Sekunde 10 nahe.
Youtube-Video "Nrf52 full Graphics Font rgb24"

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ganze hier nochmal mit Hintergrundbild und Transparenz..

Sieht in Echt weit besser aus.. so wie das Beispiel Bild der "0" oben..

Youtube-Video "Nrf52 full Graphics Glock with transparency"

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Cool das sieht doch echt gut aus,

hast du da schon den Sketch für uns?

das Font ist schick!

Autor: Toto mit Harry (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ja, leider muss man die ST7735Library wegen 24bit init und neuen 
Funktionen  mittauschen.

wenn ich die Bilder endlich in RGB565 ala Adafruit konvertieren kann, 
geht das auch Original.

Autor: Toto mit Harry (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Sollte jetzt auch mit der Standard Library laufen..

Anbei noch das Konverter Tool..

Einfach die Bilder durchnummeriert (P0.bmp, P1.bmp) in den gleichen 
Ordner kopieren und das Tool starten. Danach nur noch den Array aus 
test.h in den Sketch kopieren.

Autor: Toto mit Harry (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Da war noch eine Zeile im Sketch falsch.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Da war noch eine Zeile im Sketch falsch.

Sehr schön, hat sofort funktioniert, sieht echt gut aus.


Habe gestern noch was in ne andere Richtung gebastelt.

aus einem alten Supermarkt E-Ink Display eine Quasi BLE uhr.

Das Innenleben von einem Fitness Tracker, bis auf Display, in das 
Gehäuse gesetzt und das Steuert mit fast der Gleichen Uhr Firmware das 
E-Ink Display.

Beitrag #5731735 wurde vom Autor gelöscht.
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sieht schon gut aus, haste mal den aktuellen Sketch von etwas vorher
bei dem soweit funktionierende Peripherie dabei ist?

Irgendwie gibts bei meinem sketch noch einen Anzeigefehler bei Vollbild
Bildern.. der war zwischendurch auch mal weg. (jede zweite Zeile
irgendwie verrutscht)

Ich benutze im moment noch kein Softdevice, das muss ich extra flashen?

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei den Trackern ist ja auch ein Flash mit drauf, dort könnte man 
Grafiken etc oder Daten speichern.

Spätestens vielleicht einige Offline Logs als Ringbuffer wenn man den 
Pulssensor aktiviert bekommt.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe so nicht weiter mit dem 15€ teil weitergemacht, könnte also nur das 
von dem I6HRC oder den 10€ Teilen teilen da ich da derzeit mehr mit 
mache.

Dann müsste man im Sketch noch die Pins ändern.

der Flash hat jedenfalls potenzial da intern ja leider nur der RAM 
vorhanden ist.

Hab nun auch endlich geschafft den RTC2 Timer vernünftig zu starten und 
der NRF52 wacht nun jede Minute einmal von alleine auf und macht sein 
ding und schläft wieder ein, das war mir gerade wichtig für die E-Ink 
Geschichte.

Dazu musste ich aber direkt in der Library die Wiring und die Delay 
files Bearbeiten.

Beitrag #5733652 wurde vom Autor gelöscht.
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier einmal der Aktuellste Code mit dem "Menü",

dazu noch ein kurzes video: Youtube-Video "I6hrc custom arduino firmware nrf52832"

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie hast du eigentlich den Flash beim 15€ Tracker ausgeklingelt, gibt es 
dafür ein Datasheet? die meisten 25er haben noch einen Hold Pin, der ist 
garnicht in der Pinliste aufzufinden.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> wie hast du eigentlich den Flash beim 15€ Tracker ausgeklingelt, gibt es
> dafür ein Datasheet? die meisten 25er haben noch einen Hold Pin, der ist
> garnicht in der Pinliste aufzufinden.

Ja das ist in mühseliger mess und pcb studierung entstanden.

Der hold pin ist dauerhaft auf 3.3V also High, bzw glaube der ist mit 
auf dem Power Ausgang für den Flash das weiß ich gerade nicht mehr 
genau.

Aber den müsste man eigentlich ignorieren können, habe mich damit auch 
noch nicht weiter beschäftigt werde das aber wohl mit als nächstes tun.


Mfg

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okay, ich komme im moment mit umgeschriebenen und angepassten Librarys 
für die 25er Serie nicht weiter, mache da erstmal Pause.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da tut sich doch was.. man darf sich nur nich auf die Libraries 
verlassen ;)

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also bei der Cotify habe ich den SPI Chip soweit angesprochen bekommen.. 
scheint der Standard Befehlssatz der 25er Serie zu sein.

JEDECID:
ChipVendor:0x5E
Chip Type: 0x40
Chip Size: 0x14



Egal was ich mache, der Chip nimmt keinen Write/Erase Befehl an. (Byte 
für Byte Manuell probiert, auch über Libs)

Die vorhandenen Bytes auszulesen klappt.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Also bei der Cotify habe ich den SPI Chip soweit angesprochen bekommen..
> scheint der Standard Befehlssatz der 25er Serie zu sein.
>
> JEDECID:
> ChipVendor:0x5E
> Chip Type: 0x40
> Chip Size: 0x14
>
>
>
> Egal was ich mache, der Chip nimmt keinen Write/Erase Befehl an. (Byte
> für Byte Manuell probiert, auch über Libs)
>
> Die vorhandenen Bytes auszulesen klappt.

Ich meine es gibt noch einen Write Protect pin, dieser wird auch 
geschaltet?, habe das aber leider immer noch nicht weiter verfolgt. wenn 
das auslesen soweit schon funktioniert ist das ja aber super. ich habe 
das pinout von hier: 
https://cdn.sparkfun.com/assets/learn_tutorials/6/9/4/M25P16.pdf

Anbei noch die Variant file dür die 10€ Uhr mit V10inBlau

Autor: Mischa N. (mischaka)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich beschäftige mich mit Thema ESP32 Bluetooth und Fitness Armband. Ich 
wollte eine Brücke mit dem ESP32 zwischen Internet (MQTT 
Hausautomatisierung)und fitness tracker bauen. Um z.B. kleine 
nachrichten zu empfangen ohne Smartphone. Aber Anmeldeprozess mit Mi 
Band 2 war zu kompliziert. ESP32 selbst als Smartuhr  ist ungeiegenet 
wegen 120mA Stromverbrauch.
Bis jetzt habe ich nur iBeacon Präsenz Schalter gebaut.
http://esp32-server.de/ibeacon-itag-praesenz-schalter/

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Mischa N. schrieb:
> Bis jetzt habe ich nur iBeacon Präsenz Schalter gebaut.
> http://esp32-server.de/ibeacon-itag-praesenz-schalter/

im Moment erstmal Danke für Deinen Code, das bringt mich auf ein paar 
Ideen.
Die Geschichte ESP32 als Bridge zu MQTT steht ja auch auf meinen Plänen, 
im Moment komme ich nicht so richtig dazu, eine der anderen Uhren zu 
präparieren, nachdem ich der ersten und teuersten... ;) ihr Display 
zerknackt habe...

Gruß aua Berlin
Michael

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Mischa N. schrieb:
> Bis jetzt habe ich nur iBeacon Präsenz Schalter gebaut.
> http://esp32-server.de/ibeacon-itag-praesenz-schalter/

Die Beacon Idee finde ich super, könnte mir gut vorstellen an alle 
möglichen Sachen einen Beacon zu kleben und man erhält Push nachrichten 
wenn sie das haus verlassen.



Habe heute auch eine Fitness Tracker mit integriertem GPS erhalten, 
leider ist dass Gehäuse super verklebt.

Gibt es auf Ama*on für 58€ https://amzn.to/2IfKfo1

oder bei E*ay für 23€ aus Hamburg vom china zwischenlager: 
http://rover.ebay.com/rover/1/707-53477-19255-0/1?icep_ff3=2&pub=5575152713&toolid=10001&campid=5337805630&customid=&icep_item=253828099784&ipn=psmain&icep_vectorid=229487&kwid=902099&mtid=824&kw=lg
Wurde per DHL geliefert.


Kann mir vorstellen das es mit Erwärmung des Gehäuses besser aufgeht, 
war aber zu ungeduldig :D

: Bearbeitet durch User
Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Interessantes Teil. Hast du mal die App getestet? Ist die brauchbar? Und 
muss man sich in einer Cloud anmelden,  also China - Server o.ä.?

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
900ss D. schrieb:
> Interessantes Teil. Hast du mal die App getestet? Ist die brauchbar? Und
> muss man sich in einer Cloud anmelden,  also China - Server o.ä.?

Habe die app selber noch nicht runtergeladen oder weiter getestet. Sie 
heist "hi move" kann man ja auch ohne tracker mal laden.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist ja witzig. Die app ist scheinbar aus dem Playstore gelöscht.

Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich suche auch gerade und kratze mir den Kopf ;)

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
900ss D. schrieb:
> Ich suche auch gerade und kratze mir den Kopf ;)

Über google findet man einen download, leider weis man dort ja nie was 
da noch mit reingemoddet wurde.

Komisch das die app bis 18.1.2019 noch aktualisiert wurde.

Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deshalb lass ich es auch :)

Mal sehen ob ich Bock hab, mir das Teil zu kaufen. Mit dem GPS find ich 
sie nochmal spannender. Aber da wird es noch aufwendiger, das GPS 
anzusprechen. Wenn es ein bekannter Chip ist, dann wohl nicht.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
900ss D. schrieb:
> Deshalb lass ich es auch :)
>
> Mal sehen ob ich Bock hab, mir das Teil zu kaufen. Mit dem GPS find ich
> sie nochmal spannender. Aber da wird es noch aufwendiger, das GPS
> anzusprechen. Wenn es ein bekannter Chip ist, dann wohl nicht.

Ist ein ublox G7020 also wird das standart nmea sein :) da gibt es ja 
jede menge Arduino beispiele.

Du willst es doch auch :D

: Bearbeitet durch User
Autor: 900ss D. (900ss)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder das Binary Protokoll. NMEA wäre wirklich einfach.
Ja klar will ich, aber ob ich Zeit habe ;)

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aaron C. schrieb:
> 900ss D. schrieb:
>> Ich suche auch gerade und kratze mir den Kopf ;)
>
> Über google findet man einen download, leider weis man dort ja nie was
> da noch mit reingemoddet wurde.
>
> Komisch das die app bis 18.1.2019 noch aktualisiert wurde.

Hier: http://download.keeprapid.com/apps/smartband/himove/index.html 
gibt es die app vom hersteller, da sollte also nichts böseres als eh 
drin sein.

Gerade etwas nachgeschaut, die App kann man ohne registrierung nutzen 
aber es werden trotzdem diverse daten zum api.keeprapid.com server 
gesendet.

Darunter ist vorallem auch die genaue gps position, wird scheinbar für 
die wetterdaten benötigt.

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So habe mich heute Abend mal an den Flash Speicher gemacht und kann ihn 
erfolgreich auslesen und schreiben, leider geht das wirklich soweit ich 
gefunden habe nicht mit einer Library also habe ich von Hand Funktionen 
geschrieben die das auslesen und schreiben machen. Hier ein Datenblatt 
was am besten zu dem vorhanden 25f08 flash passt: 
https://cdn.datasheetspdf.com/pdf-down/P/N/2/PN25F08-PARAGON.pdf
dort werden die lese und Schreibvorgänge sehr gut beschrieben.

Habe mir zum besseren rumprobieren einen Flash speicher ausgelötet und 
direkt verdrahtet... zum glück sind das nur 8 Pins :D

Anbei ein Beispiel Sketch in diesem Fall für die V10 Blue Version.
Das Sketch Löscht zuerst den gesamten Flash Speicher, schreibt dann von 
Adresse 256 bis 512 werte von 0 -256 und gibt danach nach und nach den 
ersten teil des speichers aus und zeigt ihn auf dem Display an.

Zudem kann man den Flash und auch den Font Chip mittels SPI Kommando in 
den Deep Sleep bringen, habe das nun mit in meine andere Firmware mit 
eingebaut und komme jetzt auf einen Stromverbrauch von ca. 38uA im sleep 
Mode der Uhr, vorher waren es ca. 68uA.
Ich bin zufrieden

Nachdem Kennenlernen des Flash Speichers habe ich nochmal in das 
Datasheet des Font Speichers geschaut, die haben eigentlich die gleichen 
Kommandos und werden gleich angesteuert.
Der Font Flash Chip hat auch noch 64kByte Frei beschreibbaren speicher, 
da der Font Chip auch auf der I6HRC uhr vorhanden ist kann man das sehr 
gut nutzen.

: Bearbeitet durch User
Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe es bei meiner 15€ nicht anders gemacht.. nichtmal der einfache 
Chip Erase geht durch. Ich habe schon länger mit jedenfalls den Winbonds 
zu tun.. die benutze ich bei STM32 als Bilderspeicher. Daher wart der 
Protect Pin klar, ich habe es sogar direkt gemessen.

Bei mir sind mitlerweile 2 TFTs kaputt.. das openframe/rumgemesse tut 
denen wohl nicht so gut. Muss ich mal schauen, der rest funktioniert.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Ich habe es bei meiner 15€ nicht anders gemacht.. nichtmal der einfache
> Chip Erase geht durch. Ich habe schon länger mit jedenfalls den Winbonds
> zu tun.. die benutze ich bei STM32 als Bilderspeicher. Daher wart der
> Protect Pin klar, ich habe es sogar direkt gemessen.


Nerkwürdig das es bei dir nicht funktioniert hat, geht es mit dem sketch 
von mir?

Habe es mittlerweile bei 3 uhren erfolgreich getestet.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe den Sketch mal ausprobiert.. aber der 2ten Bank/Sektor sind noch 
Daten da.. das gleiche wie bei "meinem zu Fuß".

Einen Chip Erase zu Senden ist ja nicht so schwer und sehr 
übersichtlich.

Habe auch mit dem Multimeter das High am Protect Pin überprüft, sowie 
die Protect Bits überprüft.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> Habe den Sketch mal ausprobiert.. aber der 2ten Bank/Sektor sind noch
> Daten da.. das gleiche wie bei "meinem zu Fuß".
>
> Einen Chip Erase zu Senden ist ja nicht so schwer und sehr
> übersichtlich.
>
> Habe auch mit dem Multimeter das High am Protect Pin überprüft, sowie
> die Protect Bits überprüft.

Versuche mal am besten die Beiden Status Register auszulesen, es kann 
sein das bei Software eine Schreibsperre gesetzt ist.

dazu 0x05 für das erste und 0x35 für das zweite senden und den byte der 
zurückkommt am besten auf dem Display ausgeben, sollten beide nach einem 
neustart 0x00 sein wenn kein write protect gesetzt ist.

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Toto mit Harry schrieb:
> sowie die Protect Bits überprüft.

Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ahhh sorry überlesen...

Autor: Christoph M. (mchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Toto mit Harry (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo Nice, das Projekt an sich ist ja schon älter.. aber was die ganzen 
Uhren angeht machste Dir ja echt viel Mühe ;)

Ich habe mir mal diese bestellt.. hoffentlich geht das Glas gut ab.
https://de.aliexpress.com/item/Blutdruck-Smart-Armband-Sport-Band-Herzfrequenz-Stoppuhr-Fitness-Tracker-Wasserdichte-Uhr-Smart-Uhr-f-r-M/32857269667.html

Autor: napsi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe die Möglichkeit mir die GATT Services, Characteristics und 
Descriptors anzeigen zu lassen, kann aber damit nichts anfangen.
Wie finde ich heraus, welchen String ich an welche Stelle (UUID) 
schreiben muss, um z.B. die Uhrzeit an den Tracker zu schicken? Oder wo 
ich z.B. die Messwerte auslesen kann? Mir fehlt da ein Bausteinchen.
Danke,
Robert

Autor: John P. (brushlesspower)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
napsi schrieb:
> Hallo,
> ich habe die Möglichkeit mir die GATT Services, Characteristics und
> Descriptors anzeigen zu lassen, kann aber damit nichts anfangen.
> Wie finde ich heraus, welchen String ich an welche Stelle (UUID)
> schreiben muss, um z.B. die Uhrzeit an den Tracker zu schicken? Oder wo
> ich z.B. die Messwerte auslesen kann? Mir fehlt da ein Bausteinchen.

Ich verstehe dein Problem nicht?

Mit der NRF Connect App kannst du sehen welche services  und welche 
Charakteristiken dein Peripheral hat.

Es gibt mehrere Services (teilweise vordefiniert; z.B, Device 
Infomations Service)
Jeder Service kann mehrere Charakteristiken haben. Also für den Device 
Info Service:
Hersteller charakteristik
Modell Charakteristik
Seriennummer charakteristik
usw...


Jeder Service und jede Charakteristike hat eine Eindeutige UUID

Auf App Seite muss du wissen auf welcher Charakteristik welche Daten 
gelesen/geschrieben werden

Auf Mikrocontroller seite sendest oder ließt du auf der bestimmten 
chrakteristik.


App und Firmware müssen natürlich zueinander passen.
Deswegen gibt es ja vordefinierte Services.

Diese kannst du direkt in der Firmware einbinden und nutzen

: Bearbeitet durch User
Autor: Aaron C. (Firma: atcnetz.de) (atc1441)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich vermute das er in diesem fall speziell die hochgeladene tracker 
firmware meint.

Dort muss in dieser Charakteristik  2A15 , der unixtime stamp als long 
oder int32 geschrieben werden.

Der unixzeit muss noch die zeitzone in sekunden addiert werden, oder 
halt abgezogen jenachdem wo mann ist.

Wenn gewollt kann ich später die app hier hochladen mit der ich meine 
tracker und das eink display einstelle, dort wird bei start eine ble 
suche gestartet und man kann das gerät auswählen. Danach drückt man 
einfach den button zeit einstellen. Ist zwar nicht viel funktion drin 
aber dafür reicht es.

Mfg

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.