wasp-os status
#1
I'm trying to install wasp-os without much success. It doesn't look like the project is very current, but it's an attractive alternative because everything is written in Python. I'm going to detail the steps I've taken and where it's going wrong.


I installed watchmate on my Linux system from the repositories. The repository version seems to be current. It works great, and I updated InfiniTime to version 1.13 without incident. Such an intuitive and easy to use program.


I installed the latest ARM gnu toolchain and added the 'bin' directory to my PATH environment variable.


I also used the following steps to download and build wasp-os. This is exactly what's shown in the installation guide and it works fine.


Code:
$ sudo apt install \
  wget git build-essential libsdl2-2.0-0 python3-click python3-gi \
  python3-numpy python3-pexpect python3-pil python3-pip python3-pydbus \
  python3-serial unzip
$ pip3 install --user cbor pysdl2 tomli
$ sudo apt install sphinx graphviz python3-recommonmark
# next step is redundant but I did it anyway
$ pip3 install --user -r wasp/requirements.txt

$ git clone https://github.com/wasp-os/wasp-os.git
$ cd wasp-os
$ make sim
$ make check
$ make submodules
$ make softdevice
$ make -j `nproc` BOARD=pinetime all
$ make docs

Everything so far works as advertised.



Then when I use watchmate to update the firmware (installing micropython.zip from the 'build-pinetime' directory) it uploads seamlessly. (This step doesn't work when I try to update the firmware with wasp-os-0.4.1.zip from the official distribution).



But now I still have InfiniTime and there is no sign of wasp-os on my PineTime watch!


Does anyone have advice about what I might be missing here? I've stumbled at the goal-line, and I assume I'm missing something obvious.
  Reply
#2
Did you follow the instructions installing Wasp-os from Infinitime?

Cheers!
Gary
  Reply
#3
(08-24-2023, 09:46 PM)GaryM Wrote: Did you follow the instructions installing Wasp-os from Infinitime?

Cheers!
Gary

Thanks for the advice. Unfortunately I haven't gotten a good outcome so far. This is a factory sealed watch, so I'm afraid I might be stuck for good.

That video doesn't work for me as advertised. The blue pinecone slowly turning white is replaced by a white pinecone that only stays for a second. 

The first time I tried to do this, the watch kept boot looping and the nrf connect process kept restarting. I tried to use watchmate to upload reloader-mcuboot.zip and it sort of seemed to work.

Then I could connect with nrfConnect, but the results are still not good.

I can upload reloader-mcuboot.zip and micropython.zip, but then it hangs at 100% and the watch is left in an unusable state. I wait a very long time at 100%, and nothing happens. The last message in the log says "[DFU] Uploading firmware..."

Eventually I have to exit. I see a pinecone with an arrow labeled Start. I click the watch button. The white pinecone appears for one second and I'm back to the start arrow. I can keep pushing the button and the same thing repeats.

I exit and relaunch nrf Connect. I re-connect to PineDFU in order to install reloader-factory.zip, when the process once again hangs at 100%. It sits there with the pinecone/bluetooth screen and nothing happens for a long time. nRF Connect says "uploading..." and the upload status is at 100% (5.5kb/s) even though it doesn't seem to be doing anything.

Eventually I get sick of waiting and disconnect. The watch is now in an unusable state with the Pinecone logo and a bluetooth icon next to it.

I can upload anything with nrf Connect but the upload always freezes at 100% and the result is no change to the watch.

I'm afraid this may have cost me my PineTime watch.
  Reply
#4
Don't loose hope yet...What version of nRF Connect are you using? The current versions like version 0.7.1 do not work. Try using an older version of nrf connect like this one specifically, https://github.com/NordicSemiconductor/A...ag/v4.24.3

Gary
  Reply
#5
I am using version 4.26.1.

I will try the version you suggest. Thanks so much for the tip!
  Reply
#6
Information 
Here is my notes from today, going from InfiniTime to WASP OS and back to InfiniTime.

PineTime is FOSS SmartWatch.

Website: https://www.pine64.org/pinetime/

1) InfiniTime

