mirror of https://github.com/home-assistant/core
335 lines
10 KiB
Python
335 lines
10 KiB
Python
"""Constants for 1-Wire integration."""
|
|
|
|
from pyownet.protocol import ProtocolError
|
|
|
|
from homeassistant.components.onewire.const import Platform
|
|
|
|
ATTR_DEVICE_FILE = "device_file"
|
|
ATTR_INJECT_READS = "inject_reads"
|
|
|
|
|
|
MOCK_OWPROXY_DEVICES = {
|
|
"00.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"", # read device type
|
|
],
|
|
},
|
|
"05.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2405", # read device type
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
],
|
|
},
|
|
"10.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS18S20", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 25.123"},
|
|
],
|
|
},
|
|
"12.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2406", # read device type
|
|
],
|
|
Platform.BINARY_SENSOR: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 25.123"},
|
|
{ATTR_INJECT_READS: b" 1025.123"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
],
|
|
},
|
|
"1D.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2423", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 251123"},
|
|
{ATTR_INJECT_READS: b" 248125"},
|
|
],
|
|
},
|
|
"16.111111111111": {
|
|
# Test case for issue #115984, where the device type cannot be read
|
|
ATTR_INJECT_READS: [
|
|
ProtocolError(), # read device type
|
|
],
|
|
},
|
|
"1F.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2409", # read device type
|
|
],
|
|
"branches": {
|
|
"aux": {},
|
|
"main": {
|
|
"1D.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2423", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{
|
|
ATTR_DEVICE_FILE: "/1F.111111111111/main/1D.111111111111/counter.A",
|
|
ATTR_INJECT_READS: b" 251123",
|
|
},
|
|
{
|
|
ATTR_DEVICE_FILE: "/1F.111111111111/main/1D.111111111111/counter.B",
|
|
ATTR_INJECT_READS: b" 248125",
|
|
},
|
|
],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
"22.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS1822", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{
|
|
ATTR_INJECT_READS: ProtocolError,
|
|
},
|
|
],
|
|
},
|
|
"26.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2438", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 25.123"},
|
|
{ATTR_INJECT_READS: b" 72.7563"},
|
|
{ATTR_INJECT_READS: b" 73.7563"},
|
|
{ATTR_INJECT_READS: b" 74.7563"},
|
|
{ATTR_INJECT_READS: b" 75.7563"},
|
|
{
|
|
ATTR_INJECT_READS: ProtocolError,
|
|
},
|
|
{ATTR_INJECT_READS: b" 969.265"},
|
|
{ATTR_INJECT_READS: b" 65.8839"},
|
|
{ATTR_INJECT_READS: b" 2.97"},
|
|
{ATTR_INJECT_READS: b" 4.74"},
|
|
{ATTR_INJECT_READS: b" 0.12"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
],
|
|
},
|
|
"28.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS18B20", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 26.984"},
|
|
],
|
|
},
|
|
"28.222222222222": {
|
|
# This device has precision options in the config entry
|
|
ATTR_INJECT_READS: [
|
|
b"DS18B20", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{
|
|
ATTR_DEVICE_FILE: "/28.222222222222/temperature9",
|
|
ATTR_INJECT_READS: b" 26.984",
|
|
},
|
|
],
|
|
},
|
|
"28.222222222223": {
|
|
# This device has an illegal precision option in the config entry
|
|
ATTR_INJECT_READS: [
|
|
b"DS18B20", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{
|
|
ATTR_DEVICE_FILE: "/28.222222222223/temperature",
|
|
ATTR_INJECT_READS: b" 26.984",
|
|
},
|
|
],
|
|
},
|
|
"29.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2408", # read device type
|
|
],
|
|
Platform.BINARY_SENSOR: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{
|
|
ATTR_INJECT_READS: ProtocolError,
|
|
},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{
|
|
ATTR_INJECT_READS: ProtocolError,
|
|
},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
],
|
|
},
|
|
"30.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2760", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 26.984"},
|
|
{
|
|
ATTR_DEVICE_FILE: "/30.111111111111/typeK/temperature",
|
|
ATTR_INJECT_READS: b" 173.7563",
|
|
},
|
|
{ATTR_INJECT_READS: b" 2.97"},
|
|
{ATTR_INJECT_READS: b" 0.12"},
|
|
],
|
|
},
|
|
"3A.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2413", # read device type
|
|
],
|
|
Platform.BINARY_SENSOR: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
{ATTR_INJECT_READS: b" 0"},
|
|
],
|
|
},
|
|
"3B.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS1825", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 28.243"},
|
|
],
|
|
},
|
|
"42.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS28EA00", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 29.123"},
|
|
],
|
|
},
|
|
"A6.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"DS2438", # read device type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 25.123"},
|
|
{ATTR_INJECT_READS: b" 72.7563"},
|
|
{ATTR_INJECT_READS: b" 73.7563"},
|
|
{ATTR_INJECT_READS: b" 74.7563"},
|
|
{ATTR_INJECT_READS: b" 75.7563"},
|
|
{
|
|
ATTR_INJECT_READS: ProtocolError,
|
|
},
|
|
{ATTR_INJECT_READS: b" 969.265"},
|
|
{ATTR_INJECT_READS: b" 65.8839"},
|
|
{ATTR_INJECT_READS: b" 2.97"},
|
|
{ATTR_INJECT_READS: b" 4.74"},
|
|
{ATTR_INJECT_READS: b" 0.12"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b" 1"},
|
|
],
|
|
},
|
|
"EF.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"HobbyBoards_EF", # read type
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 67.745"},
|
|
{ATTR_INJECT_READS: b" 65.541"},
|
|
{ATTR_INJECT_READS: b" 25.123"},
|
|
],
|
|
},
|
|
"EF.111111111112": {
|
|
ATTR_INJECT_READS: [
|
|
b"HB_MOISTURE_METER", # read type
|
|
b" 1", # read is_leaf_0
|
|
b" 1", # read is_leaf_1
|
|
b" 0", # read is_leaf_2
|
|
b" 0", # read is_leaf_3
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 41.745"},
|
|
{ATTR_INJECT_READS: b" 42.541"},
|
|
{ATTR_INJECT_READS: b" 43.123"},
|
|
{ATTR_INJECT_READS: b" 44.123"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
],
|
|
},
|
|
"EF.111111111113": {
|
|
ATTR_INJECT_READS: [
|
|
b"HB_HUB", # read type
|
|
],
|
|
Platform.BINARY_SENSOR: [
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
],
|
|
Platform.SWITCH: [
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
{ATTR_INJECT_READS: b"1"},
|
|
{ATTR_INJECT_READS: b"0"},
|
|
],
|
|
},
|
|
"7E.111111111111": {
|
|
ATTR_INJECT_READS: [
|
|
b"EDS", # read type
|
|
b"EDS0068", # read device_type - note EDS specific
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 13.9375"},
|
|
{ATTR_INJECT_READS: b" 1012.21"},
|
|
{ATTR_INJECT_READS: b" 65.8839"},
|
|
{ATTR_INJECT_READS: b" 41.375"},
|
|
],
|
|
},
|
|
"7E.222222222222": {
|
|
ATTR_INJECT_READS: [
|
|
b"EDS", # read type
|
|
b"EDS0066", # read device_type - note EDS specific
|
|
],
|
|
Platform.SENSOR: [
|
|
{ATTR_INJECT_READS: b" 13.9375"},
|
|
{ATTR_INJECT_READS: b" 1012.21"},
|
|
],
|
|
},
|
|
}
|