├── LICENSE ├── README.md └── firmware-repo.list /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 M5Stack 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # M5Stack Firmware 2 | 3 | ## Description 4 | You can share your firmware and other M5 fans can use it by M5Burner.But if you want to share your firmware here, you should follow some rules below. 5 | 6 | ## Demo 7 | * [UIFlow Firmware](https://github.com/EeeeBin/UIFlow-Firmware) (Multi Version Demo) 8 | * [Test Firmware](https://github.com/curdeveryday/test-firmware) (Single Version Demo) 9 | 10 | ## Quickstart 11 | ### __1.Folder Structure__ 12 | Here some requirements to your firmware directory.For example: 13 | ``` 14 | │ README.md 15 | │ m5burner.json (Required) 16 | │ 17 | └─ firmware (Required) 18 | bootloader_0x1000.bin 19 | MicroPython_0x10000.bin 20 | partitions_mpy_0x8000.bin 21 | phy_init_data_0xf000.bin 22 | spiffs_image_0x170000.img 23 | ...... 24 | ``` 25 | > Your firmware root directory must have file *m5burner.json* and folder *firmware*. 26 | 27 | ### __2.File *m5burner.json* Format__ 28 | Some infomation must in your *m5burner.json*.For example: 29 | ``` javascript 30 | { 31 | // Firmware name 32 | "name": "UIFlow", 33 | 34 | // Description 35 | "description": "maybe nooooooooo bug", 36 | 37 | // Keywords 38 | "keywords": "ESP32, Micropython", 39 | 40 | // Author 41 | "author": "EeeeBin", 42 | 43 | // The github repository of the firmware (Required) 44 | "repository": "https://github.com/EeeeBin/UIFlow-Firmware", 45 | 46 | // If there are multiple categories of firmware, this field will be a array. 47 | // Otherwise, it will be a key-value structure. 48 | // (Single version demo: https://github.com/curdeveryday/test-firmware) 49 | "firmware_category": [ 50 | // Category infomation 51 | { 52 | // Category name 53 | "Stack-EN": { 54 | // Firmware path 55 | "path": "firmware_en", 56 | 57 | // Applicable Devices 58 | "device": ["M5Stack Core"], 59 | 60 | // Default baudrate 61 | "default_baud": 921600 62 | } 63 | }, 64 | 65 | // Same of above ... 66 | { 67 | "Stack-CN": { 68 | "path": "firmware_cn", 69 | "device": [ 70 | "M5Stack Core" 71 | ], 72 | "default_baud": 921600 73 | } 74 | }, 75 | { 76 | "Stick": { 77 | "path": "firmware_Stick", 78 | "device": [ 79 | "M5Stack Stick" 80 | ], 81 | "default_baud": 921600 82 | } 83 | }, 84 | { 85 | "StickC": { 86 | "path": "firmware_StickC", 87 | "device": [ 88 | "M5Stack StickC" 89 | ], 90 | "default_baud": 750000 91 | } 92 | } 93 | ], 94 | 95 | // Firmware version 96 | "version": "1.2.3", 97 | 98 | // Firmware platform 99 | "framework": "Micropython" 100 | } 101 | ``` 102 | 103 | ### __3.Folder *firmware*__ 104 | The name of files in *firmware* must follow the rules. 105 | 106 | #### __Please follow the rule `filename` = `name` + "_" + `flash address`.__ 107 | 108 | For example, if you have a file _**a.bin**_ and it flash address is _**0x1000**_.It should be named _**a_0x1000.bin**_ 109 | 110 | ### __4.Pull Request__ 111 | After meeting the above rules, you should fork our [repository](https://github.com/m5stack/M5Stack-Firmware) and add your firmware repository in `firmware-repo.list`.Now, you submit a pull request in [M5Stack Firmware](https://github.com/EeeeBin/UIFlow-Firmware/pulls).We will review your firmware and add it in M5Burner.This operation is only required when the firmware is first submitted. If the firmware is updated, M5Burner will automatically obtain the new firmware address. 112 | 113 | ## Download M5Burner 114 | - [Windows](http://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/software/M5Burner.zip) 115 | - [MacOS](http://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/software/M5Burner_MacOS.zip) 116 | - [Linux](http://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/software/M5Burner_Linux.zip) 117 | 118 | ## Contribution 119 | Last but certainly not least, a big *__Thank You__*! To the following folks that helped to make M5Stack even better. 120 | - [EeeeBin](https://github.com/EeeeBin): Add firmware UIFlow [PR #1](https://github.com/m5stack/M5Stack-Firmware/pull/1) -------------------------------------------------------------------------------- /firmware-repo.list: -------------------------------------------------------------------------------- 1 | https://github.com/EeeeBin/UIFlow-Firmware 2 | https://github.com/lovyan03/LovyanLauncher-firmware --------------------------------------------------------------------------------