EspBuddy : Batch Upload, backup, query, etc...

Moderators: grovkillen, Stuntteam, TD-er

Post Reply
Message
Author
User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

EspBuddy : Batch Upload, backup, query, etc...

#1 Post by soif » 20 Feb 2018, 20:11

- Tired of typing very long commands to upload your custom firmwares?
- Bored to manually upload your firmwares in two steps for 1MB devices?
- Want to batch upload new firmwares to all your devices via OTA or backup all settings in one command?

EspBuddy allows you to easily upload firmwares to remote (ESP8266 based) devices via Wifi (Over The Air) or Serial, in one short command. It also gathers various tool commands to be used in batch mode.

Features:
- OTA upload on 4M devices
- OTA upload on 1M devices using an intermediate firmware (automatic two steps)
- Use configuration presets for devices
- Optional compilation using platformio
- Optionally pass various -D flags to the compiler, including extracted parameters like IP or hostname
- Fetch versions of remote devices
- Archive current firmware & previous firmware per target
- Backup current settings & previous settings per target
- Parse Repositories' installed versions
- Git Pull Repositories
- Ping Remote Host

and more...
https://github.com/soif/EspBuddy

enjoy
Last edited by soif on 28 Feb 2018, 03:10, edited 1 time in total.
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

TD-er
Core team member
Posts: 8643
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#2 Post by TD-er » 21 Feb 2018, 00:27

Hmm this evening I've done some updating of 6 ESP modules here... only to find this project after that.

Well I understand why one would want such a tool ;)

User avatar
grovkillen
Core team member
Posts: 3621
Joined: 19 Jan 2017, 12:56
Location: Hudiksvall, Sweden
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#3 Post by grovkillen » 21 Feb 2018, 03:26

Nice, will try!
ESP Easy Flasher [flash tool and wifi setup at flash time]
ESP Easy Webdumper [easy screendumping of your units]
ESP Easy Netscan [find units]
Official shop: https://firstbyte.shop/
Sponsor ESP Easy, we need you :idea: :idea: :idea:

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#4 Post by soif » 23 Feb 2018, 14:12

BTW to allow the "2 step upload" for 1M firmware in one single command, I had to implement the OTA feature in the ESPEasyUploaderMega.ino that i've found somewhere on the site.

As I did not found any Github repo for it, I have patched it here.

May I suggest the Maintainer team to copy it, or create an official Repo for the ESPEasyUploaderMega, so that I could PR this OTA feature. :mrgreen:
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

TD-er
Core team member
Posts: 8643
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#5 Post by TD-er » 24 Feb 2018, 01:20

Please make an issue for it.
Or link it to the existing issue to shrink the firmware to be OTA'able again for 1M devices :)

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#6 Post by soif » 25 Feb 2018, 15:15

Just posted a link in issue #928 as well as in original #303 one
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#7 Post by soif » 03 Mar 2018, 13:06

I've just release v1.74.

It should be really mature from now on, with the following new features :

- all x (3 by default) past firmares are archived within each host folder
- you can easily revert to the previous firmware version
- all settings (while keeping previous settings) are backuped in her own folders
- git full versions are tagged into the firmware names (and can also be easily injected into the build, using Cutom.h + debug flags)
- you can migrate from one repo (ie tasmota) to another ie (EspEasy) OTA in just one command
- when using intermediate OTA firmware, it no longer waits for a predefined time, but just wait that the board is back online, then mediately upload the final firmware.

It aims to become a users and developers best friend ! :mrgreen:

enjoy
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#8 Post by soif » 11 Mar 2018, 21:55

any user feedback ? :geek:
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

toast
New user
Posts: 1
Joined: 21 Mar 2018, 15:00

Re: EspBuddy : Batch Upload, backup, query, etc...

#9 Post by toast » 21 Mar 2018, 15:38

