I2C signal and power over long range (10meter cable)












8












$begingroup$


After some reading/testing I managed to make stable communication between 2 devices using I2C with FTP CAT5 copper twisted pair cable.




  • Green wire - SCL

  • White/green wire - GND

  • Blue wire - SDA

  • White/blue wire - GND


GND is connected only at one cable end, I2C bus clock is at 10Khz and I have used 10Kom pullup resistors to VCC



It works well and stable. When I decided to use other 2 pairs of the cable for power (+12V), it stopped working. I tested +12V on one pair GND on the other pair, also +12V/GND on same pair: same result, it stopped working. Whole I2C bus stopped working, other devices attached to it too.



Wonder if I can use same cable or go to safest choice - another cable for power.










share|improve this question









New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$








  • 3




    $begingroup$
    Did you check that the power on the receiving side is fine enough? No glitches, no droops... CAT5 cables are quite thin, that is why PoE uses >40 V for power.
    $endgroup$
    – Vladimir Cravero
    yesterday






  • 4




    $begingroup$
    This is where you need an oscilloscope. Everything else will be (educated) guesswork.
    $endgroup$
    – pipe
    yesterday






  • 1




    $begingroup$
    I wouldn't twist SDA or SCL with GND because you don't want any capacitance between them. I would twist +12V with GND as you do want capacitance between them. What (return) current does the +12V have? (you might have ground bounce)
    $endgroup$
    – Huisman
    yesterday








  • 4




    $begingroup$
    GND is connected only at one cable end? Unless I am misunderstanding, that does not sound right.
    $endgroup$
    – mkeith
    yesterday






  • 1




    $begingroup$
    Did you mean UTP cable? I'm sure it can be used for more protocols than just FTP ;)
    $endgroup$
    – Andrew Morton
    22 hours ago
















8












$begingroup$


After some reading/testing I managed to make stable communication between 2 devices using I2C with FTP CAT5 copper twisted pair cable.




  • Green wire - SCL

  • White/green wire - GND

  • Blue wire - SDA

  • White/blue wire - GND


GND is connected only at one cable end, I2C bus clock is at 10Khz and I have used 10Kom pullup resistors to VCC



It works well and stable. When I decided to use other 2 pairs of the cable for power (+12V), it stopped working. I tested +12V on one pair GND on the other pair, also +12V/GND on same pair: same result, it stopped working. Whole I2C bus stopped working, other devices attached to it too.



Wonder if I can use same cable or go to safest choice - another cable for power.










share|improve this question









New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$








  • 3




    $begingroup$
    Did you check that the power on the receiving side is fine enough? No glitches, no droops... CAT5 cables are quite thin, that is why PoE uses >40 V for power.
    $endgroup$
    – Vladimir Cravero
    yesterday






  • 4




    $begingroup$
    This is where you need an oscilloscope. Everything else will be (educated) guesswork.
    $endgroup$
    – pipe
    yesterday






  • 1




    $begingroup$
    I wouldn't twist SDA or SCL with GND because you don't want any capacitance between them. I would twist +12V with GND as you do want capacitance between them. What (return) current does the +12V have? (you might have ground bounce)
    $endgroup$
    – Huisman
    yesterday








  • 4




    $begingroup$
    GND is connected only at one cable end? Unless I am misunderstanding, that does not sound right.
    $endgroup$
    – mkeith
    yesterday






  • 1




    $begingroup$
    Did you mean UTP cable? I'm sure it can be used for more protocols than just FTP ;)
    $endgroup$
    – Andrew Morton
    22 hours ago














8












8








8


4



$begingroup$


After some reading/testing I managed to make stable communication between 2 devices using I2C with FTP CAT5 copper twisted pair cable.




  • Green wire - SCL

  • White/green wire - GND

  • Blue wire - SDA

  • White/blue wire - GND


GND is connected only at one cable end, I2C bus clock is at 10Khz and I have used 10Kom pullup resistors to VCC



It works well and stable. When I decided to use other 2 pairs of the cable for power (+12V), it stopped working. I tested +12V on one pair GND on the other pair, also +12V/GND on same pair: same result, it stopped working. Whole I2C bus stopped working, other devices attached to it too.



Wonder if I can use same cable or go to safest choice - another cable for power.










share|improve this question









New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$




After some reading/testing I managed to make stable communication between 2 devices using I2C with FTP CAT5 copper twisted pair cable.




  • Green wire - SCL

  • White/green wire - GND

  • Blue wire - SDA

  • White/blue wire - GND


