diff --git a/platformio.ini b/platformio.ini index c6fd1006..41287a9a 100644 --- a/platformio.ini +++ b/platformio.ini @@ -261,7 +261,9 @@ lib_ignore = iLabs Hearth [stm32_base] extends = arduino_base -platform = ststm32 +; RadioLib's pinned STM32WL HAL uses the Arduino 2.x GPIO API. STM32 platform +; 20 / Arduino 3 changes those signatures; keep release builds reproducible. +platform = ststm32@19.4.0 extra_scripts = post:arch/stm32/build_hex.py post:scripts/check_firmware_ram.py build_flags = ${arduino_base.build_flags} diff --git a/test/test_stm32_float_conversion.py b/test/test_stm32_float_conversion.py index ee3ff7d8..f8ab443b 100644 --- a/test/test_stm32_float_conversion.py +++ b/test/test_stm32_float_conversion.py @@ -1,6 +1,7 @@ #!/usr/bin/env python3 """Compile the real text helpers with STM32's utoa-only Arduino API.""" from pathlib import Path +import configparser import subprocess import tempfile import unittest @@ -9,6 +10,11 @@ ROOT = Path(__file__).resolve().parents[1] class Stm32FloatConversionTest(unittest.TestCase): + def test_stm32_platform_keeps_the_supported_radiolib_gpio_api(self): + config = configparser.ConfigParser(interpolation=None, strict=False) + config.read(ROOT / "platformio.ini") + self.assertEqual(config["stm32_base"]["platform"], "ststm32@19.4.0") + def test_signed_values_and_limits_without_ltoa(self): with tempfile.TemporaryDirectory() as directory: root = Path(directory)