3.2 KiB
jebbatime
jebbatime is an operating system and application suite for the PineTime watch.
Build
To build.
- Debian Buster (10).
Dependenices
Debian Packages
Install dependencies from Debian repos.
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 \
graphviz python3-recommonmark \
python3-sphinx \
python3-cairo \
python3-ecdsa \
pkg-config \
bluez \
ntpdate \
sudo \
gcc-arm-none-eabi ccache \
fonts-lobstertwo
ccache
Add to ~/.bashrc
:
PATH=~/.local/bin:/usr/lib/ccache:$PATH
Source
Source sauce.
git clone git@spacecruft.org:jebbatime/jebbatime.git
# Or
git clone https://spacecruft.org/jebbatime/jebbatime.git
cd jebbatime
./scripts/jebbatime-install-deb-deps
./scripts/jebbatime-install-py-deps
Python
Manually, install Python dependencies with pip
.
pip3 install --user -r wasp/requirements.txt
pip3 install --user freetype-py
Bullseye
Debian Bullseye (11) on ppc64le wants rustc
to build/install pip
package cryptography
.
./scripts/jebbatime-install-deb-deps
sudo apt -y install rustc
./scripts/jebbatime-install-py-deps
Submodules
Some submodules are mirrored.
make submodules
# XXX grabs some source zips
make softdevice
Compile
Build thang.
# Blow out, rinse, repeat. Should take less than a minute or so.
make mrproper
make clean BOARD=pinetime
make submodules
make all BOARD=pinetime
Fonts
HOWTO add font.
cd tools/micropython-font-to-py
./font_to_py.py \
/usr/share/fonts/opentype/lobstertwo/LobsterTwo-Bold.otf \
--xmap 64 \
--errchar 58 \
--smallest 48 \
--largest 58 \
lobstertwobold64.py
mv lobstertwobold64.py ../../wasp/fonts/
Setup
This assumes two devices, the sealed watch and the open developers watch.
mkdir ~/.config/
cp -p config/jebbatime.conf ~/.config/
# Adjust as needed.
vim ~/.config/jebbatime.conf
Use
Basic scripts are in scripts/
.
Upstream
Fork
jebbatime is a lesser fork of Daniel Thompson's Wasp-os.
- Same licenses.
- Renamed.
- Removed more than added.
- Removing bits not used on Pinetime.
- Removing bits not used by me.
- No step counter.
- No heart rate monitor.
- Etc.
- Not much useful added.
- Nice digital face font. Battery and BLE icon removed from main app.
Source
Upstream source code:
Non-free bits
XXX Appears to include non-free "5-Clause Nordic License". :|
-
https://wasp-os.readthedocs.io/en/latest/five-clause-nordic.html
-
https://infocenter.nordicsemi.com/index.jsp?topic=%2Fstruct_nrf52%2Fstruct%2Fnrf52_softdevices.html "A SoftDevice is a precompiled and linked binary software implementing a wireless protocol developed by Nordic Semiconductor."
-
Non-free code gets pulled in via this build script:
micropython/ports/nrf/drivers/bluetooth/download_ble_stack.sh
-
In
micropython/ports/nrf/drivers/bluetooth/
4. This software, with or without modification, must only be used with a
Nordic Semiconductor ASA integrated circuit.