GND is connected only at one cable end, I2C bus clock is at 10Khz and I have used 10Kom pullup resistors to VCC



It works well and stable. When I decided to use other 2 pairs of the cable for power (+12V), it stopped working. I tested +12V on one pair GND on the other pair, also +12V/GND on same pair: same result, it stopped working. Whole I2C bus stopped working, other devices attached to it too.



Wonder if I can use same cable or go to safest choice - another cable for power.







power i2c






share|improve this question









New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited yesterday









Huisman

848111




848111






New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked yesterday









user3503519user3503519

412




412




New contributor




user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






user3503519 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








  • 3




    $begingroup$
    Did you check that the power on the receiving side is fine enough? No glitches, no droops... CAT5 cables are quite thin, that is why PoE uses >40 V for power.
    $endgroup$
    – Vladimir Cravero
    yesterday






  • 4




    $begingroup$
    This is where you need an oscilloscope. Everything else will be (educated) guesswork.
    $endgroup$
    – pipe
    yesterday






  • 1




    $begingroup$
    I wouldn't twist SDA or SCL with GND because you don't want any capacitance between them. I would twist +12V with GND as you do want capacitance between them. What (return) current does the +12V have? (you might have ground bounce)
    $endgroup$
    – Huisman
    yesterday








  • 4




    $begingroup$
    GND is connected only at one cable end? Unless I am misunderstanding, that does not sound right.
    $endgroup$
    – mkeith
    yesterday






  • 1




    $begingroup$
    Did you mean UTP cable? I'm sure it can be used for more protocols than just FTP ;)
    $endgroup$
    – Andrew Morton
    22 hours ago














  • 3




    $begingroup$
    Did you check that the power on the receiving side is fine enough? No glitches, no droops... CAT5 cables are quite thin, that is why PoE uses >40 V for power.
    $endgroup$
    – Vladimir Cravero
    yesterday






  • 4




    $begingroup$
    This is where you need an oscilloscope. Everything else will be (educated) guesswork.
    $endgroup$
    – pipe
    yesterday






  • 1




    $begingroup$
    I wouldn't twist SDA or SCL with GND because you don't want any capacitance between them. I would twist +12V with GND as you do want capacitance between them. What (return) current does the +12V have? (you might have ground bounce)
    $endgroup$
    – Huisman
    yesterday








  • 4




    $begingroup$
    GND is connected only at one cable end? Unless I am misunderstanding, that does not sound right.
    $endgroup$
    – mkeith
    yesterday






  • 1




    $begingroup$
    Did you mean UTP cable? I'm sure it can be used for more protocols than just FTP ;)
    $endgroup$
    – Andrew Morton
    22 hours ago








3




3




$begingroup$
Did you check that the power on the receiving side is fine enough? No glitches, no droops... CAT5 cables are quite thin, that is why PoE uses >40 V for power.
$endgroup$
– Vladimir Cravero
yesterday




$begingroup$
Did you check that the power on the receiving side is fine enough? No glitches, no droops... CAT5 cables are quite thin, that is why PoE uses >40 V for power.
$endgroup$
– Vladimir Cravero
yesterday




4




4




$begingroup$
This is where you need an oscilloscope. Everything else will be (educated) guesswork.
$endgroup$
– pipe
yesterday




$begingroup$
This is where you need an oscilloscope. Everything else will be (educated) guesswork.
$endgroup$
– pipe
yesterday




1




1




$begingroup$
I wouldn't twist SDA or SCL with GND because you don't want any capacitance between them. I would twist +12V with GND as you do want capacitance between them. What (return) current does the +12V have? (you might have ground bounce)
$endgroup$
– Huisman
yesterday






$begingroup$
I wouldn't twist SDA or SCL with GND because you don't want any capacitance between them. I would twist +12V with GND as you do want capacitance between them. What (return) current does the +12V have? (you might have ground bounce)
$endgroup$
– Huisman
yesterday






4




4




$begingroup$
GND is connected only at one cable end? Unless I am misunderstanding, that does not sound right.
$endgroup$
– mkeith
yesterday




$begingroup$
GND is connected only at one cable end? Unless I am misunderstanding, that does not sound right.
$endgroup$
– mkeith
yesterday




1




1




$begingroup$
Did you mean UTP cable? I'm sure it can be used for more protocols than just FTP ;)
$endgroup$
– Andrew Morton
22 hours ago




$begingroup$
Did you mean UTP cable? I'm sure it can be used for more protocols than just FTP ;)
$endgroup$
– Andrew Morton
22 hours ago










3 Answers
3






active

oldest

votes


















13












$begingroup$

Maybe overkill if it was working before, but an option is to use an I2C to Differential converter such as PCA9615, LTC4331, etc. If making the resistors smaller don't work or you need to extend the cable, consider not using I2C directly.



Not only the range will be extended but you will also have better noise immunity.



enter image description hereenter image description here






share|improve this answer









$endgroup$









  • 1




    $begingroup$
    Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
    $endgroup$
    – Jack Creasey
    20 hours ago










  • $begingroup$
    I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
    $endgroup$
    – Wesley Lee
    18 hours ago






  • 1




    $begingroup$
    @JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
    $endgroup$
    – Dmitry Grigoryev
    9 hours ago












  • $begingroup$
    @DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
    $endgroup$
    – Jack Creasey
    2 hours ago



















8












$begingroup$

As I noted in a comment, it's hard to debug without an oscilloscope trace, but the first thing that stands out from your question is the 10 kOhm pull-up resistor. This is unusually high for I2C, although it could easily work in many cases.



I would try to lower them to 1 kOhm first, to see if it will affect anything. If it helps, you can gradually make them higher, although doing so will impact your rise-time.






share|improve this answer











$endgroup$













  • $begingroup$
    10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
    $endgroup$
    – Huisman
    yesterday












  • $begingroup$
    @Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
    $endgroup$
    – pipe
    yesterday






  • 6




    $begingroup$
    10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
    $endgroup$
    – Jack Creasey
    yesterday






  • 1




    $begingroup$
    I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
    $endgroup$
    – 12431234123412341234123
    21 hours ago












  • $begingroup$
    I will try lower the resistors, that is all that make sence for me after all that comments.
    $endgroup$
    – user3503519
    1 hour ago



















4












$begingroup$

You absolutely need to drop your pullup resistors at long distances, and 10m is a long way and 10k Ohm is very high.



The value of the pullup resistor is related to three things:




  1. Cable capacitance

  2. Aiming voltage and Rx level sense.

  3. Speed


Try using any of the available calculators and start your reading here with the TI appnote on pullup values or here with the NXP I2C standard (7.1).



In terms of the problem you are having, it should be obvious that grounding additional pairs (12V,Gnd) in the cable will change the capacitance to the I2C signal wires.






share|improve this answer











$endgroup$









  • 2




    $begingroup$
    I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
    $endgroup$
    – Justme
    22 hours ago










  • $begingroup$
    Yes I gonna test with that, but my question is why it work if there is not power over that cable?
    $endgroup$
    – user3503519
    1 hour ago










  • $begingroup$
    A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
    $endgroup$
    – Jack Creasey
    56 mins ago











Your Answer





StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
});
});
}, "mathjax-editing");

StackExchange.ifUsing("editor", function () {
return StackExchange.using("schematics", function () {
StackExchange.schematics.init();
});
}, "cicuitlab");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "135"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});






user3503519 is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f428948%2fi2c-signal-and-power-over-long-range-10meter-cable%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























3 Answers
3






active

oldest

votes








3 Answers
3






active

oldest

votes









active

oldest

votes






active

oldest

votes









13












$begingroup$

Maybe overkill if it was working before, but an option is to use an I2C to Differential converter such as PCA9615, LTC4331, etc. If making the resistors smaller don't work or you need to extend the cable, consider not using I2C directly.



Not only the range will be extended but you will also have better noise immunity.



enter image description hereenter image description here






share|improve this answer









$endgroup$









  • 1




    $begingroup$
    Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
    $endgroup$
    – Jack Creasey
    20 hours ago










  • $begingroup$
    I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
    $endgroup$
    – Wesley Lee
    18 hours ago






  • 1




    $begingroup$
    @JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
    $endgroup$
    – Dmitry Grigoryev
    9 hours ago












  • $begingroup$
    @DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
    $endgroup$
    – Jack Creasey
    2 hours ago
















13












$begingroup$

Maybe overkill if it was working before, but an option is to use an I2C to Differential converter such as PCA9615, LTC4331, etc. If making the resistors smaller don't work or you need to extend the cable, consider not using I2C directly.



Not only the range will be extended but you will also have better noise immunity.



enter image description hereenter image description here






share|improve this answer









$endgroup$









  • 1




    $begingroup$
    Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
    $endgroup$
    – Jack Creasey
    20 hours ago










  • $begingroup$
    I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
    $endgroup$
    – Wesley Lee
    18 hours ago






  • 1




    $begingroup$
    @JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
    $endgroup$
    – Dmitry Grigoryev
    9 hours ago












  • $begingroup$
    @DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
    $endgroup$
    – Jack Creasey
    2 hours ago














13












13








13





$begingroup$

Maybe overkill if it was working before, but an option is to use an I2C to Differential converter such as PCA9615, LTC4331, etc. If making the resistors smaller don't work or you need to extend the cable, consider not using I2C directly.



Not only the range will be extended but you will also have better noise immunity.



enter image description hereenter image description here






share|improve this answer









$endgroup$



Maybe overkill if it was working before, but an option is to use an I2C to Differential converter such as PCA9615, LTC4331, etc. If making the resistors smaller don't work or you need to extend the cable, consider not using I2C directly.



Not only the range will be extended but you will also have better noise immunity.



enter image description hereenter image description here







share|improve this answer












share|improve this answer



share|improve this answer










answered yesterday









Wesley LeeWesley Lee

5,71652241




5,71652241








  • 1




    $begingroup$
    Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
    $endgroup$
    – Jack Creasey
    20 hours ago










  • $begingroup$
    I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
    $endgroup$
    – Wesley Lee
    18 hours ago






  • 1




    $begingroup$
    @JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
    $endgroup$
    – Dmitry Grigoryev
    9 hours ago












  • $begingroup$
    @DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
    $endgroup$
    – Jack Creasey
    2 hours ago














  • 1




    $begingroup$
    Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
    $endgroup$
    – Jack Creasey
    20 hours ago










  • $begingroup$
    I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
    $endgroup$
    – Wesley Lee
    18 hours ago






  • 1




    $begingroup$
    @JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
    $endgroup$
    – Dmitry Grigoryev
    9 hours ago












  • $begingroup$
    @DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
    $endgroup$
    – Jack Creasey
    2 hours ago








1




1




$begingroup$
Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
$endgroup$
– Jack Creasey
20 hours ago




$begingroup$
Great answer, this is exactly what should be done, but of course it may be a radical change for the OP.
$endgroup$
– Jack Creasey
20 hours ago












$begingroup$
I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
$endgroup$
– Wesley Lee
18 hours ago




$begingroup$
I mean, they are super easy to implement (if compared to moving to RS-485, CAN, etc), but yes compared to changing some resistors it is a radical change.
$endgroup$
– Wesley Lee
18 hours ago




1




1




$begingroup$
@JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
$endgroup$
– Dmitry Grigoryev
9 hours ago






$begingroup$
@JackCreasey OP's problem is not just cable capacitance, they seem to suffer from noise on 12V line they have added. Lowering pull-up resistors provides some extra noise immunity, but they can't keep lowering that resistance indefinitely.
$endgroup$
– Dmitry Grigoryev
9 hours ago














$begingroup$
@DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
$endgroup$
– Jack Creasey
2 hours ago




$begingroup$
@DmitryGrigoryev Since the OP gave no details I'm not sure how you could suggest that noise was being injected. I agree you can't just keep lowering the termination/pullup ….but the OP is too large by 10:1.
$endgroup$
– Jack Creasey
2 hours ago













8












$begingroup$

As I noted in a comment, it's hard to debug without an oscilloscope trace, but the first thing that stands out from your question is the 10 kOhm pull-up resistor. This is unusually high for I2C, although it could easily work in many cases.



I would try to lower them to 1 kOhm first, to see if it will affect anything. If it helps, you can gradually make them higher, although doing so will impact your rise-time.






share|improve this answer











$endgroup$













  • $begingroup$
    10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
    $endgroup$
    – Huisman
    yesterday












  • $begingroup$
    @Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
    $endgroup$
    – pipe
    yesterday






  • 6




    $begingroup$
    10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
    $endgroup$
    – Jack Creasey
    yesterday






  • 1




    $begingroup$
    I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
    $endgroup$
    – 12431234123412341234123
    21 hours ago












  • $begingroup$
    I will try lower the resistors, that is all that make sence for me after all that comments.
    $endgroup$
    – user3503519
    1 hour ago
















8












$begingroup$

As I noted in a comment, it's hard to debug without an oscilloscope trace, but the first thing that stands out from your question is the 10 kOhm pull-up resistor. This is unusually high for I2C, although it could easily work in many cases.



I would try to lower them to 1 kOhm first, to see if it will affect anything. If it helps, you can gradually make them higher, although doing so will impact your rise-time.






share|improve this answer











$endgroup$













  • $begingroup$
    10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
    $endgroup$
    – Huisman
    yesterday












  • $begingroup$
    @Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
    $endgroup$
    – pipe
    yesterday






  • 6




    $begingroup$
    10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
    $endgroup$
    – Jack Creasey
    yesterday






  • 1




    $begingroup$
    I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
    $endgroup$
    – 12431234123412341234123
    21 hours ago












  • $begingroup$
    I will try lower the resistors, that is all that make sence for me after all that comments.
    $endgroup$
    – user3503519
    1 hour ago














8












8








8





$begingroup$

As I noted in a comment, it's hard to debug without an oscilloscope trace, but the first thing that stands out from your question is the 10 kOhm pull-up resistor. This is unusually high for I2C, although it could easily work in many cases.



I would try to lower them to 1 kOhm first, to see if it will affect anything. If it helps, you can gradually make them higher, although doing so will impact your rise-time.






share|improve this answer











$endgroup$



As I noted in a comment, it's hard to debug without an oscilloscope trace, but the first thing that stands out from your question is the 10 kOhm pull-up resistor. This is unusually high for I2C, although it could easily work in many cases.



I would try to lower them to 1 kOhm first, to see if it will affect anything. If it helps, you can gradually make them higher, although doing so will impact your rise-time.







share|improve this answer














share|improve this answer



share|improve this answer








edited yesterday

























answered yesterday









pipepipe

10.3k42658




10.3k42658












  • $begingroup$
    10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
    $endgroup$
    – Huisman
    yesterday












  • $begingroup$
    @Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
    $endgroup$
    – pipe
    yesterday






  • 6




    $begingroup$
    10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
    $endgroup$
    – Jack Creasey
    yesterday






  • 1




    $begingroup$
    I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
    $endgroup$
    – 12431234123412341234123
    21 hours ago












  • $begingroup$
    I will try lower the resistors, that is all that make sence for me after all that comments.
    $endgroup$
    – user3503519
    1 hour ago


















  • $begingroup$
    10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
    $endgroup$
    – Huisman
    yesterday












  • $begingroup$
    @Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
    $endgroup$
    – pipe
    yesterday






  • 6




    $begingroup$
    10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
    $endgroup$
    – Jack Creasey
    yesterday






  • 1




    $begingroup$
    I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
    $endgroup$
    – 12431234123412341234123
    21 hours ago












  • $begingroup$
    I will try lower the resistors, that is all that make sence for me after all that comments.
    $endgroup$
    – user3503519
    1 hour ago
















$begingroup$
10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
$endgroup$
– Huisman
yesterday






$begingroup$
10 k$Omega$ isn't that big for an I2C bus on 10 kHz, though? (Or should it be 100 kHz OP?)
$endgroup$
– Huisman
yesterday














$begingroup$
@Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
$endgroup$
– pipe
yesterday




$begingroup$
@Huisman Two good points. 10 kOhm wouldn't worry me at 10 kHz on a normal PCB but maybe it's not enough over the cable. And 10 kHz is unusual but not crazy unusual I guess.
$endgroup$
– pipe
yesterday




6




6




$begingroup$
10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
$endgroup$
– Jack Creasey
yesterday




$begingroup$
10k Ohm is huge for I2C over any distance. That is the primary problem the OP has.
$endgroup$
– Jack Creasey
yesterday




1




1




$begingroup$
I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
$endgroup$
– 12431234123412341234123
21 hours ago






$begingroup$
I guess it is better to split the resistors and use one on each end. 2 pullup-resistors @4.7kΩ, one on each end, should be a better choice than a single 2.2kΩ pullup-resistors.
$endgroup$
– 12431234123412341234123
21 hours ago














$begingroup$
I will try lower the resistors, that is all that make sence for me after all that comments.
$endgroup$
– user3503519
1 hour ago




$begingroup$
I will try lower the resistors, that is all that make sence for me after all that comments.
$endgroup$
– user3503519
1 hour ago











4












$begingroup$

You absolutely need to drop your pullup resistors at long distances, and 10m is a long way and 10k Ohm is very high.



