https://github.com/mihaigalos/uartboot
An UART bootloader for Arduino/AVR.
https://github.com/mihaigalos/uartboot
Last synced: 5 months ago
JSON representation
An UART bootloader for Arduino/AVR.
- Host: GitHub
- URL: https://github.com/mihaigalos/uartboot
- Owner: mihaigalos
- License: gpl-2.0
- Created: 2021-01-06T08:40:56.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-11-13T18:54:35.000Z (over 2 years ago)
- Last Synced: 2025-01-09T04:49:18.145Z (6 months ago)
- Language: C++
- Size: 154 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
:construction: **Work in Progress** :construction:
# uartboot
 [](https://codecov.io/gh/mihaigalos/uartboot) [](LICENSE) [](https://github.com/Aaronepower/tokei)

An UART bootloader for Arduino/AVR, <1kB.
The implementation uses software UART / bit-bang on any microcontroller data pin.Usecases:
* in-situ updates via i.e. USB-to-UART bridge.
* remote software updates via i.e. RF-to-UART module.### Build and Test
First, get the sources:
```
git clone https://github.com/mihaigalos/uartboot.git && cd uartboot
```#### Baremetal
Building and testing is managed by `bazel`, including dependencies to other repos.
```bash
bazel build //...
bazel test //...bazel build --config=328p --verbose_failures --color=yes 2>&1 //:uartboot_hex
```#### Using Docker
```bash
rm bazel-* || true && docker run -it --rm --cap-add SYS_PTRACE -v $(pwd):/src -v /tmp:/tmp/bazel docker.pkg.github.com/mihaigalos/docker/avr-gcc /bin/zsh -c "cd /src && bazel --output_base=/tmp/bazel test //..."
```### Flashing
Example flashing of `uartboot.hex`:
```
sudo bazel-bin/host/host_/host test/host/demo_blink/demo_blink.hex test/host/demo_metadata.yaml
```You can use CuteCom on Linux for debugging operations with the serial port.