Library problems during migration to V2.0

I just installed V2.0(release) and migrated my old V1 Projects.

During “Update project library” i get some error messages of this kind:

“[ERROR] Trace of net “VCC” is not allowed to be connected to pad “2” of device “D1” (Diode Generic DO35) since it is connected to the net “N24”.”

This is all right - it should be that way and did not report any ERC warning under V1 of Libre PCB. deleting the traces and reconnect the device doesn’t help.

“Diode Generic DO35” is a device which i added to my local library under Version 1 of LibrePCB.

It references “DO-204AH” as package and “Diode” as component - both of the public Library.

What i found out is that for some unknown reason the pin numbers of this diode (1 and 2) are now different than before (what was Pin 1 under V1 changed to Pin 2 under V2) - and the former Pinout sheme (Pin 1 was Anode and Pin 2 was Cathode) therefore is wrong also.

Question 1 is: what went wrong? - Did the pins of 2-point conductors change in V2 (vs. V1)? - And which is the best strategy to correct this issue?

And Question 2: I assume that it should be possible to choose a different package for devices in my private Library. (so i could possibly correct the issue by choosing a package with a “corrected” pin layout.) But trying to do this i only see packages of the official Library, not those of my private Library (which do exist).

At the Moment it seems that only diodes are affected - but all of them - and in every project started under V1.

Thanks for any ideas!

Hm that is strange. Are you sure you never changed the pinout of the device manually? Do you maybe use a version control system so you could check that?

Would it be possible to send us some files for investigation? Very helpful would be:

  1. Your whole project (as a *.lppz export)
  2. Your device from the library (just ZIP the device directory)
  3. Optional: The device how it was before the v1->v2 migration (same directory as in point 2., but replacing “data” by “v1” in the file path)

If the data is confidential, you could send them to the email address listed on Contact | LibrePCB.

Quite sure - but these devices are from the beginning when i startet using LibrePCB. Maybe i did something stupid in the past.

Do you maybe use a version control system so you could check that?

No version control - so i can’t tell if and when i changed things, unfortunately.
But i have a backup of my LibrePCB Workspace before installing V2.

To be honest - i resolved this issue last night by deleting all data in my private lib with reference to those faulty devices & changed the relevant projects to use the official devices (public library). So if no other devices pop up with a problem, for me everything is fine again.
At the moment i´m unsure if we should really proceed with this issue.
I really appreciate your help & i would send a copy of my files - but since it doesn’t seem to be a common problem (probably just me & my lib) - i would suggest to use the time for the really important things :wink: and close this one.

Alright, thanks for clarifying :slightly_smiling_face: I agree it might not be worth to investigate it.

FYI, the described error is exactly what happens if you swapped the pinout in the device after the device has already been added to a project. LibrePCB warns about this situation with a yellow banner, so whenever this banner is shown, it’s better not to proceed that way but create a new device instead:

(EDIT: we might need to make the warning more scary in future, as the “highly recommended” actually sounds too weak, we regularly observe people ignoring the warning)

thank you for this addition!
I don’t remember seeing this banner, - but yes, this message is important.

Interestingly, all was good under V1 - no error, no warning, nothing. And I definitely didn’t change anything in the process of installing /migration to V2.
That’s why I first thought that there has to be a change within the official Libs… but, well, that’s speculation.

Yeah actually the migration to v2 should not have any impact on that problem. My speculation would be that you never did the “Update project library” with v1 (after the device pinout has been modified). I mean, as far as I understand, the error didn’t appear during the project file format migration (i.e. the project was still correct after the migration to v2), but during the project library update.

In case you have a backup of the project before it was migrated to v2, it might be very useful to try the project library update again, but with LibrePCB 1.x. I expect it would fail too - if not, it would be a sign of something going wrong during the v1->v2 migration.

Thats true.

I‘ll try this when time allows. & Report any findings. Thank you for your efforts!

1 Like

Alright - I did the test. And you were right. Even under V1.3 the “Update project library” fails.
I’m still not aware that i changed anything, but at least it’s clear now that this is not the fault of V2.

Let’s close this one - and again - thank you for your help!

1 Like

OK good to know, thanks for testing! :folded_hands: