I’m new to dealing with electronics/hardware, and have an interest in building some meteorological stations that record temperature/humidty/moisture with a time stamp, each of the sensors run using I2C protocol. I’ve built these before with an EnviroDIY Mayfly datalogger. However this microcontroller had an I2C plug so it was pretty easy to wire my sensors together and plug into the provided I2C connector.
Now I’ve learned I can reduce the cost of the stations substantially by building just the individual components I need using a 3.3V Arduino Pro Mini build, so I’m exploring that. I know that in order to run I2C off this microcontroller, I’ll need to use pull-up resistors on the SDA and SCL lines, but I don’t really know enough about electronics to know what size resistor is needed. I’d like to know what size resistors are needed on the SDA and SCL lines, but I also would like some help generally understanding how to figure this out on my own in the future. I’ve seen some datasheets, but I don’t really know what values I’m looking for (average current consumption? idle current consumption?). And when I have these values I’m not so sure what to do with them… So I’ll list my setup as well.
Here is my setup, I plan on connecting 3 devices to the I2C bus
- Microcontroller: 3.3V Arduino Pro Mini (knockoff)
- Connected to a solar/lithium battery charger module
The I2C devices that will be connected include:
- One SHT31-D Temp/Humidity sensor (datasheet)
- One I2C Soil Moisture Sensor (link includes datasheet)
- One DS3231 Real Time Clock memory module (datasheet)
If it matters, I also plan to connect this SPI SD card reader (But I haven’t really looked into how to do that yet).
Any guidance on how to find these data sheets, what values to look for and how to calculate what size resistor is needed would be helpful! Thanks