blob: 178ab2be48fa7054112a7c8389603e99dfc521e0 [file] [log] [blame] [view]
Fabio Utzig811205e2017-08-10 14:55:27 -03001# [mcuboot](http://mcuboot.com/)
2
3[![Coverity Scan Build Status](https://scan.coverity.com/projects/12307/badge.svg)][coverity]
Fabio Utziga3c2f052018-11-15 18:48:59 -02004[![Build/Test](https://img.shields.io/travis/JuulLabs-OSS/mcuboot/master.svg?label=travis-ci)][travis]
Fabio Utzig811205e2017-08-10 14:55:27 -03005
6[coverity]: https://scan.coverity.com/projects/mcuboot
Fabio Utziga3c2f052018-11-15 18:48:59 -02007[travis]: https://travis-ci.org/JuulLabs-OSS/mcuboot
Sterling Hughesb6903ec2017-02-07 13:12:19 -08008
David Brown82c5f7c2020-05-05 15:47:30 -06009This is mcuboot version 1.6.0-rc2
David Browna3be2642017-07-26 19:02:33 -060010
David Brown586c84e2019-12-02 12:02:59 -070011MCUboot is a secure bootloader for 32-bit MCUs. The goal of MCUboot is to
Fabio Utzig811205e2017-08-10 14:55:27 -030012define a common infrastructure for the bootloader, system flash layout on
13microcontroller systems, and to provide a secure bootloader that enables
David Brown586c84e2019-12-02 12:02:59 -070014simple software upgrades.
Sterling Hughesb6903ec2017-02-07 13:12:19 -080015
Sigvart M. Hovland68b30532018-09-29 18:58:55 +020016MCUboot is operating system and hardware independent and relies on
David Brown586c84e2019-12-02 12:02:59 -070017hardware porting layers from the operating. Currently, mcuboot works
18with both the Apache Mynewt and Zephyr operating systems, but more
19ports are planned in the future. RIOT is currently supported as a boot
Fabio Utzig756ca862017-07-20 13:38:22 -030020target with a complete port planned.
Sterling Hughesb6903ec2017-02-07 13:12:19 -080021
Carles Cufi3b61e702018-01-23 15:43:46 +010022## Using MCUboot
23
24Instructions 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 Hughesb6903ec2017-02-07 13:12:19 -080029## Roadmap
30
Sigvart M. Hovland68b30532018-09-29 18:58:55 +020031The issues being planned and worked on are tracked using GitHub issues. To
32participate please visit:
Sterling Hughesb6903ec2017-02-07 13:12:19 -080033
Fabio Utziga3c2f052018-11-15 18:48:59 -020034[MCUBoot GitHub Issues](https://github.com/JuulLabs-OSS/mcuboot/issues)
Sigvart M. Hovland68b30532018-09-29 18:58:55 +020035
36~~Issues were previously tracked on [MCUboot JIRA](https://runtimeco.atlassian.net/projects/MCUB/summary)
37, but it is now deprecated.~~
Sterling Hughesb6903ec2017-02-07 13:12:19 -080038
Fabio Utzig811205e2017-08-10 14:55:27 -030039## Browsing
Sterling Hughesb6903ec2017-02-07 13:12:19 -080040
Sigvart M. Hovland68b30532018-09-29 18:58:55 +020041Information and documentation on the bootloader are stored within the source.
Sterling Hughesb6903ec2017-02-07 13:12:19 -080042
Sigvart M. Hovland68b30532018-09-29 18:58:55 +020043~~It was previously also documented on confluence:
44[MCUBoot Confluence](https://runtimeco.atlassian.net/wiki/discover/all-updates)
45however, it is now deprecated and not currently maintained~~
Sterling Hughesb6903ec2017-02-07 13:12:19 -080046
Fabio Utzig811205e2017-08-10 14:55:27 -030047For more information in the source, here are some pointers:
Sterling Hughesb6903ec2017-02-07 13:12:19 -080048
Fabio Utzigb519ed02018-02-13 14:20:03 -020049- [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 Hughesb6903ec2017-02-07 13:12:19 -080055
Fabio Utzig74023742017-07-20 09:20:43 -030056## Joining
Sterling Hughesb6903ec2017-02-07 13:12:19 -080057
Fabio Utzig74023742017-07-20 09:20:43 -030058Developers welcome!
Sterling Hughesb6903ec2017-02-07 13:12:19 -080059
Fabio Utzig74023742017-07-20 09:20:43 -030060* Our developer mailing list:
David Browna222bf32020-02-07 11:53:06 -070061 https://groups.io/g/mcuboot
Fabio Utzig83e59292017-07-24 07:59:26 -030062* Our Slack channel: https://mcuboot.slack.com/ <br />
63 Get your invite [here!](https://join.slack.com/t/mcuboot/shared_invite/MjE2NDcwMTQ2MTYyLTE1MDA4MTIzNTAtYzgyZTU0NjFkMg)
Fabio Utzig74023742017-07-20 09:20:43 -030064* Our IRC channel: http://irc.freenode.net, #mcuboot