Hi,
I was going to try your script and think I worked out how to use it with adding device and config for them.
I would like to not compile the FW but instead use the pre-combiled ESPEasy binaries. Therefore I'm looking for one of the option to select FW.
1. Specify FW path/name to be used for the upload
and/or
2. Put all latest pre-compiled binaries in one config directory and the tool select binary based on

Code: Select all

$cfg['hosts']['k-iot101']['config']             ="espeasy_1M";

Code: Select all

root@linux01:/opt/src/EspBuddy# ./espbuddy.php upload
PHP Notice:  Undefined offset: 2 in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1101
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1104
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1105
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1106
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1108
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1109
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1110
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1111
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1112
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1114
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1115
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1116
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1117
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1118
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1119
PHP Notice:  Undefined offset: 2 in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1121
PHP Notice:  Undefined index: hostname in /opt/src/EspBuddy/lib/espbuddy.class.php on line 742
PHP Notice:  Undefined variable: force_selected in /opt/src/EspBuddy/lib/espbuddy.class.php on line 747
Choose Target Host : 
 [A] # ALL #
 [B] 192.168.5.101 
B
-----------------------------------
PHP Notice:  Undefined index: hostname in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1089
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 874
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 874
PHP Notice:  Undefined index: repo in /opt/src/EspBuddy/lib/espbuddy.class.php on line 799
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined variable: first_serial_found in /opt/src/EspBuddy/lib/espbuddy.class.php on line 805
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 873
PHP Notice:  Undefined offset: 1 in /opt/src/EspBuddy/lib/espb_repo.php on line 344
Selected Host      : k-iot101
       + Host Name : k-iot101.filtfloppy.net
       + Host IP   : 192.168.5.101
       + Serial    :    at 74880 bauds

Selected Config    : espeasy_1M
PHP Notice:  Undefined variable: force_selected in /opt/src/EspBuddy/lib/espbuddy.class.php on line 776

Please Confirm : [Y]es, [N]o ? Y

PHP Notice:  Undefined variable: in_drymode in /opt/src/EspBuddy/lib/espbuddy.class.php on line 200
Processing 1 host(s) : 

##### k-iot101.filtfloppy.net       (192.168.5.101 ) ##### : PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 874
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined variable: first_serial_found in /opt/src/EspBuddy/lib/espbuddy.class.php on line 805
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 873
PHP Notice:  Undefined offset: 1 in /opt/src/EspBuddy/lib/espb_repo.php on line 344

FATAL ERROR: No (LATEST) Firmware found at: /tmp/EspBuddy/k-iot101/Firmware.bin !!!
I also tried to first build the FW but run in to some other issues trying to upload it... maybe you can describe what environment that is required? I'm running on Debian but not sure if I have all required packages...

Code: Select all

root@linux01:/opt/src/EspBuddy# ./espbuddy.php upload
PHP Notice:  Undefined offset: 2 in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1101
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1104
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1105
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1106
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1108
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1109
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1110
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1111
PHP Notice:  Undefined index: flags in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1112
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1114
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1115
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1116
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1117
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1118
PHP Notice:  Undefined index: vars in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1119
PHP Notice:  Undefined offset: 2 in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1121
PHP Notice:  Undefined variable: force_selected in /opt/src/EspBuddy/lib/espbuddy.class.php on line 747
Choose Target Host : 
 [A] # ALL #
 [B] k-iot101 
B
-----------------------------------
PHP Notice:  Undefined index: ip in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1088
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 874
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 874
PHP Notice:  Undefined index: repo in /opt/src/EspBuddy/lib/espbuddy.class.php on line 799
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined variable: first_serial_found in /opt/src/EspBuddy/lib/espbuddy.class.php on line 805
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 873
PHP Notice:  Undefined offset: 1 in /opt/src/EspBuddy/lib/espb_repo.php on line 344
Selected Host      : k-iot101
       + Host Name : k-iot101
       + Host IP   : 192.168.5.101
       + Serial    :    at 74880 bauds

Selected Config    : espeasy_1M
PHP Notice:  Undefined variable: force_selected in /opt/src/EspBuddy/lib/espbuddy.class.php on line 776

