@tfmccarthy What do you see when it doesn't build?
First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.
I just did a build of the servo sample using 2.0.17. IDE 2.3.4
And you're on a Mac. So, it still looks like a Window specific problem on my end.
Let me try again. I'll try a cold boot.
I think you learned the hard way not to change too many things at once.
I'm not disagreeing with you so much as complaining about software quality. I'm experienced enough to have been down this road many times before and I know how to get myself out of this mess. I shouldn't have to, though. I followed their automated suggestions and was led down the "primrose path" to disaster.
How many is too many? It this case it was 2 but one (Adafruit) had a hidden upgrade, so it's 3.
Is 3 upgrades too many?
Upgrading the ide is probably the least important as long as you have been using the previous version without issues.
I understand this approach, however, I come from a software developer background, where keeping abreast with the latest breaking changes is a critical concern. Evaluating these changes is a constant challenge. And switching between them is necessary to support old and new customers and in-house software.
YMMV
I think going back to 2.0.17 esp-arduino core and troubleshooting your code is what I would be doing.
Except, I can't. That's the problem. When I upgraded the IDE to the current version it was incompatible with the esp32 v2.0.17.
Normally if your code is not compatible with 3.x.x you would get compile errors to let you know you should roll back to a prevoius version.
But in this case, I don't get there. The sketch is suddenly incompatible due to a setting that I never set or knew existed. Nor did the developers of the sketch. The setting is a default that somehow is now incompatible.
I see your reasoning. I used to always want the latest but they call it "bleeding edge" for a reason.
Are you sure latest ide version can't use esp-arduino 2.x.x core ? That seems unlikely TBH and the latest IDE is stil on major version 2 so there should not be breaking changes.
If you want you can send me your code to see if I can find anything obvious to me. I run a dual boot linux, windows system. This is a mystery.
Are you sure latest ide version can't use esp-arduino 2.x.x core ?
Yes. I'm about to post latest results with the error message.
If you want you can send me your code to see if I can find anything obvious to me. I run a dual boot linux, windows system.
The Good News is this isn't my code. So, there's no custom coding going on.
The two examples are
1. the DBWS PCA servo example from in 2020 library
2. The Adafruit PWM library example servo.
This is a mystery.
Oh yeah. I have another name for it, but I'm controlling my language today.
The Better News is I think I have a clue. See subsequent result post.
What do you see when it doesn't build?
I see Espressif Development managers lined up against a wall. Then the meds kick-in and I see a room full of Scarlet Johansen women.
I think I have a clue as to what's happening, but first, your Q. This is what I see when I try to build the DBWS sketch
Invalid FQBN: getting build properties for board esp32:esp32:esp32: invalid option 'ZigbeeMode' Compilation error: Invalid FQBN: getting build properties for board esp32:esp32:esp32: invalid option 'ZigbeeMode'
I did a cold boot and loaded the IDE and reverted the esp32 library to 2.0.17.
Then restarted the IDE with the Adafruit sketch. This is what's comes up to start
which is esp32 library, the second shows the library version
Now, however, I can build the Adafruit example and it runs but the servo twitch.
OK, exit the IDE and load the DBWS PCS servo sketch.
This time, however, the build fails with the above error message.
If I look in the tool menu I see
So, apparently, "Disabled" is an invalid ZigbeeMode setting?
"Wait, " sez me, "what is it in the Adafruit example?"
Aha! The Adafruit Tools menu doesn't have the ZigbeeMode setting!
Why? I dunno.
How does it get there? I dunno.
How do I remove it? I dunno.
Is it befouled? I have a definite opinion on that.
I surmise that the setting is the cause of the issue and it has something to do with how the toolchain caches build data. I think I should try to replicate the DBWS example as a new sketch see what the setting is and try to figure out how to clean previous build data.
@tfmccarthy I have a hunch, what does your additional boards look like in the preferences? I am betting you have a dev/beta version as opposed to production/official.
Now about that "room full of Scarlet Johansen women." , care to share?
First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.
@tfmccarthy Here is my esp32. I will send my entire additional boards by DM.
https://espressif.github.io/arduino-esp32/package_esp32_index.json
First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.
@tfmccarthy Change your board to a DOIT esp32, just type DOIT in the search. I am seeing Zigbee for the Dev board you used. I ALWAYS per the NERDS use DOIT for a generic esp32. Always worked so far.
First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.
Change your board to a DOIT esp32, just type DOIT in the search. I am seeing Zigbee for the Dev board you used. I ALWAYS per the NERDS use DOIT for a generic esp32. Always worked so far.
That worked! Still have the instability but it builds.
You da man!
It still bothers me since I would think the board list should be global and not tied to a sketch but I just speculating.
@tfmccarthy I don't want to prolong this but what do you mean by
It still bothers me since I would think the board list should be global and not tied to a sketch
The board list is global, why do you think it isn't?
First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.
@tfmccarthy I am not really sure what you are talking about but the IDE upgrade didn't change anything like that, and so far as I know the change from 2.0.17 to 3.0.7 also didn't.
First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.
I am not really sure what you are talking about but the IDE upgrade didn't change anything like that, and so far as I know the change from 2.0.17 to 3.0.7 also didn't.
This is speculation.
The two sketches used the same board, from the same global list of available boards. With the same version of the IDE, I would expect that the tool menu contained the identical entries. But they didn't. The only thing that was changed was the URL of boards When I added your URL, the Tools menu changed.
Further, even if the ZigbeeMode wasn't applicable to the DBWS sketch, the setting "Disabled" should still be valid, i.e., "disable a feature" that you don't use should be a NO-OP. Instead, it's a fatal error.
However, AFAICT, the way the compilation process works is so convoluted that it's not surprising that an unused option causes problems.
just speculation; tempest in a teapot.