Thank you for your explanation. Finally I was successful. I will sum my experience for other people.
Currently, I have several Shelly EM devices and one Shelly 3EM one. And I need them in the place where no internet is available.
I tried update fw on each single device.
Zitat
1. Ok, so I tried to establish an internet connection. Due to security reasons it was not feasible using my current connection (device HTTP, IP and MAC filters, subnets ...).
I decided to use my very old WiFi router that I had in a drawer, set each device and my notebook as a its Client.
Initially I failed because I did not know about "Enable AP Isolation" feature of the router. When I switched it OFF, the device could access Internet and could see my notebook. And the fw update succeeded.
That method means that all the devices must be physically present where internet is available.
Zitat
2. I tried to update fw locally via the WiFi router (disconnected from internet).
With "Enable AP Isolation = false" it worked (nb and devices as clients - same as in 1.).
I only needed to enable a web server on my notebook and download the SHEM_build.zip file from Shelly to my nb.
That method means that the WiFi router must be located where all the devices are.
3. Because the devices can function as Access Point, I tried to replace the WiFi router with one of them.
3a) One Shelly EM as AP, the rest as Clients. No way - devices cannot see each other.
3b) Shelly 3EM as AP, Shelly EM devices and notebook as its Clients. Bingo - it works.
Notebook connected to the Shelly 3EM, can see all the client devices, the devices can see the nb.
That method means that the only notebook is needed at the place where all the devices are.
Some problems I have met during my experiments:
- WiFi cache must be sometimes cleared
- Browser cache must be often cleared
- Before changing device network configuration, I strongly recommend doing Factory reset. It solved many problems (probably something from a previous configuration is used even if the previous setting is disabled).
- When the device mode is changed from AP to Client, it take longer time to get the change realized (slow communication between the device and AP). Until then, the device appears as AP in the WiFi neighborhood.
- When updating firmware using 2. or 3. method, the JSON response was {"status":"updating","has_update":false,"new_version":"","old_version":"2021...-1.10"} even though the new firmware is accessible and the device is being updated. I have realized that I must connect to the device GUI, refresh it (clear a browser cache), then I can see the new fw version is installed.
- When using 3b), the drawback is that after each power supply restart the clients have different IP addresses (no IP address lease table in 3 EM).