So - after making nice PCB and all, I see that Leonardo + wire library uses pin 2+3 for I2C
Those dedicated pins, clearly labeled as SDA/SCL are not used...
Is there a way for fix this ? - why is it like that in the first place ? should't wire library offer a choice here ?
I2C is on pins 2 and 3. I don't understand what you propose to fix. Are you not happy with using pins 2 and 3?
Why spend pins 2 and 3, when clearly marked SDA/SCL pins near VREF pin are unused.
the device has 13 arduino-mapped pins - and two dedicated I2C pins, - then somebody apparently though "let's use two of 13 pins - and let the two dedicated pins just be ornamental"
Now I have too few pins..
I don't think you understand what those "dedicated" I2C pins next to AREF are for. Those are hard wired to whatever pins of the MCU provide I2C, and shield makers can use those pin positions next to AREF to make their shields work with UNO or Mega or Leonardo. UNO, Mega, and Leonardo get their I2C signals from different pin positions. For example, UNO uses A4 and A5 for I2C and those 2 pins are duplicated at the positions next to AREF.
Don't forget, you also have 6 analog pins that can be used for digital IO as well, along with 3 pins - 1, 3, 4 - on the ICSP header.
Thank you both.
At first I though there were two I2C busses, like on the bigger MCU's , now I understand why the pins are there, so I only need to relocate the two inputs I had on pin 2+3.
(Yes, I know I could can analog pins)
I will offload some work to additional I2C DAC instead, and free up pin2 and 3
Thank you for the explanation, I should have checked Leonardo schematic/32u4 before assuming there were two I2C's and the "wrong" one was used by default.