Under certain circumstances (still not fully understood), initialization performed in prv_main_task_init() can make task watchdog to trigger as some other tasks (e.g. KernelBG) end up blocked for a long period of time (>6s). This can cause a crash loop, making system unbootable. Instead, pause the task watchdog for a certain period of time. HW watchdog will still be kicked. If for whatever reason init takes > 30s, task watchdog will become active again and will eventually kick us out. Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com> |
||
|---|---|---|
| applib-targets | ||
| bin | ||
| checkers | ||
| devsite | ||
| docs | ||
| platform | ||
| python_libs | ||
| release | ||
| release-notes | ||
| resources | ||
| sdk | ||
| src | ||
| stored_apps | ||
| tests | ||
| third_party | ||
| tools | ||
| waftools | ||
| .clang-format | ||
| .gdbinit | ||
| .gitattributes | ||
| .gitignore | ||
| CONTRIBUTING | ||
| Doxyfile | ||
| Doxyfile-all-graphs | ||
| DoxygenLayout.xml | ||
| LICENSE | ||
| README.md | ||
| analyze.sh | ||
| ftdi.patch | ||
| ftdi_fix.sh | ||
| ftdi_reload.sh | ||
| ftdi_unload.sh | ||
| gdb.cmd | ||
| hard_flash.sh | ||
| pblogger | ||
| prompt.sh | ||
| qemu_run.sh | ||
| requirements-brew.txt | ||
| requirements-linux.txt | ||
| requirements-osx.txt | ||
| requirements.txt | ||
| wscript | ||
README.md
PebbleOS
This is the latest version of the internal repository from Pebble Technology providing the software to run on Pebble watches. Proprietary source code has been removed from this repository and it will not compile as-is. This is for information only.
This is not an officially supported Google product. This project is not eligible for the Google Open Source Software Vulnerability Rewards Program.
Restoring the Directory Structure
To clarify the licensing of third party code, all non-Pebble code has been
moved into the third_party/ directory. A python script is provided to
restore the expected structure. It may be helpful to run this script first:
./third_party/restore_tree.py
Missing Components
Some parts of the firmware have been removed for licensing reasons, including:
- All of the system fonts
- The Bluetooth stack, except for a stub that will function in an emulator
- The STM peripheral library
- The voice codec
- ARM CMSIS
- For the Pebble 2 HR, the heart rate monitor driver
Replacements will be needed for these components if you wish to use the corresponding functionality.