11-21-2020, 06:46 AM
Hello everybody,
I am already 4 days new proud owner of PineTime
. After some playing with firmware updates, flashing wasp-os and solving bug with hanging bootloader in version 0.8.2, I finally have my PineTime updated to InfiniTime 0.9.0 - I used binary packages from https://github.com/daniel-thompson/wasp-.../350930611 (for other newbies like me: you can download it after logging into github...) which I found on this great video: www.youtube.com/watch?v=lPasAt1LJmo
After that, I started to try changing boot image and to compile my own Infinitime binary - for this first try only with changed day and month names to my native language (czech). And I'm hanging already 2 days on uploading new firmware, which seems to be uploaded correctly, but make no changes on my PineTime
.
I surely don't want to use SWD cable connection, when there is working OTA way with nRF Connect - I don't have JTAG programmer, but for the worst case I can use my Raspberry Pi, but I thing, that it will be more pain, than with DFU.
Can somebody of you help me with this way? I will be glad to write than some beginners tutorial into wiki, to help others make this first step...
My (not working) way:
1) I'm using Ubuntu 20.04 PC and Android Phone, PineTime from last batch with opened flash and firmware as written above.
2) used tutorials are https://github.com/JF002/Pinetime/blob/m.../README.md and https://github.com/JF002/Pinetime/blob/d...Program.md (and many others :-))
3) compiler is package arm-none-eabi from Ubuntu 20.04 repository, nRF-SDK is installed is copied (unzipped) into my home directory, last version SDK_17.0.2_d674dde
4) image is converted using https://www.digole.com/tools/PicturetoC_...verter.php - PNG, 240x240px, changed only hex data in file bootloader/boot_graphics.h
5) changed constants of day and month names in file src/libs/lvgl/src/lv_objx/lv_calendar.c
6) on root of git data directory: cmake -DNRF5_SDK_PATH=/home/lookin/sandbox/nRF5_SDK_17.0.2_d674dde/ -DUSE_JLINK=0 -DARM_NONE_EABI_TOOLCHAIN_PATH=/usr/ -DUSE_OPENOCD=1
7) on the same directory "make -j" - everything compiled ok
8) mcuboot/scripts/imgtool.py create --align 4 --version 1.0.0 --header-size 32 --slot-size 475136 --pad-header src/pinetime-app-0.9.0.bin imageA.bin
9) mcuboot/scripts/imgtool.py create --align 4 --version 1.0.0 --header-size 32 --slot-size 475136 --pad-header src/pinetime-graphics-0.9.0.bin imageB.bin
10) ~/.local/bin/adafruit-nrfutil dfu genpkg --dev-type 0x0052 --application imageA.bin dfu-imgA.zip
11) ~/.local/bin/adafruit-nrfutil dfu genpkg --dev-type 0x0052 --application imageB.bin dfu-imgB.zip
12) with nRF Connect I upload boot image: dfu-imgB.zip - everything is ok, 100 % pass, "image ok", PineTime is rebooting and starts with old "PineTime" picture
13) also imageA.zip is completly loaded, after "image ok" label is device rebooting, hangs for a while on PineTime logo reboots once more and start old app...
I will be thankfull for all ideas, what am I doing wrong...
Hae a nice day
Lukas
I am already 4 days new proud owner of PineTime
. After some playing with firmware updates, flashing wasp-os and solving bug with hanging bootloader in version 0.8.2, I finally have my PineTime updated to InfiniTime 0.9.0 - I used binary packages from https://github.com/daniel-thompson/wasp-.../350930611 (for other newbies like me: you can download it after logging into github...) which I found on this great video: www.youtube.com/watch?v=lPasAt1LJmoAfter that, I started to try changing boot image and to compile my own Infinitime binary - for this first try only with changed day and month names to my native language (czech). And I'm hanging already 2 days on uploading new firmware, which seems to be uploaded correctly, but make no changes on my PineTime
.I surely don't want to use SWD cable connection, when there is working OTA way with nRF Connect - I don't have JTAG programmer, but for the worst case I can use my Raspberry Pi, but I thing, that it will be more pain, than with DFU.
Can somebody of you help me with this way? I will be glad to write than some beginners tutorial into wiki, to help others make this first step...
My (not working) way:
1) I'm using Ubuntu 20.04 PC and Android Phone, PineTime from last batch with opened flash and firmware as written above.
2) used tutorials are https://github.com/JF002/Pinetime/blob/m.../README.md and https://github.com/JF002/Pinetime/blob/d...Program.md (and many others :-))
3) compiler is package arm-none-eabi from Ubuntu 20.04 repository, nRF-SDK is installed is copied (unzipped) into my home directory, last version SDK_17.0.2_d674dde
4) image is converted using https://www.digole.com/tools/PicturetoC_...verter.php - PNG, 240x240px, changed only hex data in file bootloader/boot_graphics.h
5) changed constants of day and month names in file src/libs/lvgl/src/lv_objx/lv_calendar.c
6) on root of git data directory: cmake -DNRF5_SDK_PATH=/home/lookin/sandbox/nRF5_SDK_17.0.2_d674dde/ -DUSE_JLINK=0 -DARM_NONE_EABI_TOOLCHAIN_PATH=/usr/ -DUSE_OPENOCD=1
7) on the same directory "make -j" - everything compiled ok
8) mcuboot/scripts/imgtool.py create --align 4 --version 1.0.0 --header-size 32 --slot-size 475136 --pad-header src/pinetime-app-0.9.0.bin imageA.bin
9) mcuboot/scripts/imgtool.py create --align 4 --version 1.0.0 --header-size 32 --slot-size 475136 --pad-header src/pinetime-graphics-0.9.0.bin imageB.bin
10) ~/.local/bin/adafruit-nrfutil dfu genpkg --dev-type 0x0052 --application imageA.bin dfu-imgA.zip
11) ~/.local/bin/adafruit-nrfutil dfu genpkg --dev-type 0x0052 --application imageB.bin dfu-imgB.zip
12) with nRF Connect I upload boot image: dfu-imgB.zip - everything is ok, 100 % pass, "image ok", PineTime is rebooting and starts with old "PineTime" picture
13) also imageA.zip is completly loaded, after "image ok" label is device rebooting, hangs for a while on PineTime logo reboots once more and start old app...
I will be thankfull for all ideas, what am I doing wrong...
Hae a nice day
Lukas

Update bootlogo and pinetime-app with OTA/DFU


