Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 1 | # [mcuboot](http://mcuboot.com/) |
| 2 | |
| 3 | [][coverity] |
| 4 | [][travis] |
| 5 | |
| 6 | [coverity]: https://scan.coverity.com/projects/mcuboot |
| 7 | [travis]: https://travis-ci.org/runtimeco/mcuboot |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 8 | |
Fabio Utzig | b97ec0f | 2018-06-26 13:24:41 -0300 | [diff] [blame] | 9 | This is mcuboot, version 1.2.0 |
David Brown | a3be264 | 2017-07-26 19:02:33 -0600 | [diff] [blame] | 10 | |
Carles Cufi | 90eda80 | 2018-01-29 18:33:20 +0100 | [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 |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 14 | easy software upgrade. |
| 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 |
| 17 | hardware porting layers from the operating system it works with. Currently, |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 18 | mcuboot works with both the Apache Mynewt, and Zephyr operating systems, but |
Fabio Utzig | 097f76b | 2017-07-20 08:59:51 -0300 | [diff] [blame] | 19 | more 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) |
| 28 | |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 29 | ## Roadmap |
| 30 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame^] | 31 | The issues being planned and worked on are tracked using GitHub issues. To |
| 32 | participate please visit: |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 33 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame^] | 34 | [MCUBoot GitHub Issues](https://github.com/runtimeco/mcuboot/issues) |
| 35 | |
| 36 | ~~Issues were previously tracked on [MCUboot JIRA](https://runtimeco.atlassian.net/projects/MCUB/summary) |
| 37 | , but it is now deprecated.~~ |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 38 | |
Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 39 | ## Browsing |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 40 | |
Sigvart M. Hovland | 68b3053 | 2018-09-29 18:58:55 +0200 | [diff] [blame^] | 41 | Information and documentation on the bootloader are stored within the source. |
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 | ~~It was previously also documented on confluence: |
| 44 | [MCUBoot Confluence](https://runtimeco.atlassian.net/wiki/discover/all-updates) |
| 45 | however, it is now deprecated and not currently maintained~~ |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 46 | |
Fabio Utzig | 811205e | 2017-08-10 14:55:27 -0300 | [diff] [blame] | 47 | For more information in the source, here are some pointers: |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 48 | |
Fabio Utzig | b519ed0 | 2018-02-13 14:20:03 -0200 | [diff] [blame] | 49 | - [boot/bootutil](boot/bootutil): The core of the bootloader itself. |
| 50 | - [boot/boot\_serial](boot/boot_serial): Support for serial upgrade within the bootloader itself. |
| 51 | - [boot/zephyr](boot/zephyr): Port of the bootloader to Zephyr |
| 52 | - [boot/mynewt](boot/mynewt): Mynewt bootloader app |
| 53 | - [imgtool](scripts/imgtool.py): A tool to securely sign firmware images for booting by mcuboot. |
| 54 | - [sim](sim): A bootloader simulator for testing and regression |
Sterling Hughes | b6903ec | 2017-02-07 13:12:19 -0800 | [diff] [blame] | 55 | |
Fabio Utzig | 7402374 | 2017-07-20 09:20:43 -0300 | [diff] [blame] | 56 | ## Joining |
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 | Developers welcome! |
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 | * Our developer mailing list: |
| 61 | http://lists.runtime.co/mailman/listinfo/dev-mcuboot_lists.runtime.co |
Fabio Utzig | 83e5929 | 2017-07-24 07:59:26 -0300 | [diff] [blame] | 62 | * Our Slack channel: https://mcuboot.slack.com/ <br /> |
| 63 | 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] | 64 | * Our IRC channel: http://irc.freenode.net, #mcuboot |