diff --git a/stm-firmware/include/reflow-controller/temp-profile/temp-profile-parser.h b/stm-firmware/include/reflow-controller/temp-profile/temp-profile-parser.h index f05d3c9..799ffc8 100644 --- a/stm-firmware/include/reflow-controller/temp-profile/temp-profile-parser.h +++ b/stm-firmware/include/reflow-controller/temp-profile/temp-profile-parser.h @@ -41,6 +41,9 @@ enum pl_command_type { PL_LOUDSPEAKER_SET, /**< @brief Set the loudspeaker/beeper */ PL_OFF, /**< @brief Disable the temperature output and shutdown the PID controller */ PL_CLEAR_FLAGS, /**< @brief Try clear all flags */ + PL_DIGIO_CONF, /**< @brief Configure a DIGIO pin */ + PL_DIGIO_SET, /**< @brief Set a DIGIO pin */ + PL_DIGIO_WAIT, /**< @brief Wait until a DIGIO pin is set to the specified level */ _PL_NUM_CMDS, /**< @brief Sentinel to determine the total amount of commands */ }; diff --git a/stm-firmware/temp-profile/temp-profile-executer.c b/stm-firmware/temp-profile/temp-profile-executer.c index f9b8fd8..2ee1170 100644 --- a/stm-firmware/temp-profile/temp-profile-executer.c +++ b/stm-firmware/temp-profile/temp-profile-executer.c @@ -250,6 +250,15 @@ int temp_profile_executer_handle(void) cmd_ack_flags(); advance = true; break; + case PL_DIGIO_CONF: + advance = true; + break; + case PL_DIGIO_SET: + advance = true; + break; + case PL_DIGIO_WAIT: + advance = true; + break; default: tpe_abort(); advance = true; diff --git a/stm-firmware/temp-profile/temp-profile-parser.c b/stm-firmware/temp-profile/temp-profile-parser.c index a87e9b2..a48def7 100644 --- a/stm-firmware/temp-profile/temp-profile-parser.c +++ b/stm-firmware/temp-profile/temp-profile-parser.c @@ -48,6 +48,9 @@ static const struct pl_command_list_map cmd_list_map[_PL_NUM_CMDS] = { {PL_LOUDSPEAKER_SET, "beep", 1u}, {PL_OFF, "temp_off", 0u}, {PL_CLEAR_FLAGS, "clear_flags", 0u}, + {PL_DIGIO_CONF, "digio_conf", 2u}, + {PL_DIGIO_SET, "digio_set", 2u}, + {PL_DIGIO_WAIT, "digio_wait", 2u}, }; /**