Update bootlogo and pinetime-app with OTA/DFU
#2
Hi @lookin, Congratulations for your PineTime and your first achievements with wasp-os  and InfiniTime Smile

Wow, you tried a lot of things to build and customize your own InfiniTime firmware. The documentation of the project is certainly not complete/clear enough, I'll try to give you more information about all of it Smile

Toolchain & NRF SDK
I recommend you use exactly the same version than the one specified in the project documentation. The compiler from your distro might be older or newer than the one I use to test InfiniTime, and might yield other warnings/errors. 
Same for the NRF SDK. I use version 15.3 and you use version 17. I think NRF follows the semantic versioning, meaning that there can be many breaking changes between 2 different major versions of the SDK. To be honest, I'm surprised that it compiled without errors.

Boot logo
The bootloader fetches the boot logo from the external SPI memory. It does not support PNG or any compressed format. The byte array must contain a raw bitmap of RGB565 pixels (115200 bytes). I recommend you use this converter tool fro lvgl to convert your picture into a byte array.
Then, you need to actually flash it in this external SPI flash memory. You're right, pinetime-graphics is the tool you should use but... It is not designed to be flashed and run by the bootloader. The only way to use this tool is to flash it using a SWD flasher, run it, and then re-flash the bootloader and InfiniTime (yes, pinetime-graphics will overwrite the bootloader and the firmware).

When you tried to OTA this firmware, the bootloader actually tried to run it, but it didn't run properly, the watchdog reset the CPU and MCUBoot reverted to the last working firmware. You've actually validated that the bootloader does its job correctly Wink

Building your own InfiniTime firmware
I think you were mostly right about this part, pinetime-app-0.9.0.bin is the firmware version that does not support the bootloader. You should use pinetime-mcuboot-app-0.9.0.bin instead.
You can easily check that your build is running by opening the SystemInfo app once InfiniTime is running, it displays the date and time of the build.

Changing the month names
The clock app does not use lv_calendar so your changes won't have any effects. The constants that are displayed are defined in Clock.cpp (src/displayapp/screens/Clock.cpp).

I hope these info will help you building and flashing InfiniTime on your device! Feel free to ask more info here or on the chat rooms (all networks are bridged, so you can choose the one you prefer, every one will see your messages).
Working on InfiniTime, the FOSS firmware for the PineTime: https://github.com/InfiniTimeOrg/InfiniTime

Mastodon : https://mastodon.codingfield.com/@JF
Twitter : https://twitter.com/codingfield
Matrix : @JF002:matrix.org


Messages In This Thread
RE: Update bootlogo and pinetime-app with OTA/DFU - by JF002 - 11-22-2020, 04:58 AM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Develop a new firmware for PineTime belushi 2 1,365 09-25-2023, 12:32 PM
Last Post: ccchan234
  Bluetooth BLE-MIDI-controller app for PineTime / InfiniTime Luno 0 553 08-20-2023, 05:17 AM
Last Post: Luno
  Zephyr Backlight Examples for PineTime lcj 0 734 05-06-2023, 02:54 PM
Last Post: lcj
  Zephyr is ready for pinetime jandy 1 2,143 05-06-2023, 02:15 PM
Last Post: lcj
  Send a message from Android to pinetime via BLE razrosman 0 943 11-05-2022, 08:24 AM
Last Post: razrosman
  PineTime Stuck in DFU Mode Eesha Barua 1 2,095 07-25-2022, 09:17 PM
Last Post: heyhewmike
  Idle tracking with PineTime: how versatile it is? schaman 1 1,675 07-13-2022, 12:50 AM
Last Post: wibble
  PineTime implemented with partial of pebble API jandy 0 1,582 03-20-2022, 08:58 PM
Last Post: jandy
  "Pine64 USB JTAG Adapter + OpenOCD + PineTime" should it work? ITCactus 4 3,999 03-02-2022, 05:58 AM
Last Post: wibble
  Zephyr based Pinetime jandy 4 4,753 11-11-2021, 05:53 AM
Last Post: jandy

Forum Jump:


Users browsing this thread: 1 Guest(s)