Please Confirm : [Y]es, [N]o ? Y

PHP Notice:  Undefined variable: in_drymode in /opt/src/EspBuddy/lib/espbuddy.class.php on line 200
Processing 1 host(s) : 

##### k-iot101                      (192.168.5.101 ) ##### : PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index: login in /opt/src/EspBuddy/lib/espbuddy.class.php on line 874
PHP Notice:  Undefined index: pass in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_rate in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined variable: first_serial_found in /opt/src/EspBuddy/lib/espbuddy.class.php on line 805
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 867
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 869
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 870
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 871
PHP Notice:  Undefined index: serial_port in /opt/src/EspBuddy/lib/espbuddy.class.php on line 872
PHP Notice:  Undefined index:  in /opt/src/EspBuddy/lib/espbuddy.class.php on line 873
PHP Notice:  Undefined offset: 1 in /opt/src/EspBuddy/lib/espb_repo.php on line 344

PHP Notice:  Undefined variable: verbose in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1230
** Using LATEST Firmware (Compiled on 21 Mar 2018 - 15:20::15 ) : Firmware-espeasy_1M-(v2.0,v2.0-20180321).bin *******************PHP Notice:  Undefined variable: verbose in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1236


PHP Notice:  Undefined variable: verbose in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1230
** Uploading Intermediate Uploader Firmware **************************************************************************************PHP Notice:  Undefined variable: verbose in /opt/src/EspBuddy/lib/espbuddy.class.php on line 1236

15:33:18 [DEBUG]: Options: {'esp_ip': '192.168.5.101', 'host_port': 43321, 'image': '/opt/src/EspBuddy/firmwares/ESPEasyUploader.OTA.1m128.esp8266.bin', 'host_ip': '0.0.0.0', 'auth': 'xxxx', 'esp_port': 8266, 'spiffs': False, 'debug': True, 'progress': True}
15:33:18 [INFO]: Starting on 0.0.0.0:43321
15:33:18 [INFO]: Upload size: 288048
15:33:18 [INFO]: Sending invitation to: 192.168.5.101
15:33:28 [ERROR]: No Answer

FATAL ERROR: First Upload Failed !!!

root@linux01:/opt/src/EspBuddy# 

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#10 Post by soif » 05 Apr 2018, 15:32

Hi
Sorry for being so late, I did not got a notice. (Would you please rather start an issue on my github repo).

1) I did not know that there was that much php notices (my php.ini defaults to not show this)... I will fix that.
in the mean time you can just add :

Code: Select all

error_reporting(E_ERROR | E_WARNING | E_PARSE ); 
just before

Code: Select all

$config_file=dirname(__FILE__).'/config.php';
, in espbuddy.php.
----> This should hide all the php notices. :roll:

2) regarding using a prebuilt Fimware, at this time you would have to rename (or symlink it to) as Firmware.bin , and put it in the host backup folder. ie if you did not changed config.php :

Code: Select all

$cfg['paths']['dir_backup']  ="/tmp/EspBuddy/"; //(WITH a trailing slash)
Your firmware (or symlink) should be (according to your logs) :

/tmp/EspBuddy/k-iot101/Firmware.bin

HTH
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#11 Post by soif » 05 Apr 2018, 15:38

soif wrote: 05 Apr 2018, 15:32 1) I did not know that there was that much php notices (my php.ini defaults to not show this)... I will fix that.
Fixed if you clone the latest version from the develop branch at https://github.com/soif/EspBuddy/tree/develop .
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#12 Post by soif » 07 Apr 2018, 15:55

latest master version v1.82 allows you :
- to choose an aternate firmware to upload with --firm
- hide all those uggly php warnings

HTH
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#13 Post by soif » 16 Dec 2019, 17:38

I've just released EspBuddy version v2.00 !!

New:
  • the 'sonodiy' command allows to discover /control /flash any Sonoff DIY type devices (Basic R3,RFR3 and Mini) from the factory firmware, over the air, without struggling with the very bugged Itead app.
  • the 'self' command implements an easy way to update EspBuddy to past/future releases