The value of the pullup resistor is related to three things:




  1. Cable capacitance

  2. Aiming voltage and Rx level sense.

  3. Speed


Try using any of the available calculators and start your reading here with the TI appnote on pullup values or here with the NXP I2C standard (7.1).



In terms of the problem you are having, it should be obvious that grounding additional pairs (12V,Gnd) in the cable will change the capacitance to the I2C signal wires.






share|improve this answer











$endgroup$









  • 2




    $begingroup$
    I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
    $endgroup$
    – Justme
    22 hours ago










  • $begingroup$
    Yes I gonna test with that, but my question is why it work if there is not power over that cable?
    $endgroup$
    – user3503519
    1 hour ago










  • $begingroup$
    A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
    $endgroup$
    – Jack Creasey
    56 mins ago
















4












$begingroup$

You absolutely need to drop your pullup resistors at long distances, and 10m is a long way and 10k Ohm is very high.



The value of the pullup resistor is related to three things:




  1. Cable capacitance

  2. Aiming voltage and Rx level sense.

  3. Speed


Try using any of the available calculators and start your reading here with the TI appnote on pullup values or here with the NXP I2C standard (7.1).



In terms of the problem you are having, it should be obvious that grounding additional pairs (12V,Gnd) in the cable will change the capacitance to the I2C signal wires.






share|improve this answer











$endgroup$









  • 2




    $begingroup$
    I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
    $endgroup$
    – Justme
    22 hours ago










  • $begingroup$
    Yes I gonna test with that, but my question is why it work if there is not power over that cable?
    $endgroup$
    – user3503519
    1 hour ago










  • $begingroup$
    A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
    $endgroup$
    – Jack Creasey
    56 mins ago














4












4








4





$begingroup$

You absolutely need to drop your pullup resistors at long distances, and 10m is a long way and 10k Ohm is very high.



The value of the pullup resistor is related to three things:




  1. Cable capacitance

  2. Aiming voltage and Rx level sense.

  3. Speed


Try using any of the available calculators and start your reading here with the TI appnote on pullup values or here with the NXP I2C standard (7.1).



In terms of the problem you are having, it should be obvious that grounding additional pairs (12V,Gnd) in the cable will change the capacitance to the I2C signal wires.






share|improve this answer











$endgroup$



You absolutely need to drop your pullup resistors at long distances, and 10m is a long way and 10k Ohm is very high.



The value of the pullup resistor is related to three things:




  1. Cable capacitance

  2. Aiming voltage and Rx level sense.

  3. Speed


Try using any of the available calculators and start your reading here with the TI appnote on pullup values or here with the NXP I2C standard (7.1).



In terms of the problem you are having, it should be obvious that grounding additional pairs (12V,Gnd) in the cable will change the capacitance to the I2C signal wires.







share|improve this answer














share|improve this answer



share|improve this answer








edited 21 hours ago

























answered yesterday









Jack CreaseyJack Creasey

14.9k2823




14.9k2823








  • 2




    $begingroup$
    I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
    $endgroup$
    – Justme
    22 hours ago










  • $begingroup$
    Yes I gonna test with that, but my question is why it work if there is not power over that cable?
    $endgroup$
    – user3503519
    1 hour ago










  • $begingroup$
    A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
    $endgroup$
    – Jack Creasey
    56 mins ago














  • 2




    $begingroup$
    I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
    $endgroup$
    – Justme
    22 hours ago










  • $begingroup$
    Yes I gonna test with that, but my question is why it work if there is not power over that cable?
    $endgroup$
    – user3503519
    1 hour ago










  • $begingroup$
    A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
    $endgroup$
    – Jack Creasey
    56 mins ago








2




2




$begingroup$
I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
$endgroup$
– Justme
22 hours ago




$begingroup$
I agree, CAT5 cable can be assumed to have about 50pF per meter so 10 meters exceed the 400pF capacitance limit of I2C specification. And reaching 400kHz I2C clock can't be achieved with 400pF capacitance by using the specified 3mA pull-up current from resistors. Fortunately, slowing speed down will help - unless the devices have a minimum clock speed limitation. We don't know what devices these are and what is the I2C bus voltages but indeed pullups should be adjusted to provide at least 3mA and if devices allow and agree on the bus low level voltage then even more.
$endgroup$
– Justme
22 hours ago












