Currently I'm using the I2C bus on a MEGA for a 4 line LCD and am wondering if the I2C bus can also be used for a SHT30 Humidity/Temp device if the proper libraries are installed. Are there any special considerations I should be aware of ?
Normally, no. Make sure you have the right number/value of pull up resistors.
Yes... that's the whole point of I2C. You can have multiple devices on the same bus each with their own unique address. The only limitation is that they must have unique addresses. Not likely an issue in your case - default for SHT30 is 0x45 and for the display usually 0x27 or 0x3F.
Normally no, meaning you can't use two devices or Normally no it is not a problem?
I guess you haven't taken any time to read about I2C. Or reply #3, but I'll give you the benefit of the doubt and assume that the forum software was sluggish in posting it.
I had read a post concerning the SHT30 and that they had been having problems using multiple sensors but this is not my issue at the moment. How does one determine the correct amount of pull-up resistance when using multiple devices?
Measure the short circuit currents from SCL and SDA to GND. If one exceeds 3 mA then remove excess pullup resistors.
Probably because they have a fixed bus address. Each device on the I2C bus must have a unique address.
Not an issue but I believe the default address for the SHT30 is 0x44. I'm wondering if there is a better way to monitor Humidity/Temp. It looks like I might be close to the limit of the I2C bus with Cat5 at 9.6k. Maybe 30-35ft
Arduino MEGA Board contains 2x10k pull-up resistors on the I2C Bus (Fig-1 extracted from MEGA's schematic):
Figure-1:
Best way to check is using an I2C scanner sketch like this one...
https://playground.arduino.cc/Main/I2cScanner/
If you are getting issues try adding pull-ups... I normally use 4.7k... but it really depends what else is on the bus and what other pull-ups are present.
That may be an issue.. I2C isn't really designed for that kind of distance. This thread might be useful...
What is the lower limit of this current?
The address could be either 0x44 or 0x45 depending on the state of the resistor as said in the following excerpt:
This sounds like the SHT30 depending on how they configured it's supporting configuration would allow 0x44 or 0x45. With the I2c sniffer it shows 0x44 in my case.
I'm reading between GND and either I2c clock or data pins on the MEGA .16 ma with no devices connected which makes me believe this MEGA is not using 10K pull-ups. The current is more (.46ma) when connected through the SHT30. (Pins 20 or 21 when connected to the SHT30 clock or data line). Is there enough pull-up?
Try some.
The official schematic of MEGA (Fig-1) shows that there are 2x10k pull-up resistors with I2C Bus. Then the sink current appears to be 0.5 mA (5V/10k). The best way is to connect your sensor with MEGA and then check that yo can acquire reasonable value from the senor.
Figure-1:
It does work fine when close to the MEGA and fine with another sensor connected to an UNO at about 2 yards. I have not tried further out with the MEGA. I was hoping to use another H/T sensor at another MEGA location in my home but extended out 30ft. The main coms through the home are RS485. I'm sure there is a RS485 H/T sensor arrangement out there. Just trying to utilized existing Arduino devices already installed and not install Arduino in difficult locations to access.
As per post #12 ... I2C is not the appropriate communication method to use. Did you read the other thread?
I did read the post and see limitations for I2c and this is why I generally ask a few questions up front. Maybe 10 meters at 9.6k which is actually about what I need. Speed is not an issue. After that SPI or RS485. I'm only trying to simplify and connect to the SHT30 sensors I've been using. This stuff seems to grow exponentially as I continue to automate. Last week I finished automating two skylights with auto shades. I used steppers and Uno's for the job, all tied into the main controller via RS485. I like hard wire. I'm now trying to better monitor and control humidity in the home with better sensor locations.