Problem connecting pins

Hi,

I made a schematic footprint for a ADS1115 Breakout board and now I have problem conencting it to the SCL / SDA pins of an Arduino UNO.

What is wrong or what did I miss ?

regards Rainer

First of all: It is called a symbol. (A footprint is used to represent the landing pattern!)

What is the exact nature of your problem?
Could you post a screenshot?
Might it stem from problems with the grid or with problems of hidden pins? (These are the problems we see a lot.)

In other words: we need a better problem description otherwise we are a bit in the dark here.

1 Like

Hi Rene,

Sorry for not knowing the correct terminology yet :confused: Please have patience. Thank you. I am a 64 year old guy trying to learn something.

Below the screenshot. The error message is as following see screenshot also

The electrical rule check uses the pin types set in a symbols pins to determine if everything is alright with your schematic. (At least as far as possible. It really only catches quite basic problems of a circuit design.)

I assume that your SCL and SDA pins belong to a i2c bus. (from the nomenclature)

In your case the SCL pin of the ADS1115 symbol is set as input. Any input must be connected to one output.
The SCL pin of your ARDUINO symbol is also set as input. I assume your arduino is the i2c bus master and therefore the source of the clock. In that case the SCL pin of the arduino has to be of electrical type output.

The SDA pin should be bidirectional for both devices. (In i2c the data pin is bidirectional.)

1 Like

Hi Rene,

Thank you. I also right now found out how to set the symbol if it is an input or an output.

Thanks again and regards Rainer

Hi,

Me again. I just saw that in the symbol all pins were set as Input. I guess in this case as being an Arduino for simplicity I could set all to Bidirectional and so spare trouble ?

regards Rainer

In the symbol editor open the pin properties.
Either by right clicking and selecting properties or by pressing e while your mouse pointer hovers above the pin.

Don’t forget to press the save lib to disk button.

Updating the symbol is something i am a bit unsure about. I normally just delete the symbol and newly place it.
I think it can also be done via the rescue symbol dialog. This dialog opens when you update a symbol in the library and you open eeschema.
If i remember it correctly, deselecting the symbol in the list of symbols to be rescued updates it from the lib. (otherwise the symbol that is cached in your projects cache lib is copied into a new rescue lib.)

If you set all of them do bidirectional, erc can not help you.
I would create a specialized symbol just for this project and set the pins to the electrical type fitting your intended use.

1 Like

Hi Rene,

Thank you. Will fiddle out my ADS1115 breakout board and change the symbol to correct set inputs and outputs.

I imported from the Internet the Arduino symbols and footprints. I had to check some connections and now that I ran PCBnew and imported netlist everything is connected correct.

Of course i will follow your advice in order to be able to use ERC correctly.

thanks and regards Rainer

Doesn’t most Devices support clock stretching for I2C? This would make both SCL bidirectional

Hmm… Something different but related:
If SCL and SDA are I2C, where are the pullup-resistors?

If it’s the Adafruit ADS1115 breakout board, it has 10k pullups on that board.

The topic of what to do with multi-purpose pins including GPIO on MCUs has been discussed before. It all depends on what you are trying to find with ERC. Both SDA and SCL are GPIOs on the MCU, so could be set to input or output. I think strictly they should be marked bidirectional.

ERC is not really useful for signals like SDA/SCL. I guess if you have a nest of 74xx logic, it is useful to pick up that you might have some inputs not connected to any output. But if you don’t realise that I2C needs a master and a slave, then I’m not sure ERC will help.

However, in that case, the signals of the I2C master should both be outputs, and the signals of the I2C slave both inputs, then ERC could pick up the fact that an I2C slave has a missing connection.

3 Likes

Hi bobc,

Thanks for the Explanation. No, it is not the original Adafruit ADS1115 but a generic. Comparing the Adafruit to the one I have they look identical and so far no Smoke :slight_smile:

Rainer