$begingroup$
Yes I gonna test with that, but my question is why it work if there is not power over that cable?
$endgroup$
– user3503519
1 hour ago




$begingroup$
Yes I gonna test with that, but my question is why it work if there is not power over that cable?
$endgroup$
– user3503519
1 hour ago












$begingroup$
A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
$endgroup$
– Jack Creasey
56 mins ago




$begingroup$
A floating cable pair does not have the same capacitance to your signal pair that it has when the cable is grounded. For your configuration both the +12 and the Gnd are essentially the same ….they have capacitance to the signal cable that impacts your risetime. .
$endgroup$
– Jack Creasey
56 mins ago










user3503519 is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















user3503519 is a new contributor. Be nice, and check out our Code of Conduct.













user3503519 is a new contributor. Be nice, and check out our Code of Conduct.












user3503519 is a new contributor. Be nice, and check out our Code of Conduct.
















Thanks for contributing an answer to Electrical Engineering Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f428948%2fi2c-signal-and-power-over-long-range-10meter-cable%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Færeyskur hestur Heimild | Tengill | Tilvísanir | LeiðsagnarvalRossið - síða um færeyska hrossið á færeyskuGott ár hjá færeyska hestinum

He _____ here since 1970 . Answer needed [closed]What does “since he was so high” mean?Meaning of “catch birds for”?How do I ensure “since” takes the meaning I want?“Who cares here” meaningWhat does “right round toward” mean?the time tense (had now been detected)What does the phrase “ring around the roses” mean here?Correct usage of “visited upon”Meaning of “foiled rail sabotage bid”It was the third time I had gone to Rome or It is the third time I had been to Rome

