I have tried this a few times, and I find it a bit weird, can someone else check if this is indeed the way it handles.
Only have one card plugged in and set to an address, eg 3
Run your code to connect to another address, eg 0
It should connect to address 3…
Does this do the same with multiple cards and just connects to any that exist if the initial selection wasnt asked for?
Really this should be only allowed explicitly rather than “user friendly”. Users should be using the search device to find a card if it is unknown.
Big problems could occur like this…
You have cards 0, 1, 2, 3 on the PC.
None of the cards are connected in software.
You connected in software to card 0.
Card 0 is not connected to the PC because a cable was cut (etc).
Software actually connects to card 1.
Software sends commands which are intended for card 0 to card 1.
As you can see, depending on what the output of card 1 does depends on how bad the results are. Never know, connected to some large machinery could injure someone I know it sounds very very unlikely but no matter the scale its going to cause some small annoyances somewhere.