This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.

uHoo Indoor Air Quality monitor

I just received my uHoo Indoor Air Quality monitor (https://uhooair.com/). Is it possible to integrate this with Athom Homey? I would like to take action when there is a problem with the air quality (e.g. activate some extra ventilation).

Did some digging:

Nmap scan report for 192.168.160.54
Host is up (0.20s latency).
Not shown: 909 closed ports, 90 filtered ports
PORT   STATE SERVICE
80/tcp open  http
MAC Address: F0:C7:7F:XX:XX:XX (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 1591.01 seconds

On port 80, there is only a mysimplelink interface, and it looks like it is only available at boottime. Works with its own app on your smartphone, can't find anything about an API.

Any idea's if there are posibilities to integrate?

Comments

  • Sniff the network-traffic and see if there's detectable data-traffic?
  • Took some time to change my network layout, but now I have a device that can to tcpdump in the path of the traffic. First output:

        192.168.160.54.63328 > 89.101.251.228.53: [udp sum ok] 56465+ A? device.uhooinc.com. (36)
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [S], cksum 0xb3ff (correct), seq 3669363910, win 33580, options [mss 1460,nop,nop,nop,eol], length 0
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [S], cksum 0xb3ff (correct), seq 3669363910, win 33580, options [mss 1460,nop,nop,nop,eol], length 0
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [.], cksum 0xa02c (correct), seq 3669363911, ack 862194209, win 33580, length 0
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [.], cksum 0xa02c (correct), seq 0, ack 1, win 33580, length 0
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [P.], cksum 0x01ab (incorrect -> 0x00ab), seq 0:256, ack 41, win 33580, length 256
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [P.], cksum 0x01ab (incorrect -> 0x00ab), seq 0:256, ack 41, win 33580, length 256
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [P.], cksum 0x01ab (incorrect -> 0x00ab), seq 0:256, ack 41, win 33580, length 256
        192.168.160.54.53917 > 52.220.222.13.8466: Flags [P.], cksum 0x01ab (incorrect -> 0x00ab), seq 0:256, ack 41, win 33580, length 256

    I'll try to get full packet captures, to see if there is readable data in it.
  • Unfortunately, I am afraid that won't help. A 256 bytes payload othat doesn't make sense..... :(

    Frame 13: 314 bytes on wire (2512 bits), 314 bytes captured (2512 bits)
        Encapsulation type: Ethernet (1)
        Arrival Time: Sep 10, 2017 17:08:26.081994000 W. Europe Daylight Time
        [Time shift for this packet: 0.000000000 seconds]
        Epoch Time: 1505056106.081994000 seconds
        [Time delta from previous captured frame: 0.125394000 seconds]
        [Time delta from previous displayed frame: 0.125394000 seconds]
        [Time since reference or first frame: 1.143094000 seconds]
        Frame Number: 13
        Frame Length: 314 bytes (2512 bits)
        Capture Length: 314 bytes (2512 bits)
        [Frame is marked: False]
        [Frame is ignored: False]
        [Protocols in frame: eth:ethertype:vlan:ethertype:ip:tcp:data]
        [Coloring Rule Name: TCP]
        [Coloring Rule String: tcp]
    Ethernet II, Src: TexasIns_xx:xx:xx (f0:c7:7f:xx:xx:xx), Dst: Ubiquiti_xx:xx:xx (f0:9f:c2:xx:xx:xx)
        Destination: Ubiquiti_xx:xx:xx (f0:9f:c2:xx:xx:xx)
            Address: Ubiquiti_xx:xx:xx (f0:9f:c2:xx:xx:xx)
            .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
            .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
        Source: TexasIns_xx:xx:xx (f0:c7:7f:xx:xx:xx)
            Address: TexasIns_xx:xx:xx (f0:c7:7f:xx:xx:xx)
            .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
            .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
        Type: 802.1Q Virtual LAN (0x8100)
    802.1Q Virtual LAN, PRI: 0, DEI: 0, ID: 122
        000. .... .... .... = Priority: Best Effort (default) (0)
        ...0 .... .... .... = DEI: Ineligible
        .... 0000 0111 1010 = ID: 122
        Type: IPv4 (0x0800)
    Internet Protocol Version 4, Src: 172.28.122.105, Dst: 52.220.222.13
        0100 .... = Version: 4
        .... 0101 = Header Length: 20 bytes (5)
        Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
            0000 00.. = Differentiated Services Codepoint: Default (0)
            .... ..00 = Explicit Congestion Notification: Not ECN-Capable Transport (0)
        Total Length: 296
        Identification: 0x000e (14)
        Flags: 0x00
            0... .... = Reserved bit: Not set
            .0.. .... = Don't fragment: Not set
            ..0. .... = More fragments: Not set
        Fragment offset: 0
        Time to live: 128
        Protocol: TCP (6)
        Header checksum: 0x0053 [validation disabled]
        [Header checksum status: Unverified]
        Source: 172.28.122.105
        Destination: 52.220.222.13
        [Source GeoIP: Unknown]
        [Destination GeoIP: Unknown]
    Transmission Control Protocol, Src Port: 57908, Dst Port: 8466, Seq: 1, Ack: 41, Len: 256
        Source Port: 57908
        Destination Port: 8466
        [Stream index: 0]
        [TCP Segment Len: 256]
        Sequence number: 1    (relative sequence number)
        [Next sequence number: 257    (relative sequence number)]
        Acknowledgment number: 41    (relative ack number)
        0101 .... = Header Length: 20 bytes (5)
        Flags: 0x018 (PSH, ACK)
            000. .... .... = Reserved: Not set
            ...0 .... .... = Nonce: Not set
            .... 0... .... = Congestion Window Reduced (CWR): Not set
            .... .0.. .... = ECN-Echo: Not set
            .... ..0. .... = Urgent: Not set
            .... ...1 .... = Acknowledgment: Set
            .... .... 1... = Push: Set
            .... .... .0.. = Reset: Not set
            .... .... ..0. = Syn: Not set
            .... .... ...0 = Fin: Not set
            [TCP Flags: ·······AP···]
        Window size value: 33580
        [Calculated window size: 33580]
        [Window size scaling factor: -2 (no window scaling used)]
        Checksum: 0x8b02 [unverified]
        [Checksum Status: Unverified]
        Urgent pointer: 0
        [SEQ/ACK analysis]
            [iRTT: 0.148269000 seconds]
            [Bytes in flight: 257]
            [Bytes sent since last PSH flag: 256]
        TCP payload (256 bytes)
    Data (256 bytes)
        Data: xxxxxxxxxxxxxxxxxxxxx...
        [Length: 256]

    I can you send the content of the payload if you want to analyse, but I wont't be posting it on a public forum because I don't know what the content means.
  • rayyessrayyess Unconfirmed
    Hey guys,

    Thought you may find this useful. It is really a exhaustive list of things you can do to improve the quality of air in your home, and you just may find some useful information on it.

    Improve home air quality

  • gruijter_devgruijter_dev Member
    edited July 2018
    In using the xiaomi pm2.5 (around 50 € in China). And it works good with the athom xiaomi app:
    https://apps.athom.com/app/com.xiaomi-miio

    First setup is a bit of a hassle, since it only works if you set your xiaomi account to Chinese. (And im sure they keep track of my homes airquality from china?)
Sign In or Register to comment.