Tests and reports are welcome!

https://github.com/soif/EspBuddy


enjoy :D
Last edited by soif on 17 Dec 2019, 09:08, edited 1 time in total.
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

TD-er
Core team member
Posts: 8643
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#14 Post by TD-er » 16 Dec 2019, 21:29

Sounds great.
I really should test your EspBuddy tool (never taken the time to test it myself :( )

mrwee
Normal user
Posts: 225
Joined: 31 Aug 2016, 12:52

Re: EspBuddy : Batch Upload, backup, query, etc...

#15 Post by mrwee » 16 Dec 2019, 22:54

Seems like a clever tool. Will also test

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#16 Post by soif » 17 Dec 2019, 09:06

thank you.

and please star it on Github if you find it useful 8-)
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#17 Post by soif » 26 Dec 2023, 02:17

Just a quick note to tell you that I've just released EspBuddy v2.30.

https://github.com/soif/EspBuddy

Some new features:

Code: Select all

- Remotely get the device's Status as text report (or json)
- send a command or a commands list to a device
- fully browsable built-in web server (useful ie for Tasmota updates)
- now also supports WLED firmwares
- directly use IP address of hostname as target in the command line
- many other improvements
Happy Christmas ;)
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#18 Post by soif » 30 Dec 2023, 14:01

Latest d2.40b2 develop version now allows to quickly download latest assets, auto unzip it, sort it, etc...
ie:

Code: Select all

soif@electrokintosh ~ % espbuddy factory download espeasy latest all                                       
* Fetching releases information from Github ...
* Selected ESPeasy mega-20231225 (latest) "mega-20231225" , released on Dec 25, 2023 23:14.
* Found 7 assets for a total size of 465.35 MB !
Please Confirm : [Y]es, [N]o ? y
* Downloading 7 assets into /Volumes/Home/Users/Catalina/soif/DEV/EspBuddy_Data/_Factory/espeasy/mega-20231225/ ...
 - ESPEasy_mega_20231225_ESP82xx_binaries.zip    OK
 - ESPEasy_mega_20231225_ESP32_binaries.zip      OK
 - ESPEasy_mega_20231225_ESP32solo1_binaries.zip OK
 - ESPEasy_mega_20231225_ESP32s2_binaries.zip    OK
 - ESPEasy_mega_20231225_ESP32c3_binaries.zip    OK
 - ESPEasy_mega_20231225_ESP32s3_binaries.zip    OK
 - ESPEasy_docs.zip                              OK
* Successfully downloaded 7 assets!

soif@electrokintosh ~ % espbuddy factory download espeasy previous all
* Fetching releases information from Github ...
* Selected ESPeasy mega-20231130 (previous) "mega-20231130" , released on Nov 30, 2023 20:42.
* Found 7 assets for a total size of 468.71 MB !
Please Confirm : [Y]es, [N]o ? y
* Creating the 'mega-20231130' directory at: /Volumes/Home/Users/Catalina/soif/DEV/EspBuddy_Data/_Factory/espeasy/mega-20231130/	OK
* Downloading 7 assets into /Volumes/Home/Users/Catalina/soif/DEV/EspBuddy_Data/_Factory/espeasy/mega-20231130/ ...
 - ESPEasy_mega_20231130_ESP82xx_binaries.zip    OK
 - ESPEasy_mega_20231130_ESP32_binaries.zip      OK
 - ESPEasy_mega_20231130_ESP32solo1_binaries.zip OK
 - ESPEasy_mega_20231130_ESP32s2_binaries.zip    OK
 - ESPEasy_mega_20231130_ESP32c3_binaries.zip    OK
 - ESPEasy_mega_20231130_ESP32s3_binaries.zip    OK
 - ESPEasy_docs.zip                              OK
* Successfully downloaded 7 assets!

