User Tools

Site Tools


pinetime_introduction

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
pinetime_introduction [2022/02/19 22:21] – [Development] nicolaspinetime_introduction [2022/03/01 13:09] (current) – [Development] nicolas
Line 1: Line 1:
-====PineTime - 14/02/22 - 11:58==== +====PineTime - 01/03/22 - 13:00==== 
  
 https://wiki.pine64.org/wiki/PineTime https://wiki.pine64.org/wiki/PineTime
Line 43: Line 43:
 ** CMake - Build make configurations ** ** CMake - Build make configurations **
  
-<code bash>https://zbm2.com/dokuwiki/doku.php?id=pinetime_introductionhttps://zbm2.com/dokuwiki/doku.php?id=pinetime_introduction+<code bash>
 cd ~/Documents/PineTime/InfiniTime/build cd ~/Documents/PineTime/InfiniTime/build
  
-cmake -DARM_NONE_EABI_TOOLCHAIN_PATH=/opt/gcc-arm-none-eabi-9-2020-q2-update/ -DNRF5_SDK_PATH=/opt/nRFSDK -DUSE_OPENOCD=1  ../+cmake -DARM_NONE_EABI_TOOLCHAIN_PATH=/opt/gcc-arm-none-eabi-9-2020-q2-update/ -DNRF5_SDK_PATH=/opt/nRFSDK -DUSE_OPENOCD=1  ../ sudo apt-get install ninja-build 
 + sudo apt-get install ninja-build 
 </code> </code>
  
Line 87: Line 89:
 https://lupyuen.github.io/pinetime-rust-mynewt/articles/cloud#add-github-actions-to-our-fork https://lupyuen.github.io/pinetime-rust-mynewt/articles/cloud#add-github-actions-to-our-fork
  
-I used the develop work flow main.yml on my fork, all runs well.+I used the develop work flow main.yml on my fork, all runs well. For the time being I will build locally with VSCode.
  
 nRF Connect For Mobile app to upload the DFU file or use GadgetBridge. nRF Connect For Mobile app to upload the DFU file or use GadgetBridge.
Line 100: Line 102:
  
 **Cmake tools extension configuration** **Cmake tools extension configuration**
- + run chmod u+x YourScriptFileName.sh
 Cmake: Configure Environment Cmake: Configure Environment
 Environment variables to pass to CMake during configure. Environment variables to pass to CMake during configure.
Line 117: Line 119:
 ====Simulator Setup==== ====Simulator Setup====
  
-Install SDL2 https://www.libsdl.org/download-2.0.php +https://github.com/InfiniTimeOrg/InfiniSim
- +
-https://github.com/NeroBurner/InfiniTime/tree/lv_simulation +
- +
-Clone the branch +
-<code bash> +
-git clone --branch lv_simulation https://github.com/NeroBurner/InfiniTime.git +
-cd lv_sim +
-git submodule update --init +
-</code>+
  
 Build simulator version Build simulator version
 <code bash> <code bash>
-cd ~/Documents/PineTimeSim/InfiniTime/lv_sim+cd ~/Documents/PineTimeSim/InfiniSim
 cmake -S . -B build cmake -S . -B build
-cmake --build build --clean-first # Clean first if needed+cmake --build build -j4 --clean-first # Clean first if needed
 </code> </code>
  
 Run simulator Run simulator
 <code bash> <code bash>
-build/pinesim+./build/infinisim --hide-status
 </code> </code>
  
 Commands Commands
  
-https://github.com/NeroBurner/InfiniTime/blob/84b424cafff4597bca39b5e75a3a596c18852a5a/lv_sim/main.cpp#L632+Left mouse button: simulates your finger, just click to tap, click and drag to swipe 
 +Right mouse button: simulates the hardware button (for example turn the screen off or on again)
  
-    Switch between screens with numbers on the keyboard +Using the keyboard the following events can be triggered:
-    Right mouse button - Back,Wake up +
-    r ... enable ringing +
-    R ... disable ringing +
-    m ... let motor run for 100 ms +
-    M ... stop motor let motor run for max time (255 ms) +
-    v ... increase remaining battery by 10 % +
-    V ... decrease remaining battery by 10 % +
-    c ... battery is charging +
-    C ... battery is not charging+
  
 +  *r ... enable ringing
 +  *R ... disable ringing
 +  *m ... let motor run for 100 ms
 +  *M ... let motor run for 255 ms
 +  *n ... send notification
 +  *N ... clear all notifications
 +  *b ... connect Bluetooth
 +  *B ... disconnect Bluetooth
 +  *v ... increase battery voltage and percentage
 +  *V ... decrease battery voltage and percentage
 +  *c ... charging,
 +  *C ... not charging
 +  *l ... increase brightness level
 +  *L ... lower brightness level
 +  *p ... enable print lvgl memory usage to terminal
 +  *P ... disable print memory usage
 +  *s ... increase step count by 500 steps
 +  *S ... decrease step count by 500 steps
 +  *h ... set heartrate running, and on further presses increase by 10 bpm
 +  *H ... stop heartrate
 +
 +====Run Simulator from VSCode====
 +
 +
 +Install Ninja
 +<code>
 +sudo apt-get install ninja-build
 +</code>
 +
 +Revise VSCode build script - Notes to be added.
 +
 +F7 compiles the project F5 launches the simulator
  
 ----- -----
Line 161: Line 178:
  
   *Debugging?   *Debugging?
-  *Shake to refresh app view 
   *Multiple BLE connections? Handling of BLE messages   *Multiple BLE connections? Handling of BLE messages
   *Make hard wired powered dev board?   *Make hard wired powered dev board?
    
-**Notes** 
  
-https://zbm2.com/dokuwiki/doku.php?id=pinetime_introduction +==== Development Notes====
- +
- +
-==== Development====+
  
 InfiniTime uses LVGL Dev 7.11 InfiniTime uses LVGL Dev 7.11
Line 184: Line 196:
  
  
 +cd ~/Documents/PineTimeSim/InfiniSim/InfiniTime
 +
 +
 +Notes to be looked at!
 +
 +Linux BLE daemon
 +https://gitea.arsenm.dev/Arsen6331/itd
  
 +[T] <KieranC> pinetime-mcuboot-app.bin is different from pinetime-mcuboot-app-image.bin, the latter contains a header which is needed to boot using the bootloader
 +[T] <Avamander> pinetime-app.bin however you can flash at 0x0 and it replaces/skips the bootloader, nice fast debugging!
 +[T] <KieranC> You can flash the former at 0x0 and boot without the bootloader but it won't boot if flashed at 0x8
 +[T] <Jasmin2o22> Thx mate, perfect (re @KieranC: [M] <jf002> > <@p64protocolbot4:matrix.org> [T] <KieranC> Forwarded from KieranC: I'm doing
 +openocd -f interface/stlink.cfg -f target/nrf52.cfg -c 'init' -c 'program bootloader.bin' -c 'reset'
 +then
 +openocd -f interface/stlink.cfg -f target/nrf52.cfg -c 'init' -c 'program src/pinetime-mcuboot-app-1.6.0.bin' -c 'reset'
 +You need to flash a file called pinetime
  
  
pinetime_introduction.1645309315.txt.gz · Last modified: by nicolas