Checking / controling the library

Bonjour,
while développing some code I hit a nasty problem.
My code compiles OK on one PC Windows 10 and does not compile on another PC Windows 10 also.
I suspeceted the modules in the library of the IDE.
So I wanted to compare side by side. A real mess.
You cannot copy/paste what you see on the screen which describe each installed module.
The help of the IDE will tell you the level of the IDE. Full stop
If you look at the sketch folder you find names but no help telling you the level.
If for any reason you decide to install an old version, you can do it but the library does not display the right level of the function.
Also the github of the function does show neither the level nor the date. The .md file would be a good place to maitain these information.

Are both IDEs the same version? Are ALL the libraries up to date. Use this to check.
Screenshot 2024-08-15 at 12.46.54

Enable verbose output during compilation under file/preferences in the IDE. Compile and the output will show you which version of a library or the core is used.

That is by far the fastest way to check versions in a project unless you're compiling for ESP32 and other modern boards.

The alternative is to run a grep over the libraries directories; this will only do the 3rd party libraries; something like

wim@AntixLaptop:~/Downloads/1_arduino_ide_1.x/arduino-1.8.19/portable/sketchbook/libraries
$ grep -Rin '.' -e '^version' |grep library.properties

The last alternative is to use library manager but it's manual work.

Thanks for your comments nad remarks.
As suggested I ran my compile on 2 computers after anabling verbose.
All the libray members are at the same level:

  -> candidates: [TinyGPSPlus-ESP32@0.0.2]
  -> candidates: [EspSoftwareSerial@8.1.0]
  -> candidates: [Wire@3.0.4]
  -> candidates: [hd44780@1.3.2]
  -> candidates: [ESP_8_BIT Color Composite Video Library@1.3.2]
  -> candidates: [Adafruit GFX Library@1.11.9]
  -> candidates: [Adafruit BusIO@1.16.0]
  -> candidates: [SPI@3.0.4]
  -> candidates: [Time@1.6.1]
  -> candidates: [Timezone@1.2.4]

Looking firther to the verbose I found on the not working PC:

FQBN: esp32:esp32:esp32da

Using core 'esp32' from platform in folder: C:\Users\jacques\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.4

esptool.py v4.6
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
then a bunch of error messages

On the PC where the compile is fine:

FQBN: esp32:esp32:esp32da
Using board 'esp32da' from platform in folder: C:\Users\ACTIF IS\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.11
Using core 'esp32' from platform in folder: C:\Users\ACTIF IS\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.11

esptool.py v4.5.1
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.

I confirm :blush:
It is not easy to find the level of the various components that are used when compiling some sketch.
That is one point of improvement.
Obviously there is a bug somewhere and I cannot run any more investigation unless I am guided.

It's not necessarily a bug; there were breaking changes; stuff that used to exist no longer exists. Hence the compile errors that you got.

Without the full error message and the full code, you are on your own :wink:

The quick / simple solution: downgrade the board package.

The more complex solution: Migration from 2.x to 3.0 - - — Arduino ESP32 latest documentation. I think it's advisable to go through the exercise as in future new boards might be added that you might want to use.

Now you know where to look for the board package version (2.0.11 in this case). Note that part of that path might be hidden by default.

PS
It's not called "level" but "version".

1 Like

Thanks for version versus level....
I was a little reluctant to pass the code and the message because of the size.
Here they are
My code
Meridienne_all.ino (22.7 KB)
and the execution messages
IDE_working_not.txt (99.3 KB)

On the OK PC, the message are:
IDE_working.txt (362.9 KB)

I have isolated the trrouble maker.
My code work with board manager version 2.017 for board and core

FQBN: esp32:esp32:esp32da
Using board 'esp32da' from platform in folder: C:\Users\jacques\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.17
Using core  'esp32'   from platform in folder: C:\Users\jacques\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.17

Does not work with version 3.0.3

Some routines in ESP_8_Bit Color Composite Video crash.

Who is guilty ?

I don't understand.

Can you tell me where the documentation is ?

I upgraded all the components and check with "upgrable".
Both library manager and board manager are empty.
Still the same problem.

Beside downgrading what can be done ?

I can't test / advise as I can not install a version 3 of the ESP32 board package due to system limitations.

The developer of the "ESP_8_BIT Color Composite Video Library" library is tracking the breakage that was introduced in version 3.0.0 of the "esp32" boards platform here;

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.