Prerequisites - stodev-com-br/tasmota GitHub Wiki
To install Tasmota on your device you have to prepare some tools and software.
If your device works with Tuya Smart or Smart Life app it may be possible to flash it with Tuya-Convert without disassembly or soldering and skip directly to initial configuration.
Any variation of the ESP8266 chip can be flashed with Tasmota.
The power supplied to the device is one of the most important elements for both flashing the device and for stable operation. You must ensure that the device receives sufficient power (current AND appropriate voltage level) to properly flash the firmware on the device.
- CH340G is a reliable and very cheap adapter (example 1, 2).
- FTDI FT232 - these adapters have a lot of fakes in the market so buy only from reliable sources (example). Buy only the variant with a separate 3.3V regulator on PCB!
- CP2102 or PL2303 - works with certain devices, but using an external 3.3V supply might be necessary. Not recommended for beginners!
- RaspberryPi - only for advanced users. External 3.3V supply necessary.
- NodeMCU and D1 mini (Pro/Lite) boards have a micro USB upload port and don't require an adapter.
Don't forget to install drivers for your serial-to-USB adapter.
Some adapters can be switched between 3.3V and 5V for the data pins, but still provide 5V on the power pin which will fry your device. You MUST make sure both the data and VCC pins are set for 3.3V.
To solder you'll of course need a soldering iron, soldering tin and some flux. If you're new to soldering check out some soldering tutorial videos while you're at it.
If you're intimidated by soldering you could get away with holding the headers with jumper wires in the pin holes during flashing but it is not a fool proof process and flashing might fail.
You could use any kind of wire but jumper wires (also called DuPont wires) are more practical than soldering and desoldering.
Pin headers come in male or female version. Choose according to your jumper wire connectors.
You need a computer with a USB port to upload the firmware to your device and configure it.
Tasmota installed from a precompiled binary needs to be configured to work with your Wi-Fi network before you can access the Tasmota web UI. This is usually done by connecting to a Tasmota Wi-Fi Access Point with your smartphone (or tablet or computer with Wi-Fi).
Download a Tasmota binary (.bin) file. If you're not sure which binary is the right one for you consult the builds table or just start with tasmota.bin
.
The latest development binary files are available on the OTA server. The latest merged development code is compiled hourly. The latest master release binary files can be downloaded from GitHub or from the OTA server.
- Tasmota PyFlasher - official flashing tool intended for Tasmota. (Windows or Mac)
- NodeMCU PyFlasher - easy to use GUI flasher based on esptool.py. (Windows or Mac)
- Esptool.py - the official flashing tool from Espressif. (Requires Python)
- Esptool executable - Esptool in executable form, no Python required. (Windows, Linux or Mac)
Tasmota is NOT a developer of these tools. For help and troubleshooting you will need to get support from those projects.
- Tuya OTA - easy OTA flash for devices with Tuya chips, no disassembly required
- Sonoff DIY - OTA flash for select Sonoff devices (some disassembly required)
- Node-RED OTA server and firmware manager - Node-RED flow for managing OTA updates
- OTA over SCP - setup and configure "OTA over SCP" upload for PlatformIO
- Python HTTP OTA server - setting up a small Python server to serve OTA upgrade binaries
- SonOTA - OTA flash eWeLink based devices (mostly outdated)
If you want to modify the code or default settings you can use:
- PlatformIO - setup and configure PlatformIO for Tasmota compilation and upload
- PlatformIO CLI - how to flash Tasmota using the PlatformIO command line interface on Linux
- PlatformIO-Core - automate firmware builds using PlatformIO-Core and flash with esptool
- Visual Studio Code - setup and configure Visual Studio Code with PlatformIO for Tasmota
- Atom - beginner guide building Tasmota firmware using Atom with PlatformIO plugin
- Arduino IDE - setup and configure Arduino IDE for Tasmota compilation and upload
If you use PlatformIO, to be sure that you have the latest build of the ESP Core, first delete the following folders in your current .platformio
folder:
- Everything in
.platformio/platforms
- All folders that begin with
framework...
in.platformio/packages
Can only create a firmware binary. Use one of the tools to flash it to your device.
- Gitpod - compile your own binary in the cloud using Gitpod.
- TasmoCompiler - simple web GUI to compile Tasmota with your own settings
A program that connects to your Tasmota device directly over the serial connection you used to flash it.
This is an optional way to configure your device using Commands and Backlog. Be sure to configure your program for local echo so that the characters you type are displayed locally on your monitor as well as transmitted to the device. Also, every request needs to end with <CR><LF>
. Your program may only send the carriage return (Ctrl-M
) when hitting Enter
and not automatically send the <LF>
. You can send a linefeed using Ctrl-J
on the keyboard.
- Termite - simple terminal for windows
- Termie - open source clone of Termite
- Putty - popular client available on every platform
- Minicom - one of many Linux terminals
Tasmota is not a commercial product and support is limited. You have to be willing to research and debug problems that might arise.
Tasmota is designed to be controlled and communicate via MQTT. To use it to its fullest potential you need an MQTT broker and client.
Read our wiki article on MQTT for a quick introduction.