All Projects → csnol → Stm32 Ota

csnol / Stm32 Ota

Licence: gpl-3.0
STM32-OTA on Arduino IDE

Projects that are alternatives of or similar to Stm32 Ota

Blog
A set of various projects based on ESP8266, ESP32, ATtiny13, ATtiny85, ATtiny2313, ATmega8, ATmega328, ATmega32, STM32 and more.
Stars: ✭ 198 (+175%)
Mutual labels:  arduino, stm32
FASTUSBasp
This is the fast avr programmer for AVR MCUs based on cheap stm32f103c8t6 board with usb-to-serial support.
Stars: ✭ 78 (+8.33%)
Mutual labels:  stm32, programmer
Platform Ststm32
ST STM32: development platform for PlatformIO
Stars: ✭ 201 (+179.17%)
Mutual labels:  arduino, stm32
Blynk Server
Blynk is an Internet of Things Platform aimed to simplify building mobile and web applications for the Internet of Things. Easily connect 400+ hardware models like Arduino, ESP8266, ESP32, Raspberry Pi and similar MCUs and drag-n-drop IOT mobile apps for iOS and Android in 5 minutes
Stars: ✭ 8 (-88.89%)
Mutual labels:  arduino, ota
Ntc thermistor
[For Arduino and STM32] Library for working with a NTC thermistor.
Stars: ✭ 19 (-73.61%)
Mutual labels:  arduino, stm32
Runcpm
RunCPM is a multi-platform, portable, Z80 CP/M 2.2 emulator.
Stars: ✭ 192 (+166.67%)
Mutual labels:  arduino, stm32
Tasmota
Alternative firmware for ESP8266 with easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX. Full documentation at
Stars: ✭ 16,624 (+22988.89%)
Mutual labels:  arduino, ota
Mycontroller V1 Legacy
The Open Source Controller
Stars: ✭ 135 (+87.5%)
Mutual labels:  arduino, ota
Esphelper
A library to make using WiFi & MQTT on the ESP8266 easy.
Stars: ✭ 310 (+330.56%)
Mutual labels:  arduino, ota
Blynk Library
Blynk library for embedded hardware. Works with Arduino, ESP8266, Raspberry Pi, Intel Edison/Galileo, LinkIt ONE, Particle Core/Photon, Energia, ARM mbed, etc.
Stars: ✭ 3,305 (+4490.28%)
Mutual labels:  arduino, ota
Arduino For Keil
A lightweight Arduino framework for Keil projects.
Stars: ✭ 172 (+138.89%)
Mutual labels:  arduino, stm32
Send altitude cocoos
IoT program for Arduino Uno / STM32 Blue Pill (libopencm3) that reads BME280 temperature + humidity + altitude sensors, via I2C or SPI with DMA and multitasking. Sends sensor data to Sigfox via Wisol Sigfox module on UART. Runs on cocoOS task scheduling library http://www.cocoos.net
Stars: ✭ 24 (-66.67%)
Mutual labels:  arduino, stm32
Tinyframe
A simple library for building and parsing data frames for serial interfaces (like UART / RS232)
Stars: ✭ 151 (+109.72%)
Mutual labels:  arduino, stm32
Jled
Non-blocking LED controlling library for Arduino and friends.
Stars: ✭ 197 (+173.61%)
Mutual labels:  arduino, stm32
Jtag2updi
UPDI programmer software for Arduino (targets Tiny AVR-0/1/2, Mega AVR-0 and AVR-DA/DB MCUs)
Stars: ✭ 147 (+104.17%)
Mutual labels:  arduino, programmer
Logic Analyzer
Logic Analyzer, for Arduino, AVR, ESP8266 and STM32 with a very nice working processing interface, you could run it also on any Android device.
Stars: ✭ 203 (+181.94%)
Mutual labels:  arduino, stm32
Lwmem
Lightweight dynamic memory manager library for embedded systems with memory constraints. It implements malloc, calloc, realloc and free functions
Stars: ✭ 92 (+27.78%)
Mutual labels:  arduino, stm32
Stm32generic
Generic implementation of Arduino for STM32 boards
Stars: ✭ 98 (+36.11%)
Mutual labels:  arduino, stm32
Deviot
Sublime Text plugin for IoT development based in PlatformIO ecosystem (Arduino IDE)
Stars: ✭ 281 (+290.28%)
Mutual labels:  arduino, ota
Mqtt via esp01
TCP/UDP Applicaton for UNO/MEGA/STM32 using ESP8266's AT firmware.
Stars: ✭ 23 (-68.06%)
Mutual labels:  arduino, stm32