soif@electrokintosh ~ % ls -l DEV/EspBuddy_Data/_Factory/espeasy/     
total 16
lrwxr-xr-x    1 soif  staff     13 Dec 30 13:48 _Latest -> mega-20231225
lrwxr-xr-x    1 soif  staff     13 Dec 30 13:48 _Previous -> mega-20231130
drwxr-xr-x  301 soif  staff  10234 Dec 30 13:48 mega-20231130
drwxr-xr-x  297 soif  staff  10098 Dec 30 13:48 mega-20231225

soif@electrokintosh ~ % ls -l DEV/EspBuddy_Data/_Factory/espeasy/_Latest/
total 842752
-rw-r--r--  1 soif  staff    276848 Dec 25 23:11 ESPEasy_2step_UploaderMega_1024.bin
-rw-r--r--  1 soif  staff   1474848 Dec 25 22:13 ESP_Easy_mega_20231225_climate_ESP32_4M316k.bin
-rw-r--r--  1 soif  staff   1540384 Dec 25 22:13 ESP_Easy_mega_20231225_climate_ESP32_4M316k.factory.bin
-rw-r--r--  1 soif  staff   1504336 Dec 25 22:13 ESP_Easy_mega_20231225_climate_ESP32_4M316k_ETH.bin
-rw-r--r--  1 soif  staff   1569872 Dec 25 22:13 ESP_Easy_mega_20231225_climate_ESP32_4M316k_ETH.factory.bin
-rw-r--r--  1 soif  staff   1454832 Dec 25 22:13 ESP_Easy_mega_20231225_climate_ESP32c3_4M316k_CDC.bin
-rw-r--r--  1 soif  staff   1520368 Dec 25 22:13 ESP_Easy_mega_20231225_climate_ESP32c3_4M316k_CDC.factory.bin
.....
-rw-r--r--  1 soif  staff   1543536 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32_4M316k.bin
-rw-r--r--  1 soif  staff   1609072 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32_4M316k.factory.bin
-rw-r--r--  1 soif  staff   1574208 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32_4M316k_ETH.bin
-rw-r--r--  1 soif  staff   1639744 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32_4M316k_ETH.factory.bin
-rw-r--r--  1 soif  staff   1818000 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32_IRExt_4M316k.bin
-rw-r--r--  1 soif  staff   1883536 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32_IRExt_4M316k.factory.bin
-rw-r--r--  1 soif  staff   1514768 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32c3_4M316k_CDC.bin
-rw-r--r--  1 soif  staff   1580304 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32c3_4M316k_CDC.factory.bin
-rw-r--r--  1 soif  staff   1500800 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32s2_4M316k_CDC.bin
-rw-r--r--  1 soif  staff   1566336 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32s2_4M316k_CDC.factory.bin
-rw-r--r--  1 soif  staff   1481872 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32s3_4M316k_CDC.bin
-rw-r--r--  1 soif  staff   1547408 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP32s3_4M316k_CDC.factory.bin
-rw-r--r--  1 soif  staff   1036144 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP8266_4M1M.bin
-rw-r--r--  1 soif  staff    688594 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP8266_4M1M.bin.gz
-rw-r--r--  1 soif  staff   1036480 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP8266_4M1M_VCC.bin
-rw-r--r--  1 soif  staff    688563 Dec 25 22:13 ESP_Easy_mega_20231225_collection_A_ESP8266_4M1M_VCC.bin.gz
-rw-r--r--  1 soif  staff   1543824 Dec 25 22:13 ESP_Easy_mega_20231225_collection_B_ESP32_4M316k.bin
-rw-r--r--  1 soif  staff   1609360 Dec 25 22:13 ESP_Easy_mega_20231225_collection_B_ESP32_4M316k.factory.bin
.....
-rw-r--r--  1 soif  staff    823728 Dec 25 22:14 ESP_Easy_mega_20231225_custom_274_ESP8266_1M.bin
-rw-r--r--  1 soif  staff   1014656 Dec 25 22:14 ESP_Easy_mega_20231225_custom_274_ESP8266_2M256.bin
-rw-r--r--  1 soif  staff    678734 Dec 25 22:14 ESP_Easy_mega_20231225_custom_274_ESP8266_2M256.bin.gz
-rw-r--r--  1 soif  staff   1014704 Dec 25 22:14 ESP_Easy_mega_20231225_custom_274_ESP8266_4M1M.bin
-rw-r--r--  1 soif  staff    678761 Dec 25 22:14 ESP_Easy_mega_20231225_custom_274_ESP8266_4M1M.bin.gz
-rw-r--r--  1 soif  staff   1017296 Dec 25 22:14 ESP_Easy_mega_20231225_custom_312_ESP8266_4M1M.bin
-rw-r--r--  1 soif  staff    682058 Dec 25 22:14 ESP_Easy_mega_20231225_custom_312_ESP8266_4M1M.bin.gz
-rw-r--r--  1 soif  staff   1017296 Dec 25 22:14 ESP_Easy_mega_20231225_custom_312_ESP8266_4M2M.bin
-rw-r--r--  1 soif  staff    682058 Dec 25 22:14 ESP_Easy_mega_20231225_custom_312_ESP8266_4M2M.bin.gz
-rw-r--r--  1 soif  staff    987312 Dec 25 22:14 ESP_Easy_mega_20231225_custom_312_ESP8266_4M2M_LittleFS.bin
-rw-r--r--  1 soif  staff    660892 Dec 25 22:14 ESP_Easy_mega_20231225_custom_312_ESP8266_4M2M_LittleFS.bin.gz
-rw-r--r--  1 soif  staff   1380064 Dec 25 22:14 ESP_Easy_mega_20231225_custom_ESP32_16M8M_LittleFS.bin
...
-rw-r--r--  1 soif  staff  16777216 Dec 25 22:11 blank_16MB.bin
-rw-r--r--  1 soif  staff   1048576 Dec 25 23:11 blank_1MB.bin
-rw-r--r--  1 soif  staff   2097152 Dec 25 23:11 blank_2MB.bin
-rw-r--r--  1 soif  staff   4194304 Dec 25 22:11 blank_4MB.bin
-rw-r--r--  1 soif  staff   8388608 Dec 25 22:11 blank_8MB.bin

