diff --git a/src/periph/fpga.cpp b/src/periph/fpga.cpp
index e1377d4ff838da07b31c64fafb7967873f7ef1a1..995129478e0046dd145b2ffa6958534fba042c14 100644
--- a/src/periph/fpga.cpp
+++ b/src/periph/fpga.cpp
@@ -1113,10 +1113,10 @@ bool Periph_fpga::write_fpga_weights(const char *data)
 
 bool Periph_fpga::write_sst_offload_weighted_subbands(const char *data)
 {
-    uint32_t *_ptr = (uint32_t *)data;
+    bool *_ptr = (bool *)data;
     uint32_t *reg = new uint32_t[1];
     reg[0] = 0;
-    if (_ptr[0] == 0) reg[0] = 1;
+    if (_ptr[0] == true) reg[0] = 1;
     bool retval = Write("mm/0/REG_DP_SELECTOR/0/input_select", reg);
     delete[] reg;
     return retval;