Tasmota icon indicating copy to clipboard operation
Tasmota copied to clipboard

enable Ethernet in all safeboot firmware (except c2)

Open Jason2866 opened this issue 1 year ago • 8 comments

Description:

Test of size increase of enabling Ethernet drivers in all safeboot firmwares except esp32-c2

Checklist:

  • [ ] The pull request is done against the latest development branch
  • [ ] Only relevant files were touched
  • [ ] Only one feature/fix was added per PR and the code change compiles without warnings
  • [ ] The code change is tested and works with Tasmota core ESP8266 V.2.7.7
  • [ ] The code change is tested and works with Tasmota core ESP32 V.3.0.4
  • [x] I accept the CLA.

NOTE: The code change must pass CI tests. Your PR cannot be merged unless tests pass

Jason2866 avatar Aug 19 '24 10:08 Jason2866

How is the status of this, will this be merged? As I just stumbled upon this, when I started an OTA update via LAN, and the ESP32 rebooted into safe boot and was not reachable anymore via LAN - took me some time to try it via Wifi. Would be nice to have this!

dkadioglu avatar Sep 13 '24 12:09 dkadioglu

https://github.com/arendst/Tasmota/discussions/14168#discussioncomment-10768987

nikito7 avatar Oct 04 '24 22:10 nikito7

C6 safeboot goes over the partition size limit when Ethernet is enabled

Jason2866 avatar Oct 05 '24 11:10 Jason2866

C6 safeboot goes over the partition size limit when Ethernet is enabled

Something changed. It worked some weeks ago.

Currently I only use S3

nikito7 avatar Oct 05 '24 11:10 nikito7

@nikito7 Yes, nearly every day something is changed in or around Tasmota ;-) I dd not merge the PR since this change was very close too the border. By the change to the new core it is too fat now.

Jason2866 avatar Oct 05 '24 16:10 Jason2866

I made a new variant. I don't know a better way too. I need a variant anyway, because persistent defaults :)

At least a warning it's need in ota upgrade page.

How to force factory firmware to include my safeboot?

[env:tasmota32s3eth-safeboot]
extends                 = env:tasmota32_base
board                   = esp32s3-qio_qspi
board_build.app_partition_name = safeboot
build_flags             = ${env:tasmota32_base.build_flags}
                         -DFIRMWARE_SAFEBOOT
                         -DHAN_S3_ETH
                         -DUSE_SPI
                         -DUSE_ETHERNET
                         -UETH_TYPE
                         -DETH_TYPE=8
lib_extra_dirs          = lib/lib_ssl, lib/libesp32
lib_ignore              = ${safeboot_flags.lib_ignore}

...

[env:tasmota32s3eth]
extends                 = env:tasmota32_base
board                   = esp32s3-qio_qspi
build_flags             = ${env:tasmota32_base.build_flags}
                         -DFIRMWARE_TASMOTA32
                         -DHAN_S3_ETH
                         -UETH_TYPE
                         -DETH_TYPE=8
lib_ignore              = ${env:tasmota32_base.lib_ignore}
                          Micro-RTSP
                          epdiy

This work except factory bin.

I have to replace safeboot manually with esptool

nikito7 avatar Oct 05 '24 16:10 nikito7

I still recommend wifi for initial setup.

Some things are dependent on wifi.

Then:

autoexec.be

tasmota.cmd('Wifi 0')

nikito7 avatar Oct 05 '24 16:10 nikito7

Instead of simply Wifi 0, you might want the extra resilience from having Wifi again in case of Ethernet not available for whatever reason. https://tasmota.github.io/docs/Berry-Cookbook/#ethernet-network-flipper

sfromis avatar Oct 16 '24 21:10 sfromis

I will try to find some room for C6

s-hadinger avatar Nov 10 '24 22:11 s-hadinger

@arendst May merge now? If we get in trouble we can disable IPv6.

Jason2866 avatar Nov 11 '24 17:11 Jason2866