Browsable in the new builtin web server..

Image


Convenient isn't it? :mrgreen:

BTW @TD-er, I would be more easy if assets were not grouped in big zip files, but rather downloadable separately, as other firmwares vendors all do (espurna,tasmota, wled)..
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
Ath
Normal user
Posts: 3416
Joined: 10 Jun 2018, 12:06
Location: NL

Re: EspBuddy : Batch Upload, backup, query, etc...

#19 Post by Ath » 30 Dec 2023, 14:19

soif wrote: 30 Dec 2023, 14:01 BTW @TD-er, I would be more easy if assets were not grouped in big zip files, but rather downloadable separately, as other firmwares vendors all do (espurna,tasmota, wled)..
Look, look: PR #4919 and a recent Actions run :D
/Ton (PayPal.me)

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#20 Post by soif » 30 Dec 2023, 15:26

Sounds like you answer to request, b4 I even post them :mrgreen: :mrgreen: :mrgreen:

When will it be released?
so that i can test it in esbuddy, and thus allow to create "assets_groups" ( list of favorites assets to be downloaded).
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

User avatar
Ath
Normal user
Posts: 3416
Joined: 10 Jun 2018, 12:06
Location: NL

Re: EspBuddy : Batch Upload, backup, query, etc...

#21 Post by Ath » 30 Dec 2023, 16:28

