diff --git a/client/cmdhfmfu.c b/client/cmdhfmfu.c
index a94d8767d..e24e3fad1 100644
--- a/client/cmdhfmfu.c
+++ b/client/cmdhfmfu.c
@@ -107,6 +107,7 @@ static int ul_send_cmd_raw( uint8_t *cmd, uint8_t cmdlen, uint8_t *response, uin
 	SendCommand(&c);
 	UsbCommand resp;
 	if (!WaitForResponseTimeout(CMD_ACK, &resp, 1500)) return -1;
+	if (!resp.arg[0] && responseLength) return -1;
 
 	uint16_t resplen = (resp.arg[0] < responseLength) ? resp.arg[0] : responseLength;
 	memcpy(response, resp.d.asBytes, resplen);