I have a CO2 sensor (SenseAir S8) that is onboard a CO2 measuring device (called upHere co2 meter). The device is only showing 0 as the CO2 level so I'd like to try and troubleshoot.
The S8 sensor supports UART communication. The protocol is a variant of MODBUS and is well documented. I made several attempts at using the AD2 to communicate with the device but was unsuccessful. Wondering if I can get some pointers at what I'm doing wrong. Here is what I tried.
When I powered up the S8 and hit "Receive" I got endless "noise" (even just by touching the AD2 leads when they are not connected to anything). Adding a 1uf capacitor between DIO6-7 and the AD2 ground and switching back and forth the polarity seems to quiet down the noise. I then tried to send "{hFE}{h04}{h00}{h03}{h00}{h01}{hD5}{hC5}" which is the co2 read request format (page 19 on protocol doc) but got only {hFF}{hFF} back. Same response for a status request "{hFE}{h04}{h00}{h00}{h00}{h01}{h25}{hC5}"
Question on bare-bone setup:
1. Is noise from touching the digital leads generating UART output expected? Is using the capacitors the right way of eliminating the noise?
2. The sensor protocol calls for 1 stop bit on receive and 2 stop bit on send, how can I configure that in the UART protocol settings?
3. Is {hEF}{h04}... the correct syntax for sending hex data in UART? didn't find that in the docs
(I also tried an inline setup using the AD2 in logic mode and have questions on that as well, but would rather not make this topic too large)
Question
altarace
I have a CO2 sensor (SenseAir S8) that is onboard a CO2 measuring device (called upHere co2 meter). The device is only showing 0 as the CO2 level so I'd like to try and troubleshoot.
The S8 sensor supports UART communication. The protocol is a variant of MODBUS and is well documented. I made several attempts at using the AD2 to communicate with the device but was unsuccessful. Wondering if I can get some pointers at what I'm doing wrong. Here is what I tried.
Setup 1 bare-bone:
4.7 v directly into the sensor G+ G0 pins.
Sensor TX connected to AD2 DIO6
Sensor RX connected to AD2 DIO7
AD2 in protocol mode, TX DIO7 , RX DIO6, 8Bit, 1 Stop Bit, 9600 Baud
When I powered up the S8 and hit "Receive" I got endless "noise" (even just by touching the AD2 leads when they are not connected to anything). Adding a 1uf capacitor between DIO6-7 and the AD2 ground and switching back and forth the polarity seems to quiet down the noise. I then tried to send "{hFE}{h04}{h00}{h03}{h00}{h01}{hD5}{hC5}" which is the co2 read request format (page 19 on protocol doc) but got only {hFF}{hFF} back. Same response for a status request "{hFE}{h04}{h00}{h00}{h00}{h01}{h25}{hC5}"
Question on bare-bone setup:
1. Is noise from touching the digital leads generating UART output expected? Is using the capacitors the right way of eliminating the noise?
2. The sensor protocol calls for 1 stop bit on receive and 2 stop bit on send, how can I configure that in the UART protocol settings?
3. Is {hEF}{h04}... the correct syntax for sending hex data in UART? didn't find that in the docs
(I also tried an inline setup using the AD2 in logic mode and have questions on that as well, but would rather not make this topic too large)
Thank you in advance.
References:
S8 Spec:http://www.senseair.com/wp-content/uploads/2012/06/PSP108-1.pdf
S8 Protocol Spec: http://www.warf.com/download/6337_6449_2.pdf
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Archived
This topic is now archived and is closed to further replies.