Add optional GPIO parameters to get_radio_for_board function

This commit is contained in:
Lloyd
2026-02-12 16:39:39 +00:00
parent 0465450dbf
commit f1a81e1732

View File

@@ -240,8 +240,6 @@ def get_radio_for_board(board_config: dict):
"bus_id": _parse_int(spi_config["bus_id"]),
"cs_id": _parse_int(spi_config["cs_id"]),
"cs_pin": _parse_int(spi_config["cs_pin"]),
"gpio_chip": _parse_int(spi_config.get("gpio_chip", 0), default=0),
"use_gpiod_backend": spi_config.get("use_gpiod_backend", False),
"reset_pin": _parse_int(spi_config["reset_pin"]),
"busy_pin": _parse_int(spi_config["busy_pin"]),
"irq_pin": _parse_int(spi_config["irq_pin"]),
@@ -262,6 +260,13 @@ def get_radio_for_board(board_config: dict):
"sync_word": radio_config["sync_word"],
}
# Add optional GPIO parameters if specified in config
# These wont be supported by older versions of pymc_core
if "gpio_chip" in spi_config:
combined_config["gpio_chip"] = _parse_int(spi_config["gpio_chip"], default=0)
if "use_gpiod_backend" in spi_config:
combined_config["use_gpiod_backend"] = spi_config["use_gpiod_backend"]
radio = SX1262Radio.get_instance(**combined_config)
if hasattr(radio, "_initialized") and not radio._initialized: