Automation Hat reading Digital Temp/Hum Sensors


#1

Good day, I’m starting a little play project and just wondering if someone could confirm my thought or tell me if I’m heading in the wrong direction before I get to invested in the wrong sensors. I was looking at using the AM2302 Sensor with the Automation Hat. Does anyone know if it would be possible to read the temp/hum sensor output off of the Input1/2/3? Looks like Input 1 is BCM 26/GPIO Pin37, so I am assuming that utilizing Adafruits library, I should be able to read the sensor input off of Pin 37? If pulling a digital signal off of the input pins is not possible, does anyone know of a analog temp/hum sensor that has a low tolerance that can be used off of the ADC?

Thanks,
Aaron


#2

Can’t see why that wouldn’t work. Worst case is you could use BCM25 off the top rather than one of the buffered input.


#3

Thanks RogueM, I’ll pick these two up and give it a shot. If it comes down to needing to use the BCM25 pin off the breakout pin, that means I’m down to only using one 2302 sensor instead of 3. Is there a way to access the other unused GPIO pins? Also, does the automation hat come with the solder on pins for the break outs or do I need to pick those up separately?

Aaron


#4

No, only terminal connections are provided. You could access other unused gpio via the (mini) black HAT Hacker.

… if you are not in a hurry, and can ping me at the weekend, I can check for you whether it works - I’m away until then and don’t have my DHT22 with me (if it works with that one, I think it’s safe to assume it will work with the AM2302).


#5

note that you can also access BCM8-9-10-11 on the breakout too btw… I only singled out BCM25 as I had assumed you only needed one IO.


#6

RogueM, Super thanks! I think this is going to be the trick for my environmental control tests. Ordered both of these and will hopefully have them before this weekend!

Will update later this week. Thanks again!

Aaron


#7

for info, I finally got a chance to try a DHT11 off an input on the Automation HAT and it does not work, so I guess the buffer does get in the way.

Worked fine off bcm25, as well as the 4 GPIO on right hand side of the breakout, from top to bottom, bcm 9-10-11-8.


#8

RogueM,

Thanks for the input. I received both yesterday but haven’t gotten a chance to play with it.

As I’m relatively new to hardware hacking. I was just wondering if you could provide me some idea’s or examples of what could be done with the buffered input / output? The relay’s I’m familiar with. But like if I wanted to read a 3 wire 12 v fan speed rpm or control it’s speed depending the signal wire. Just looking at one sitting on the desk next to me and haven’t looked up the data sheet but I’m assuming I could get some type of data from the signal wire.

Martech model df0922512SELN.

Thanks,

Aaron


#9

The buffered input can be used for most things where you need to read a digital stable high or low… 1-wire is an odd beast because it uses specific timing to communicate back and forth with the device.

… unfortunately, for the same reason, I suspect the tachometric signal off a 3-wire fan probably would fail to be read too. I am no expert in the matter however.


#10

@RogueM Hi! Thank you for clearing this! :) How do I activate 9-10-11-8 to be usable with an DHT? I can use BCM 25 and that works. But I need two pins to work (have two DHT22:s). Do I have to enable BCM for these pins somewhere?

Best regards Snille


#11

you only need a single pin - the 1-wire interface supports up to 10 devices on the same bus (that can be overridden if necessary I believe).


#12

@RogueM I received my own sensors now (borrowed one before) and I actually got two AM2302 (I did not order them myself). And that seam to use a “digital” output, not the I2C… Or is there a way to get the AM2302 to speak I2C as well?

Oh, just read on the back of the Sensor, it do say “1 Wire” there. :) Maybe I just connect them to the same lin then? :)

Best regards Snille


#13

yes, exactly, then it is a question of probing the sensor you want via whatever method you are using (refer to documentation for the API used, hopefully it is explicit in this regards).