mirror of
https://github.com/esphome/esphome.git
synced 2025-03-20 17:48:17 +00:00
91 lines
1.9 KiB
Python
91 lines
1.9 KiB
Python
|
from dataclasses import dataclass
|
||
|
from typing import Callable
|
||
|
|
||
|
import esphome.codegen as cg
|
||
|
|
||
|
|
||
|
@dataclass
|
||
|
class LibreTinyComponent:
|
||
|
name: str
|
||
|
boards: dict[str, dict[str, str]]
|
||
|
board_pins: dict[str, dict[str, int]]
|
||
|
pin_validation: Callable[[int], int]
|
||
|
usage_validation: Callable[[dict], dict]
|
||
|
|
||
|
|
||
|
CONF_LIBRETINY = "libretiny"
|
||
|
CONF_LOGLEVEL = "loglevel"
|
||
|
CONF_SDK_SILENT = "sdk_silent"
|
||
|
CONF_GPIO_RECOVER = "gpio_recover"
|
||
|
CONF_UART_PORT = "uart_port"
|
||
|
|
||
|
LT_LOGLEVELS = [
|
||
|
"VERBOSE",
|
||
|
"TRACE",
|
||
|
"DEBUG",
|
||
|
"INFO",
|
||
|
"WARN",
|
||
|
"ERROR",
|
||
|
"FATAL",
|
||
|
"NONE",
|
||
|
]
|
||
|
|
||
|
LT_DEBUG_MODULES = [
|
||
|
"WIFI",
|
||
|
"CLIENT",
|
||
|
"SERVER",
|
||
|
"SSL",
|
||
|
"OTA",
|
||
|
"FDB",
|
||
|
"MDNS",
|
||
|
"LWIP",
|
||
|
"LWIP_ASSERT",
|
||
|
]
|
||
|
|
||
|
KEY_LIBRETINY = "libretiny"
|
||
|
KEY_BOARD = "board"
|
||
|
KEY_COMPONENT = "component"
|
||
|
KEY_COMPONENT_DATA = "component_data"
|
||
|
KEY_FAMILY = "family"
|
||
|
|
||
|
# COMPONENTS - auto-generated! Do not modify this block.
|
||
|
COMPONENT_BK72XX = "bk72xx"
|
||
|
COMPONENT_RTL87XX = "rtl87xx"
|
||
|
# COMPONENTS - end
|
||
|
|
||
|
# FAMILIES - auto-generated! Do not modify this block.
|
||
|
FAMILY_BK7231N = "BK7231N"
|
||
|
FAMILY_BK7231Q = "BK7231Q"
|
||
|
FAMILY_BK7231T = "BK7231T"
|
||
|
FAMILY_BK7251 = "BK7251"
|
||
|
FAMILY_RTL8710B = "RTL8710B"
|
||
|
FAMILY_RTL8720C = "RTL8720C"
|
||
|
FAMILIES = [
|
||
|
FAMILY_BK7231N,
|
||
|
FAMILY_BK7231Q,
|
||
|
FAMILY_BK7231T,
|
||
|
FAMILY_BK7251,
|
||
|
FAMILY_RTL8710B,
|
||
|
FAMILY_RTL8720C,
|
||
|
]
|
||
|
FAMILY_FRIENDLY = {
|
||
|
FAMILY_BK7231N: "BK7231N",
|
||
|
FAMILY_BK7231Q: "BK7231Q",
|
||
|
FAMILY_BK7231T: "BK7231T",
|
||
|
FAMILY_BK7251: "BK7251",
|
||
|
FAMILY_RTL8710B: "RTL8710B",
|
||
|
FAMILY_RTL8720C: "RTL8720C",
|
||
|
}
|
||
|
FAMILY_COMPONENT = {
|
||
|
FAMILY_BK7231N: COMPONENT_BK72XX,
|
||
|
FAMILY_BK7231Q: COMPONENT_BK72XX,
|
||
|
FAMILY_BK7231T: COMPONENT_BK72XX,
|
||
|
FAMILY_BK7251: COMPONENT_BK72XX,
|
||
|
FAMILY_RTL8710B: COMPONENT_RTL87XX,
|
||
|
FAMILY_RTL8720C: COMPONENT_RTL87XX,
|
||
|
}
|
||
|
# FAMILIES - end
|
||
|
|
||
|
libretiny_ns = cg.esphome_ns.namespace("libretiny")
|
||
|
LTComponent = libretiny_ns.class_("LTComponent", cg.PollingComponent)
|