Slayer Innehåll Historia | Stil, komposition och lyrik | Bandets betydelse och framgångar | Sidoprojekt och samarbeten | Kontroverser | Medlemmar | Utmärkelser och nomineringar | Turnéer och festivaler | Diskografi | Referenser | Externa länkar | Navigeringsmenywww.slayer.net”Metal Massacre vol. 1””Metal Massacre vol. 3””Metal Massacre Volume III””Show No Mercy””Haunting the Chapel””Live Undead””Hell Awaits””Reign in Blood””Reign in Blood””Gold & Platinum – Reign in Blood””Golden Gods Awards Winners”originalet”Kerrang! Hall Of Fame””Slayer Looks Back On 37-Year Career In New Video Series: Part Two””South of Heaven””Gold & Platinum – South of Heaven””Seasons in the Abyss””Gold & Platinum - Seasons in the Abyss””Divine Intervention””Divine Intervention - Release group by Slayer””Gold & Platinum - Divine Intervention””Live Intrusion””Undisputed Attitude””Abolish Government/Superficial Love””Release “Slatanic Slaughter: A Tribute to Slayer” by Various Artists””Diabolus in Musica””Soundtrack to the Apocalypse””God Hates Us All””Systematic - Relationships””War at the Warfield””Gold & Platinum - War at the Warfield””Soundtrack to the Apocalypse””Gold & Platinum - Still Reigning””Metallica, Slayer, Iron Mauden Among Winners At Metal Hammer Awards””Eternal Pyre””Eternal Pyre - Slayer release group””Eternal Pyre””Metal Storm Awards 2006””Kerrang! Hall Of Fame””Slayer Wins 'Best Metal' Grammy Award””Slayer Guitarist Jeff Hanneman Dies””Bullet-For My Valentine booed at Metal Hammer Golden Gods Awards””Unholy Aliance””The End Of Slayer?””Slayer: We Could Thrash Out Two More Albums If We're Fast Enough...””'The Unholy Alliance: Chapter III' UK Dates Added”originalet”Megadeth And Slayer To Co-Headline 'Canadian Carnage' Trek”originalet”World Painted Blood””Release “World Painted Blood” by Slayer””Metallica Heading To Cinemas””Slayer, Megadeth To Join Forces For 'European Carnage' Tour - Dec. 18, 2010”originalet”Slayer's Hanneman Contracts Acute Infection; Band To Bring In Guest Guitarist””Cannibal Corpse's Pat O'Brien Will Step In As Slayer's Guest Guitarist”originalet”Slayer’s Jeff Hanneman Dead at 49””Dave Lombardo Says He Made Only $67,000 In 2011 While Touring With Slayer””Slayer: We Do Not Agree With Dave Lombardo's Substance Or Timeline Of Events””Slayer Welcomes Drummer Paul Bostaph Back To The Fold””Slayer Hope to Unveil Never-Before-Heard Jeff Hanneman Material on Next Album””Slayer Debut New Song 'Implode' During Surprise Golden Gods Appearance””Release group Repentless by Slayer””Repentless - Slayer - Credits””Slayer””Metal Storm Awards 2015””Slayer - to release comic book "Repentless #1"””Slayer To Release 'Repentless' 6.66" Vinyl Box Set””BREAKING NEWS: Slayer Announce Farewell Tour””Slayer Recruit Lamb of God, Anthrax, Behemoth + Testament for Final Tour””Slayer lägger ner efter 37 år””Slayer Announces Second North American Leg Of 'Final' Tour””Final World Tour””Slayer Announces Final European Tour With Lamb of God, Anthrax And Obituary””Slayer To Tour Europe With Lamb of God, Anthrax And Obituary””Slayer To Play 'Last French Show Ever' At Next Year's Hellfst””Slayer's Final World Tour Will Extend Into 2019””Death Angel's Rob Cavestany On Slayer's 'Farewell' Tour: 'Some Of Us Could See This Coming'””Testament Has No Plans To Retire Anytime Soon, Says Chuck Billy””Anthrax's Scott Ian On Slayer's 'Farewell' Tour Plans: 'I Was Surprised And I Wasn't Surprised'””Slayer””Slayer's Morbid Schlock””Review/Rock; For Slayer, the Mania Is the Message””Slayer - Biography””Slayer - Reign In Blood”originalet”Dave Lombardo””An exclusive oral history of Slayer”originalet”Exclusive! Interview With Slayer Guitarist Jeff Hanneman”originalet”Thinking Out Loud: Slayer's Kerry King on hair metal, Satan and being polite””Slayer Lyrics””Slayer - Biography””Most influential artists for extreme metal music””Slayer - Reign in Blood””Slayer guitarist Jeff Hanneman dies aged 49””Slatanic Slaughter: A Tribute to Slayer””Gateway to Hell: A Tribute to Slayer””Covered In Blood””Slayer: The Origins of Thrash in San Francisco, CA.””Why They Rule - #6 Slayer”originalet”Guitar World's 100 Greatest Heavy Metal Guitarists Of All Time”originalet”The fans have spoken: Slayer comes out on top in readers' polls”originalet”Tribute to Jeff Hanneman (1964-2013)””Lamb Of God Frontman: We Sound Like A Slayer Rip-Off””BEHEMOTH Frontman Pays Tribute To SLAYER's JEFF HANNEMAN””Slayer, Hatebreed Doing Double Duty On This Year's Ozzfest””System of a Down””Lacuna Coil’s Andrea Ferro Talks Influences, Skateboarding, Band Origins + More””Slayer - Reign in Blood””Into The Lungs of Hell””Slayer rules - en utställning om fans””Slayer and Their Fans Slashed Through a No-Holds-Barred Night at Gas Monkey””Home””Slayer””Gold & Platinum - The Big 4 Live from Sofia, Bulgaria””Exclusive! Interview With Slayer Guitarist Kerry King””2008-02-23: Wiltern, Los Angeles, CA, USA””Slayer's Kerry King To Perform With Megadeth Tonight! - Oct. 21, 2010”originalet”Dave Lombardo - Biography”Slayer Case DismissedArkiveradUltimate Classic Rock: Slayer guitarist Jeff Hanneman dead at 49.”Slayer: "We could never do any thing like Some Kind Of Monster..."””Cannibal Corpse'S Pat O'Brien Will Step In As Slayer'S Guest Guitarist | The Official Slayer Site”originalet”Slayer Wins 'Best Metal' Grammy Award””Slayer Guitarist Jeff Hanneman Dies””Kerrang! Awards 2006 Blog: Kerrang! Hall Of Fame””Kerrang! Awards 2013: Kerrang! Legend”originalet”Metallica, Slayer, Iron Maien Among Winners At Metal Hammer Awards””Metal Hammer Golden Gods Awards””Bullet For My Valentine Booed At Metal Hammer Golden Gods Awards””Metal Storm Awards 2006””Metal Storm Awards 2015””Slayer's Concert History””Slayer - Relationships””Slayer - Releases”Slayers officiella webbplatsSlayer på MusicBrainzOfficiell webbplatsSlayerSlayerr1373445760000 0001 1540 47353068615-5086262726cb13906545x(data)6033143kn20030215029