From 6f876d0fc92e25e4df2b38b418a05f4db5f14019 Mon Sep 17 00:00:00 2001 From: zrezke Date: Mon, 10 Jul 2023 13:24:16 +0200 Subject: [PATCH 1/2] Disable GPIO pull when Pin.PULL_NONE --- firmware/source/interfaces/Gpio.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/firmware/source/interfaces/Gpio.cpp b/firmware/source/interfaces/Gpio.cpp index 5d5a997..2d39441 100644 --- a/firmware/source/interfaces/Gpio.cpp +++ b/firmware/source/interfaces/Gpio.cpp @@ -130,6 +130,8 @@ CmdStatus Gpio::initPin(uint8_t const *cmd) { gpio_pull_up(gp); } else if(dir == GPIO_IN && cmd[3] == 2) { gpio_pull_down(gp); + } else { + gpio_disable_pulls(gp); } //a voir gpio_set_outover(gpio, GPIO_OVERRIDE_INVERT); return CmdStatus::OK; From 26c5b5a58ac141fcd0f6c29de775f20fc6896e69 Mon Sep 17 00:00:00 2001 From: zrezke Date: Mon, 10 Jul 2023 13:26:49 +0200 Subject: [PATCH 2/2] Require input pin when disabling gpio pull --- firmware/source/interfaces/Gpio.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/firmware/source/interfaces/Gpio.cpp b/firmware/source/interfaces/Gpio.cpp index 2d39441..030d3f5 100644 --- a/firmware/source/interfaces/Gpio.cpp +++ b/firmware/source/interfaces/Gpio.cpp @@ -130,7 +130,7 @@ CmdStatus Gpio::initPin(uint8_t const *cmd) { gpio_pull_up(gp); } else if(dir == GPIO_IN && cmd[3] == 2) { gpio_pull_down(gp); - } else { + } else if (dir == GPIO_IN) { gpio_disable_pulls(gp); } //a voir gpio_set_outover(gpio, GPIO_OVERRIDE_INVERT);