arendst / Tasmota

Alternative firmware for ESP8266 and ESP32 based devices 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
https://tasmota.github.io/docs
GNU General Public License v3.0
22.2k stars 4.81k forks source link

ESP32 #170

Closed ionciubotaru closed 6 years ago

ionciubotaru commented 7 years ago

Please consider to make the necessary changes to run Tasmota on ESP32. When i tried I got a strange error:

sketch\support.h:8:28: fatal error: user_interface.h: No such file or directory

compilation terminated.

exit status 1
Error compiling for board ESP32 Dev Module.
arendst commented 7 years ago

Supply me with a sonoff using esp32 and I will have a look into it...

See #81

ionciubotaru commented 7 years ago

Please send me your address and I will send you a new ESP32 - please send a private message to ionciubotaru@gmail.com

davidelang commented 7 years ago

tl;dr summary, pull requests are king

@ionciubotaru I think that arendst is saying that he isn't going to bother with this until and unless there is a device that contains an ESP32. His focus is on sonoff devices, not general device control. When small additions can support other devices, he's willing to add some changes to support them (although in most cases, he's mostly accepting changes proposed by others rather than doing the development work himself)

so I don't think that shipping an ESP32 dev board to him will help (but if I'm wrong, I'll happily pay for one :-)

But if we can get things working on an ESP32, and the changes aren't that large, I think the odds are good that he'll accept the changes.

I have a few kickstarter power strips that contain horrific cloud-only-unencrypted controllers that I plan to replace the controllers on. I'm probably going to have to use an ESP32 as I don't think there are enough pins on the ESP8266, but I'd love to have it based on tasmota rather than having to duplicate the work.

ionciubotaru commented 7 years ago

As you can see people love Tasmota. Please add a donation mark on Tasmota's main page

arendst commented 7 years ago

Had a look at the Esp32-Arduino package and must say that it could take a while to get Sonoff-Tasmota working on an ESp32; many libraries used by Tasmota like HTTPClient, OTAupgrade and Webserver have not been implemented yet.

ionciubotaru commented 7 years ago

Of course, it's better to wait until all libraries are available.

I think that HTTPClient is here: https://github.com/espressif/arduino-esp32/blob/master/libraries/WiFi/examples/WiFiClient/WiFiClient.ino

Web server is here: https://github.com/espressif/arduino-esp32/blob/master/libraries/WiFi/examples/SimpleWiFiServer/SimpleWiFiServer.ino

and OTA has status To be implemented https://github.com/espressif/arduino-esp32/issues/125

ionciubotaru commented 7 years ago

OTA is now available https://github.com/espressif/arduino-esp32/blob/master/libraries/ArduinoOTA/examples/BasicOTA/BasicOTA.ino

arendst commented 7 years ago

I received my esp32 (thnx) and were able to play with it using both Arduino IDE and PlatformIo. I must say it's a totally different ballpark with a lot of memory, features and new concepts (like flash partitioning). From what I see it needs a total rethinking of my current Sonoff-Tasmota.

Do not expect a Sonoff-tasmota-Esp32 any time soon....

davidelang commented 7 years ago

On Fri, 17 Mar 2017, Theo Arends wrote:

I received my esp32 (thnx) and were able to play with it using both Arduino IDE and PlatformIo. I must say it's a totally different ballpark with a lot of memory, features and new concepts (like flash partitioning). From what I see it needs a total rethinking of my current Sonoff-Tasmota.

While it adds a lot of additional capability, could it be treated as just a slightly expanded ESP-8266 (just more pins available)?

Yes it wastes a lot of the capabilities of the esp32, but being able to run a feature-rich, known firmware like sonoff-tasmota is a huge start.

arendst commented 7 years ago

@davidelang yes it is feature rich but the main problem is that many Arduino-esp8266 libraries have not been converted yet to the new esp32 environment; they all need (major) rewrites and from what I see there are not that many resources working on a quick release of Arduino-esp32.

davidelang commented 7 years ago

On Fri, 17 Mar 2017, Theo Arends wrote:

@davidelang yes it is feature rich but the main problem is that many Arduino-esp8266 libraries have not been converted yet to the new esp32 environment; they all need (major) rewrites and from what I see there are not that many resources working on a quick release of Arduino-esp32.

That's fair, if we just need to watch the list of libraries and wait for them to get checked off one-by-one, we can wait :-)

I suspect that for a lot of them, the esp8266 changes (which go from the arduino, "only one possibility", to "that can run on any pin and there can be more than one" will address many of the changes.

ionciubotaru commented 7 years ago

Good news. Please take your time and develop Sonoff-tasmota-Esp32 when you feel comfortable. The development board is a gift, you have no obligation.

davidelang commented 7 years ago

reopening to keep tracking the packages

JacekDob commented 6 years ago

My first approach of porting to ESP32 for Wemos32: Sonoff-Tasmota

Contributions are welcome.

ionciubotaru commented 6 years ago

great news @JacekDob As long as esp32 is for hardware integrators and is not present inside final products, I suggest to port the core version of Tasmota with wifi, configuration, web server, eeprom and some important sensors like ds18x, dht .... Use only one standard template with all pins available. After production release each developer will add it's own code and hopefully will contribute to your Tasmota's fork.

JacekDob commented 6 years ago

This is exactly what I focused on:

Working

Prepared for Wemos ESP32 (all pins configurable).

JacekDob commented 6 years ago

Update:

Working (Tested)

Should work (compiles, not tested)

ionciubotaru commented 6 years ago

great, please activate issues on your fork to communicate directly

JacekDob commented 6 years ago

Activated

feel welcome to contribute: https://github.com/JacekDob/Sonoff-Tasmota

mcsSolutions commented 6 years ago

I captured this ESP32 fork for compilation using Atom/PlatformIO. The platformio.ini contains only ESP8266 environments. Much conditional compilation based upon ESP32 and ESP8266 definitions. Without any edits several compile errors generated which I suspect are related to getting the environment setup. Is there a platformio.ini for Wemos ESP32? How does the ESP32 define get set?

JacekDob commented 6 years ago

Tasmota for ESP32 currently compiles in Arduino IDE.

To work with PlatformIO needs adaptation. I guess for somebody with experience in it should take an hour. Waiting for contribution.

PS. Please raise issues in ESP32 Tasmota fork.

ascillato2 commented 6 years ago

Link to Tasmota ESP32 fork already in Tasmota Wiki

GrendelOnCampus commented 4 years ago

I don't have seen any changes since 2018. Is this project dead? I'm not a developer. SO, are there any working binaries for Devices like NodeMCU ESP32 WROOM? (The boards with Reset & Boot-Button)

meingraham commented 4 years ago

Nobody is working on the project and there are no plans to port Tasmota to ESP32. There are no Tasmota binaries available for the ESP32.

GrendelOnCampus commented 4 years ago

Why? The ESP32 is a great MCU. Sometimes, the 8266 has too few GPIOs. I like Tasmota and I guess, there are no alternative firmware projects for the ESP32. Right?

meingraham commented 4 years ago

@GrendelWWU

There are at least two I/O expanders supported by Tasmota to add more GPIO to Tasmota. This is not a limitation when using Tasmota on an ESP82xx.

There is plenty of interest but nobody is available to work on porting Tasmota. It was already tried. But that effort died on the vine. As the Tasmota codebase is open source, nothing is stopping someone from doing giving it another go.

ESPHome, for one, supports the ESP32.

GrendelOnCampus commented 4 years ago

Thank you for your hint to these MCP expanders. It seems, I'll have to learn, how to compile my own Tasmota, cause these chips are not enabled by default. At this moment, I've been just doing some C programs with gcc and some more smaller projects with Arduino Nano Boards. Maybe it would be the first step do learn porting Tasmota to ESP32? On the other hand.... the easiest way will be, just going there and using two WeMOS boards. ;-) I will think about it. My project, for going into details, is, making this outlet smart: https://www.bueroshop24.de/brennenstuhl-power-manager-pma-6-fach-steckdosenleiste-mit-%C3%BCberspannungsschutz-schwarz-328708?srpId=dd9eb1f577f5a2086a5da5abc39a8b8e&lkz=624763&obt=1&storeType=B2C&gclid=EAIaIQobChMIvfGb3Z_x5gIVT-h3Ch3clgEMEAQYASABEgJenfD_BwE

meingraham commented 4 years ago

@GrendelWWU

Give Gitpod a try. It is very simple to use. No software installation required. https://tasmota.github.io/docs/#/installation/Prerequisites?id=online-compilers

mcsSolutions commented 4 years ago

I have a Tasmota 5.1.2.0 spinoff for ESP32 upon which I include a trilateration location tracking application. The source is available at http://mcsSprinklers.com/BLEScannerSource.zip. This should be a reasonable base for Tasmota on ESP32. There is a binary as *_BLE.bin in http://mcsSprinklers.com/mcsTasmota.zip that goes into basic ESP32 modules such as NodeMCU. Documentation is contained as part of http://mcsSprinklers.com/mcsMQTT.pdf.

GrendelOnCampus commented 4 years ago

@meingraham Thank you. I will see, which option is the best for me. But it'll take plenty of time.

@mcsSolutions Thanks a lot. Maybe this will help me, doing the first steps.