This is default software, based on FreeRTOS and C++.

Wiki: https://wiki.pine64.org/wiki/PineTime

1. Install F-Droid to Android smartphone https://f-droid.org
2. From F-Droid, install GadgetBridge.
3. Upgrade InfiniTime https://wiki.pine64.org/wiki/Upgrade_Pin...Time_1.0.0

2) WASP OS

This is alternative software, with MicroPython.

2a) WASP OS Simulator

At Debian 12:

sudo apt install -y \
  wget git build-essential unzip libsdl2-2.0-0 \
  python3-click \
  python3-cryptography \
  python3-cbor \
  python3-gi \
  python3-numpy \
  python3-pexpect \
  python3-pil
  python3-pydbus \
  python3-Pillow \
  python3-serial \
  python3-pygobject \
  python3-sdl2 \
  python3-pytest \
  tomli \
  ubertooth-firmware-source

git clone https://github.com/wasp-os/wasp-os

cd wasp-os

make sim

2b) WASP OS to PineTime SmartWatch

https://wiki.pine64.org/wiki/Switching_y...nd_Wasp-os

1. Install with GadgetBridge (I'm using GadgetBridge Nightly, by adding URL to F-Droid https://freeyourgadget.codeberg.page/fdroid/repo/ )
2. Currently only official release of WASP OS works, I read it from some issue. I did not try any other version.
3. With Android webbrowser, download wasp-os-4.1.zip from https://github.com/wasp-os/wasp-os/releases , and unzip it at Android.
4. With GadgetBridge, connect to PineTime, and then use right top 3 dots / File Installer to install wasp-os-0.4.1/wasp-os-4.1/build-pinetime/reloader-mcuboot.zip
5. When there is arrow, and display is not flashing white pinecone, connect from GadgetBridge to PineTime this different way.
6. Click bottom + (blue background, white +)
7. Click Discovery and Pairing options
8. Enable with setting slider to right these: CompanionDevice Pairing, Discover unsupported devices
9. Click left top arrow back (white arrow, red background)
10. Click Start Discovery
11. Click PineDFU. It will copy MAC address to clipboard.
12. Click left top arrow back (white arrow, red background)
13. Click left top hamburger menu
14. Click Error finding (that is below settings option)
15. Click 9th from bottom "Add test device manually". Red button, white text.
16. Remove text from input field. Paste with Ctrl-v from clipboard, or hold at in put field and paste.
17.  From pasted text, remove beginning of text, only leave MAC address like 12:34:56:78
18. From dropdown menu, select PineTime. Click Add button, to add device.
19. Click left top arrow back (white arrow, red background)
20. Click right 3 dots / File Installer / Add file wasp-os-0.4.1/wasp-os-4.1/build-pinetime/micropython.zip
21. Now you have WASP OS.

3) From WASP OS back to Infinitime

https://wiki.pine64.org/wiki/Switching_y...nd_Wasp-os

1. Install reloader-infinitime-recovery-0.14.1.zip
2. After that, connect to PineTime with pairing options 2 at top enabled. Connect without pairing.
3. Right 3 dots / File Installer / Install newest pinetime-mcuboot-app-dfu-1.13.0.zip downloaded from https://github.com/InfiniTimeOrg/InfiniTime/releases
4. Right 3 dots / Remove device
5. Click bottom + (blue background, white +)
6. Click Discovery and Pairing options. Only top one slider enabled to right.
7. Click left top arrow back (white arrow, red background)
8. Connect to InfiniTime with pairing. Type yellow number to GadgetBridge. If PineTime display turns off, click button once to show yellow pairing number again. After pairing, slide PineTime display down, to show time. Now time will sync from Android to PineTime.
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Wasp-os editing main.py Mpoint 4 2,875 08-07-2021, 02:34 PM
Last Post: danielt
Sad wasp simulation error pratyush049 1 3,076 06-24-2020, 06:51 AM
Last Post: danielt

Forum Jump:


Users browsing this thread: 1 Guest(s)