Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 1 | # [mcuboot](http://mcuboot.com/) |
| 2 | |
| 3 | [][coverity] |
Fabio Utzig | de1d72d | 2020-11-10 12:35:04 -0300 | [diff] [blame^] | 4 | [][travis] |
Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 5 | |
| 6 | [coverity]: https://scan.coverity.com/projects/mcuboot |
Fabio Utzig | de1d72d | 2020-11-10 12:35:04 -0300 | [diff] [blame^] | 7 | [travis]: https://travis-ci.org/mcu-tools/mcuboot |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 8 | |
Andrzej Puzdrowski | 6934463 | 2020-10-30 15:36:49 +0100 | [diff] [blame] | 9 | This is mcuboot version 1.7.0-rc1 |
David Brown | a3be264 | 2017-07-26 19:02:33 -0600 | [diff] [blame] | 10 | |
David Brown | 586c84e | 2019-12-02 12:02:59 -0700 | [diff] [blame] | 11 | MCUboot is a secure bootloader for 32-bit MCUs. The goal of MCUboot is to |
Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 12 | define a common infrastructure for the bootloader, system flash layout on |
| 13 | microcontroller systems, and to provide a secure bootloader that enables |
David Brown | 586c84e | 2019-12-02 12:02:59 -0700 | [diff] [blame] | 14 | simple software upgrades. |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 15 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame] | 16 | MCUboot is operating system and hardware independent and relies on |
David Brown | 586c84e | 2019-12-02 12:02:59 -0700 | [diff] [blame] | 17 | hardware porting layers from the operating. Currently, mcuboot works |
| 18 | with both the Apache Mynewt and Zephyr operating systems, but more |
| 19 | ports are planned in the future. RIOT is currently supported as a boot |
Fabio Utzig | 756ca86 | 2017-07-20 13:38:22 -0300 | [diff] [blame] | 20 | target with a complete port planned. |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 21 | |
Carles Cufi | 3b61e70 | 2018-01-23 15:43:46 +0100 | [diff] [blame] | 22 | ## Using MCUboot |
| 23 | |
| 24 | Instructions for different operating systems can be found here: |
| 25 | - [Zephyr](docs/readme-zephyr.md) |
| 26 | - [Mynewt](docs/readme-mynewt.md) |
| 27 | - [RIOT](docs/readme-riot.md) |
George Beckstein | 1c399bb | 2020-11-05 00:51:09 -0500 | [diff] [blame] | 28 | - [Mbed-OS](docs/readme-mbed.md) |
David Brown | 4cb70cc | 2020-05-11 14:10:00 -0600 | [diff] [blame] | 29 | - [Simulator](sim/README.rst) |
Carles Cufi | 3b61e70 | 2018-01-23 15:43:46 +0100 | [diff] [blame] | 30 | |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 31 | ## Roadmap |
| 32 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame] | 33 | The issues being planned and worked on are tracked using GitHub issues. To |
| 34 | participate please visit: |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 35 | |
Fabio Utzig | de1d72d | 2020-11-10 12:35:04 -0300 | [diff] [blame^] | 36 | [MCUBoot GitHub Issues](https://github.com/mcu-tools/mcuboot/issues) |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame] | 37 | |
| 38 | ~~Issues were previously tracked on [MCUboot JIRA](https://runtimeco.atlassian.net/projects/MCUB/summary) |
| 39 | , but it is now deprecated.~~ |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 40 | |
Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 41 | ## Browsing |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 42 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame] | 43 | Information and documentation on the bootloader are stored within the source. |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 44 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame] | 45 | ~~It was previously also documented on confluence: |
| 46 | [MCUBoot Confluence](https://runtimeco.atlassian.net/wiki/discover/all-updates) |
| 47 | however, it is now deprecated and not currently maintained~~ |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 48 | |
Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 49 | For more information in the source, here are some pointers: |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 50 | |
Fabio Utzig | b519ed0 | 2018-02-13 14:20:03 -0200 | [diff] [blame] | 51 | - [boot/bootutil](boot/bootutil): The core of the bootloader itself. |
| 52 | - [boot/boot\_serial](boot/boot_serial): Support for serial upgrade within the bootloader itself. |
| 53 | - [boot/zephyr](boot/zephyr): Port of the bootloader to Zephyr |
| 54 | - [boot/mynewt](boot/mynewt): Mynewt bootloader app |
| 55 | - [imgtool](scripts/imgtool.py): A tool to securely sign firmware images for booting by mcuboot. |
| 56 | - [sim](sim): A bootloader simulator for testing and regression |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 57 | |
Fabio Utzig | 7402374 | 2017-07-20 09:20:43 -0300 | [diff] [blame] | 58 | ## Joining |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 59 | |
Fabio Utzig | 7402374 | 2017-07-20 09:20:43 -0300 | [diff] [blame] | 60 | Developers welcome! |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 61 | |
Fabio Utzig | 7402374 | 2017-07-20 09:20:43 -0300 | [diff] [blame] | 62 | * Our developer mailing list: |
David Brown | a222bf3 | 2020-02-07 11:53:06 -0700 | [diff] [blame] | 63 | https://groups.io/g/mcuboot |
Fabio Utzig | 83e5929 | 2017-07-24 07:59:26 -0300 | [diff] [blame] | 64 | * Our Slack channel: https://mcuboot.slack.com/ <br /> |
| 65 | Get your invite [here!](https://join.slack.com/t/mcuboot/shared_invite/MjE2NDcwMTQ2MTYyLTE1MDA4MTIzNTAtYzgyZTU0NjFkMg) |
Fabio Utzig | 7402374 | 2017-07-20 09:20:43 -0300 | [diff] [blame] | 66 | * Our IRC channel: http://irc.freenode.net, #mcuboot |