New version 1.48.2 to test before final release

Here you'll find the updated available
Post Reply
User avatar
cicciocb
Site Admin
Posts: 1996
Joined: Mon Feb 03, 2020 1:15 pm
Location: Toulouse
Has thanked: 428 times
Been thanked: 1336 times
Contact:

Re: New version 1.48.2 to test before final release

Post by cicciocb »

[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 9:18 am
[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 8:50 am
[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Tue Nov 22, 2022 10:44 pm I could not find any reference to hardware serial TX and RX on the S2, else I would have tried flashing the bin using the Toolkit and a UART... might that be a feasible solution ?
Robin,
The ESP32-S2 cannot be flashed with the current AnnexToolkit as the flashing procedure is different.
Oh! ESP32-S2 use DFU (USB data to GPIO19 & 20)!!!
I believe that a little explanation is required because the thing is much simpler than it seems.
To flash a module, you simply have to use a tool called ESPTOOL.
It is a tool that launches from the command line with associated files, such as boot, partition table, firmware and, optionally, OTA and FFAT partition.

Independently if the module is flashed by a serial port or by a USB emulation made by the chip itself, the tool does not change because, in the end, the tool only writes in a serial port.

Each module has, on the other hand, its specificities in terms of memory address which are also a function of the partition table.

The work done by AnnexToolkit is to automatically create a partition table and launch ESPTOOL with the right options.
This is very practical because everything is done automatically but you can do the same manually with the tools provided by IDF.

The actual toolkit still work for the ESP32 so you can simply put the latest ESP32 .bin inside and continue to use it.
It cannot just be used for the other versions but this do not seems a big issue as there is an alternative method, using the web flasher.

I plan to update the web flasher to handle several releases, including the download of the .bin for offline purposes.

Honestly the number of variants is a big problem for this project as I should publish, for each release, at least 4 variants for the ESP32 (full, noBLE, CAM and epaper) and at least 2 variants (USB / no USB) for the other 3 versions (-C3, -S2, -S3) (without including the associated 4 OTA bin applications that must just be developed once). The total is 10 versions !
If I include the variants NOBLE for the ESP32-S3 and the ESP32-C3 this gives 4 additional versions.

Consider that each version, even if shares the same baseline code, is specific and must be compiled and debugged individually.
I hope that you understand that is becoming a job and not a simple hobby.

The time I spend on the project does not seem to me in phase with its success and therefore I prefer to concentrate on the ESP32 and continue to play alone on the other chip versions without getting involved in a capillary distribution which does not interest anyone.

But again, this requires time and motivation, something that is starting to become more and more rare.
User avatar
Electroguard
Posts: 855
Joined: Mon Feb 08, 2021 6:22 pm
Has thanked: 273 times
Been thanked: 321 times

Re: New version 1.48.2 to test before final release

Post by Electroguard »

Oh! ESP32-S2 use DFU (USB data to GPIO19 & 20)!!!
Yes Palm Liu, but 19 and 20 are not made available as hardware serial, which was what had prompted my comment.

s2.jpg


I made up a USB adapter so I could connect a serial UART via the type C connector, but it failed to flash whatever way round the data pins were connected ... had to try it though.

try.jpg
You do not have the required permissions to view the files attached to this post.
User avatar
cicciocb
Site Admin
Posts: 1996
Joined: Mon Feb 03, 2020 1:15 pm
Location: Toulouse
Has thanked: 428 times
Been thanked: 1336 times
Contact:

Re: New version 1.48.2 to test before final release

Post by cicciocb »

[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 1:15 pm
Oh! ESP32-S2 use DFU (USB data to GPIO19 & 20)!!!
Yes Palm Liu, but 19 and 20 are not made available as hardware serial, which was what had prompted my comment.


I made up a USB adapter so I could connect a serial UART via the type C connector, but it failed to flash whatever way round the data pins were connected ... had to try it though.
Robin,
you cannot flash the ESP32-S2 with the actual toolkit, you can do only using the online flasher.
Even if it worked, the .bin I released is for the ESP32, not for the ESP32-S2.

Each ESP32 version requires a different .bin
Palm Liu
Posts: 47
Joined: Fri Jun 25, 2021 3:50 am
Has thanked: 10 times
Been thanked: 17 times

Re: New version 1.48.2 to test before final release

Post by Palm Liu »

[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 12:43 pm
[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 9:18 am
[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 8:50 am

Robin,
The ESP32-S2 cannot be flashed with the current AnnexToolkit as the flashing procedure is different.
Oh! ESP32-S2 use DFU (USB data to GPIO19 & 20)!!!
I believe that a little explanation is required because the thing is much simpler than it seems.
To flash a module, you simply have to use a tool called ESPTOOL.
It is a tool that launches from the command line with associated files, such as boot, partition table, firmware and, optionally, OTA and FFAT partition.

Independently if the module is flashed by a serial port or by a USB emulation made by the chip itself, the tool does not change because, in the end, the tool only writes in a serial port.

Each module has, on the other hand, its specificities in terms of memory address which are also a function of the partition table.

The work done by AnnexToolkit is to automatically create a partition table and launch ESPTOOL with the right options.
This is very practical because everything is done automatically but you can do the same manually with the tools provided by IDF.

The actual toolkit still work for the ESP32 so you can simply put the latest ESP32 .bin inside and continue to use it.
It cannot just be used for the other versions but this do not seems a big issue as there is an alternative method, using the web flasher.

I plan to update the web flasher to handle several releases, including the download of the .bin for offline purposes.

Honestly the number of variants is a big problem for this project as I should publish, for each release, at least 4 variants for the ESP32 (full, noBLE, CAM and epaper) and at least 2 variants (USB / no USB) for the other 3 versions (-C3, -S2, -S3) (without including the associated 4 OTA bin applications that must just be developed once). The total is 10 versions !
If I include the variants NOBLE for the ESP32-S3 and the ESP32-C3 this gives 4 additional versions.

Consider that each version, even if shares the same baseline code, is specific and must be compiled and debugged individually.
I hope that you understand that is becoming a job and not a simple hobby.

The time I spend on the project does not seem to me in phase with its success and therefore I prefer to concentrate on the ESP32 and continue to play alone on the other chip versions without getting involved in a capillary distribution which does not interest anyone.

But again, this requires time and motivation, something that is starting to become more and more rare.
Thanks for you description in detail, I will try ESP32-C3 first, thanks again :)
User avatar
Electroguard
Posts: 855
Joined: Mon Feb 08, 2021 6:22 pm
Has thanked: 273 times
Been thanked: 321 times

Re: New version 1.48.2 to test before final release

Post by Electroguard »

Ta for the useful info Francesco - I didn't know at the time that it wouldn't work then, so it was worth a try.
Listen, have you actually tried the online flasher from anything other than windows ?
I've tried it on MX with chrome and chromium and edge and opera, all without success.

But all we really need is a linux / browser combo which actually works for the online flasher, then we can just boot that appropriate iso from usb thumb drive whenever we need to flash anything, irrespective of our normal daily driver.
I know you used to use ubunto, have you had the online flasher working on that ?
User avatar
cicciocb
Site Admin
Posts: 1996
Joined: Mon Feb 03, 2020 1:15 pm
Location: Toulouse
Has thanked: 428 times
Been thanked: 1336 times
Contact:

Re: New version 1.48.2 to test before final release

Post by cicciocb »

[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Wed Nov 23, 2022 3:25 pm Ta for the useful info Francesco - I didn't know at the time that it wouldn't work then, so it was worth a try.
Listen, have you actually tried the online flasher from anything other than windows ?
I've tried it on MX with chrome and chromium and edge and opera, all without success.

But all we really need is a linux / browser combo which actually works for the online flasher, then we can just boot that appropriate iso from usb thumb drive whenever we need to flash anything, irrespective of our normal daily driver.
I know you used to use ubunto, have you had the online flasher working on that ?
Yes, it worked in Ubuntu, but I tried in a virtual machine under windows.
Have you tried with a "classic" ESP32? Maybe the problem is specific to the ESP32-S2 because it requires probably a separate USB driver.
I understand that you like Linux but, looking at the stats on the WEB Flasher, most of people use windows, only very few people are using linux (less than 5%).
I probably spent a lot of time into re-developing another version of the AnnexTool that nobody use :oops:
As per my understanding people continue to use the old version loading the new bin inside. :lol:
BeanieBots
Posts: 344
Joined: Tue Jun 21, 2022 2:17 pm
Location: South coast UK
Has thanked: 182 times
Been thanked: 112 times

Re: New version 1.48.2 to test before final release

Post by BeanieBots »

It's very concerning that you are becomming despondent about further development.
After all, this is your hobby and it needs to remain something you have an interest and passion about.
Maybe now would be a good time to put up some sort of poll to see if what people really want is in line with what YOU wish to develop.
Perhaps have several themes. One for the method (and platform) of downloading the .bin and one for which devices to support.
Personally, I think the main objective is that people can program their favourite devices in BASIC and have an easy way of doing so.
I would guess (but a poll would confirm) that many ANNEX users are not the most proficient programmers, which is why they are using ANNEX in the first place.
I for one, really appreciate all the effort you have put into making my life much easier.
Having the ability to program in BASIC over the air is quite frankly mind blowing.
Perhaps people don't say it enough, but I really do believe that everyone on this forum is very appreciative of your work.
I certainly am and beg that you keep up the good work.
Dont' forget to let us know if there is any way we can help YOU.
Palm Liu
Posts: 47
Joined: Fri Jun 25, 2021 3:50 am
Has thanked: 10 times
Been thanked: 17 times

Re: New version 1.48.2 to test before final release

Post by Palm Liu »

[Local Link Removed for Guests] wrote: [Local Link Removed for Guests]Thu Nov 24, 2022 9:42 am It's very concerning that you are becomming despondent about further development.
After all, this is your hobby and it needs to remain something you have an interest and passion about.
Maybe now would be a good time to put up some sort of poll to see if what people really want is in line with what YOU wish to develop.
Perhaps have several themes. One for the method (and platform) of downloading the .bin and one for which devices to support.
Personally, I think the main objective is that people can program their favourite devices in BASIC and have an easy way of doing so.
I would guess (but a poll would confirm) that many ANNEX users are not the most proficient programmers, which is why they are using ANNEX in the first place.
I for one, really appreciate all the effort you have put into making my life much easier.
Having the ability to program in BASIC over the air is quite frankly mind blowing.
Perhaps people don't say it enough, but I really do believe that everyone on this forum is very appreciative of your work.
I certainly am and beg that you keep up the good work.
Dont' forget to let us know if there is any way we can help YOU.
Agree that Annex RDS focus on several ESP version so as to minimize the work load. As Annex is not for comerical use, no need tune for all development board.

Say, for ESP8266, I think 1.44.2 is good enough (very stable). If libraries for ESP32 also easliy put into ESP8266, it is good. If need much extra effort, seems no need. I think ESP8266 will be replaced by ESP32.

Focus on Classic ESP32 and versions that no need to have big change is good (e.g. ESP32-C3)

Thanks cicciocb great job!
User avatar
Electroguard
Posts: 855
Joined: Mon Feb 08, 2021 6:22 pm
Has thanked: 273 times
Been thanked: 321 times

Re: New version 1.48.2 to test before final release

Post by Electroguard »

CiccioCB might get disheartened like any of us. but he is not a quitter.
Therefore he's not likely to throw in the towel, but he'll go in whatever direction he chooses rather than be constrained by the interests of others.
Annex is pretty damned good, so perhaps we should accept the possibility that it may be as good as it gets... and that anything else which may come along would be added bonus. None of the existing Annex capability depends on progress, so even if its creator retired tomorrow, it will still always remain just as effective as it already is.

Not so for the Annex community though, which is totally dependent on the contributions of CiccioCB and a few others to keep it alive.
Everyone who uses Annex appreciates it, which is why they are using it - so laud CiccioCB with words or contributions if you wish... but the best way to actually show appreciation for Annex and keep its community alive is for users to post their own contributions to show what they can do with it.
The more projects and examples that are published, the greater the interest and encouragement for others, plus offering additional new creativity to attract new users.

Don't be too embarrassed to publish your creation even though it may not be a polished work of art... because it only needs to contain one thing that someone finds helpful to make it worthwhile... and perhaps it may result in some kindly suggestions for welcome improvements.
Not everyone can produce quality projects and examples, but that should not invite judgemental negative opinion or criticism.
We all started out the same before taking different paths, and none of us are perfect whatever we've learned along the way, but only those with the courage to keep learning by their mistakes will still make progress.

There is no right way or wrong way, cos if it works for you in the absence of anything better, then it must obviously be right for you, irrespective of potential for improvement. And if you found it useful for your purposes, then so may others with similar needs.

That is what the Practical Workshop Tutorials are: https://sites.google.com/site/annexwif ... rd-lessons
Simply a collection of 'trial & error' examples which were published for the benefit of others in the absence of anything else.
They are not particularly right or wrong or ideal, merely the best I could do at that time, when everything was on a steep learning curve.
A 'community' needs more than a handful of individuals though, so perhaps others can find something there to inspire an idea that they might publish.

Even non-programmers could contribute by helping to create a list of firmware versions with any noteworthy changes of functionality... such as newly introduced capabilities, or perhaps newly introduced bugs etc.
It could enable users to check through a list for the best firmware version to suit their purposes, which isn't necessarily the latest.
For instance, Annex (esp8266) uses gpio2 for WS2812B neo-pixels, but I seem to remember that earlier versions could be assigned a different pin... so if none of the later features are needed then perhaps an earlier firmware might be better for plugging in a Wemos D1 Mini neo-pixel led shield whose pcb track does not go to pin 2. Similarly for earlier versions with working functionalities which might have got broken in subsequent updates.

CiccioCB is the creator of Annex, but the Annex community is the rest of us, so the survival of the Annex community depends on our contributions, not Francesco.
Palm Liu
Posts: 47
Joined: Fri Jun 25, 2021 3:50 am
Has thanked: 10 times
Been thanked: 17 times

Re: New version 1.48.2 to test before final release

Post by Palm Liu »

Agree Electroguard !
Post Reply