How to change slave addr of SI7005

Hi, all,

Is it possible to change the slave address of SI7005? Its default value is 0x40, I need use several SI7005 sensors to monitor humidity.

Regards,

You can't change the address but you could have a separate output going to each chips CS line. Then you have these all set HIGH except the one you want to read.

I didn’t know that I2C even had CS lines…

KenF: You can't change the address but you could have a separate output going to each chips CS line. Then you have these all set HIGH except the one you want to read.

The CS pin in the sensor I bought is connected to GND, so I could not select sensor with this way.

ardypro: The CS pin in the sensor I bought is connected to GND, so I could not select sensor with this way.

You mean hardwired to ground and you can't break the connection?

So use the other idea from the datasheet, if you can't disconnect /CS from ground, and power each sensor from a different i/o pin and switch them off and on individually.

edit....except I see it wants 2.1 to 3.6V.

ardypro: The CS pin in the sensor I bought is connected to GND, so I could not select sensor with this way.

And you don't have a soldering iron?

KenF: And you don't have a soldering iron?

:sunglasses:

I do not know its schematics of the module. Perhaps I may connect the Vdd pin of the sensor to a GPIO of Arduino, Arduino would power the sensor ON or OFF by set the pin HIGH or LOW, I will give it a try later.

ardypro: I do not know its schematics of the module. Perhaps I may connect the Vdd pin of the sensor to a GPIO of Arduino, Arduino would power the sensor ON or OFF by set the pin HIGH or LOW, I will give it a try later.

There is a dot on the corner where pin 1 is located. Pin numbers then follow in an anti-clockwise direction. Pin 15 is Chip Select. This needs to be 0v to enable or 3.3v to disable. A simple voltage divider on an output pin to gnd should do the trick, but you'll have to disconnect the CS from the gnd of the board that it's on.

ardypro: Perhaps I may connect the Vdd pin of the sensor to a GPIO of Arduino, Arduino would power the sensor ON or OFF by set the pin HIGH or LOW, I will give it a try later.

Double check the voltage requirement.... seems the sensor doesn't run at 5V.

KenF: There is a dot on the corner where pin 1 is located. Pin numbers then follow in an anti-clockwise direction. Pin 15 is Chip Select. This needs to be 0v to enable or 3.3v to disable. A simple voltage divider on an output pin to gnd should do the trick, but you'll have to disconnect the CS from the gnd of the board that it's on.

Thnak you, but I meant I did not know the module's schematics, perhaps it based on the schematic in the page 26 of SI7005 datasheet, http://www.silabs.com/Support%20Documents/TechnicalDocs/Si7005.pdf, there the CS pin was connected to GND directly.

JimboZA: Double check the voltage requirement.... seems the sensor doesn't run at 5V.

Thank you for your reminding, yes, the sensor runs at 3.6V max, the max current might be 40ma

Yeah you’ll need some way of bringing the voltage down from the 5V of an i/o pin to Vdd: maybe just a divider.

ardypro:
Thnak you, but I meant I did not know the module’s schematics, perhaps it based on the schematic in the page 26 of SI7005 datasheet, http://www.silabs.com/Support%20Documents/TechnicalDocs/Si7005.pdf, there the CS pin was connected to GND directly.

What if it is? You simply change the schematic to suit your new implementation.

usingCS.JPG

KenF:
What if it is? You simply change the schematic to suit your new implementation.

The module was bought on the local market, there is no CS on the PCB, but I have found another one with CS pin exposed.

SI7005-B-GM1.JPG

ardypro: The module was bought on the local market, there is no CS on the PCB

Then expose it yourself. It's pin 15 of the IC.