soif wrote: 30 Dec 2023, 15:26 Sounds like you answer to request, b4 I even post them :mrgreen: :mrgreen: :mrgreen:
:D My psychic powers :lol:
Actually, it was driven by some non-backward compatible GH Actions updates... :(
soif wrote: 30 Dec 2023, 15:26 When will it be released?
That will take a little time, first there will be a fix for the 20231225 release to correct an issue with the NeoPixel plugins currently being mandatory on GPIO-2 for ESP8266 (has been merged, just has to be released).

NB: The Release will still be in the current per-CPU-type style...
/Ton (PayPal.me)

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#22 Post by soif » 04 Jan 2024, 11:15

BTW while you are around..
To extract the current EspEasy version (when compiling custom firmares), i used to parse: /src/src/CustomBuild/ESPEasy_buildinfo.h for the defined "BUILD". But this symbol is no longer present... :roll:
Would you please advice where can I find the current EspEasy version (apart from the Tag, or commit id) in the code? ATM I can only find it in the /dist/Release_notes.txt....
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

TD-er
Core team member
Posts: 8643
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#23 Post by TD-er » 04 Jan 2024, 11:54

It is being generated at compile time.
See: https://github.com/letscontrolit/ESPEas ... defines.py

PlatformIO calls these Python functions to generate defines which are then used when compiling this exact .cpp file:
https://github.com/letscontrolit/ESPEas ... efines.cpp

The reason to do it like this is so we can decode the build date on ESPEasy p2p nodes while remaining compatible with the 16 bit build nr that's present in the p2p protocol.

During compile this is also summarized in the build console:

Code: Select all

 -------------------------------
 Compile time defines
 File System:      SPIFFS
 PROGNAME:         ESP_Easy_mega_20240104_minimal_core_312_ESP8266_1M_OTA_Domoticz
 BOARD_NAME:       Espressif Generic ESP8266 ESPEasy 1M Flash 128k FS
 BUILD_PLATFORM:   Windows-10-10.0.22621-SP0
 GIT_HEAD:         bugfix/p2p_IPv6_72b197a
 CDN_URL:          https://cdn.jsdelivr.net/gh/letscontrolit/ESPEasy@mega-20231225/static/
 BUILD_VERSION:    20704
 BUILD_UNIXTIME:   1704365626
 BUILD_RFC1123:    Thu, 04 Jan 2024 10:53:46 GMT
 -------------------------------
 

User avatar
soif
Normal user
Posts: 46
Joined: 20 Feb 2018, 19:11
Location: Solar System
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#24 Post by soif » 04 Jan 2024, 19:24

Many thanks for the explanation. 8-)
So for the moment I'm gonna parse the version found in the /dist/Release_notes.txt.

Another question. At this time, for "2 steps" OTA upgrades, I'm using a (now old) minimal Espeasy firmare that i've compiled myself by gathering your old source code.
I've noticed that there is now a "ESPEasy_2step_UploaderMega_1024.bin" released.
- Is this firmware backward compatible with old (even very old) Espeasy? I mean if I upgrade a very old Espeasy, using this intermediate firmware, will it correctly maintain/read flash stored settings?
- It is only intended for ESP8266, not ESP32, right?
- Do you authorize me to include the binary into EspBuddy releases?

Thanks for your absolutely amazing work! :D
Soif
-----
Want to update ALL your ESP babies OverTheAir, or backup their settings in ONE simple command, + many other cool features.... Adopt EspBuddy

TD-er
Core team member
Posts: 8643
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: EspBuddy : Batch Upload, backup, query, etc...

#25 Post by TD-er » 04 Jan 2024, 22:09

As far as I know this binary was even compiled before I was involved with the project.
You're free to include it in your ESPBuddy project, but I doubt it is better than your own version.
It does have SPIFFS support and can read the Security.dat file.
So it should be possible to make it even smaller, but then we need to find a way to compile such old SDK code again as any newer SDK version results in larger builds and we need to modify ESPEasy to also store those settings outside the file system. (e.g. on the EEPROM partition???)

As far as I know it should be compatible with all 'mega' builds which do use the same partition layout.
Any build predating the 'mega' builds will probably not work

And it is only for ESP8266 (maybe also ESP8285, not 100% sure)

Post Reply

Who is online

Users browsing this forum: No registered users and 26 guests