This software is experimental and a work in progress. Under no circumstances should these files be used in relation to any critical system(s). Use of these files is at your own risk.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
This repo contains the "Hardware" files to support STM32 based boards on Arduino version 1.8.x (some older versions may also work) including LeafLabs Maple, and Maple mini, and other generic STM32F103 boards.
We are also on Gitter https://gitter.im/stm32duino/Lobby/
- Based on https://github.com/bobc/maple-asp, which is in turn based on LibMaple by Leaflabs
- Please read the wiki (https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki) for full details
- See also my blog: http://www.rogerclark.net/stm32f103-and-maple-maple-mini-with-arduino-1-5-x-ide/
- NEW: Main support site for using STM32 boards with the Arduino IDE: http://www.stm32duino.com/
- Original LeafLabs "Docs:" http://docs.leaflabs.com/docs.leaflabs.com/index.html
- Use of static variables inside functions greatly increase the code size becuase additional code is needed for thread-safe handling of these statics. If this is a problem for your application, please edit platform.txt and add -fno-threadsafe-statics the compiler.cpp.flags
- Ebay search for "arduino maple" (currently costs <$5 with shipping)
- AliExpress search for "leaflabs maple"
Some suppliers have this board e.g.
- STM32F103VET
- There is also a STM32F103ZET board which also works, however they are not always available. They have been listed as "STM32F103ZET6 Minimum System Development Board ARM STM32 Cortex-m3 M75"
Added by WHILL Inc
If you would like to configure BOOT0/RESET pins by remote, This circuit maybe helpful to enter bootloader mode automatically. Also if you choose Serial as upload method on Arduino IDE, in this repositry runs reset command by flipping DTR/RTS lines when you upload a sketch. (Only on Linux currently) Besides this allows flash firmware remotely without STM32duino bootloader. On rare ossasions STM32Bootloader fails to go into DFU mode. This may useful if you hope more stability especially application hard to touch reset button or BOOT config pins.
1uF capacitor and 100k resistor on Reset line make delay on reset.
Following commands are used to reset or get into bootloader mode.
- Reset :
Arduino_STM32/tools/linux/serial/upload-reset-flow
- Into Bootloader:
Arduino_STM32/tools/linux/serial/upload-set-bootmode