STM32-OTA on Arduino IDE


With a ESP8266, It can upload sketch to STM32 series MCU on Arduino IDE without any wires.

Veiw on YOUTUBE

TESTED: STM32F03xF/K/C/,F103C8/B, (Blue Pill and Black Pill), F103VCT, F107RCT.

If use ESP8266 Pin STM32 MCU if use NodeMCU Pin
RXD PA9 RXD
TXD PA10 TXD
Pin4 BOOT0 D2
Pin5 RST D1
Vcc 3.3 3.3V
GND GND GND
En -> 3.3V

Boards

--- ---


Schematic

1. Use ESP-12E

2. Use NODEMCU


SETUP

1st step -> Flash ESP8266

  1. Download source-codes from HERE
  2. Setup your WiFi and ESP8266 IPAddress to yours
3. upload to ESP8266. Don't know how to Flash ESP8266? [HELP](https://github.com/esp8266/Arduino)

2nd step -> Arduino IDE setup

-> For Arduino_STM32 Repo link

  1. Copy "stm32-ota" to "~/Document/Arduino/hardware/Arduino_STM32/tools/macosx" or linux or linux64, and change it to become executable.
    ~$ sudo chmod +x stm32-ota

  2. Find the file 'platform.txt'. and add below lines to the end of 'platform.txt'

    # Upload using STM32 OTA over HTTPServer added by CSNOL

tools.stm32_ota.cmd=stm32_ota
tools.stm32_ota.path.macosx={runtime.hardware.path}/tools/macosx
tools.stm32_ota.path.linux={runtime.hardware.path}/tools/linux
tools.stm32_ota.path.linux64={runtime.hardware.path}/tools/linux64
tools.stm32_ota.upload.params.verbose=-d
tools.stm32_ota.upload.params.quiet=
tools.stm32_ota.upload.pattern="{path}/{cmd}" {upload.IPAddress} "{build.path}/{build.project_name}.bin"

  1. Please add below lines to the end of your Arduino_STM32 $path/STM32F1/boards.txt

    # you can change 'genericSTM32F103C' to you want for flash others STM32 serial MCUs

# STM32 OTA uploader ---- added by CSNOL
genericSTM32F103C.menu.upload_method.httpMethod=STM32 OTA
genericSTM32F103C.menu.upload_method.httpMethod.upload.protocol=stm32_ota
genericSTM32F103C.menu.upload_method.httpMethod.upload.tool=stm32_ota
genericSTM32F103C.menu.upload_method.httpMethod.upload.IPAddress=http://192.168.0.66 # Change to your ESP8266 board's IPAddress

  1. Restart Arduino IDE, you will find STM OTA upload method has been added.

-> For STM32GENERIC Repo link

  1. See upside Arduino_STM32 method.

  2. See upside Arduino_STM32 method.

  3. Please add below lines to the end of your STM32GENERIC $path/STM32/boards.txt

    #Please add below lines to the end of your $path/STM32F1/boards.txt
    # you can change 'BluePill' to you wanted for flash others STM32 serial MCUs

# STM32 OTA uploader ---- added by CSNOL
BluePill.menu.upload_method.httpMethod=STM32 OTA
BluePill.menu.upload_method.httpMethod.upload.protocol=stm32_ota
BluePill.menu.upload_method.httpMethod.upload.tool=stm32_ota
BluePill.menu.upload_method.httpMethod.upload.IPAddress=http://192.168.0.66
# Change to your ESP8266 board's IPAddress

  1. Restart Arduino IDE, you will find STM OTA upload method has been added.

-> For stm32duino Repo link

  • Sameway to setup. but I haven't the ST official board. so can't test it.

-> Now, you can OTA upload to STM32 MCU without any wires!


BTW

  • If you just wanna OTA upload a bin file to STM32, please see HERE
  • If you want to keep STM32-bootloader, please change the STM32STADDR in "stm32ota.h"

#define STM32STADDR 0x8000000 // STM32 codes start address, you can change to other address if use custom bootloader: like 0x8002000


TODO:

  1. OTA upload all STM32 series MCU in Arduino IDE.
  2. Make a video upload to Youtube.

LICENSE

Copyright (C) 2017 by CS.NOL . This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, but you have to keep below webserver code in your sketch for sharing.

Version 1.0 by <a style="color:white" href="https://github.com/csnol/STM32-OTA\">CSNOL

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].