diff --git a/master/fsm_sii.c b/master/fsm_sii.c
index 7843a24562156518e90be2a62f0e3d96590a87c9..f1f9d9239f2d45a602e916f562a0ccc29110839f 100644
--- a/master/fsm_sii.c
+++ b/master/fsm_sii.c
@@ -277,7 +277,8 @@ void ec_fsm_sii_state_read_fetch(
 #endif
 
     if (EC_READ_U8(datagram->data + 1) & 0x20) {
-        EC_SLAVE_ERR(fsm->slave, "SII: Error on last SII command!\n");
+        EC_SLAVE_ERR(fsm->slave, "Error on last command while"
+                " reading from SII word 0x%04x.\n", fsm->word_offset);
         fsm->state = ec_fsm_sii_state_error;
         return;
     }
diff --git a/master/fsm_slave_scan.c b/master/fsm_slave_scan.c
index 460a1336e08e61c923d3f464eed0a2b118f9a978..c5aac8a393ee3e112f72a499c7df7ce79c7d82a1 100644
--- a/master/fsm_slave_scan.c
+++ b/master/fsm_slave_scan.c
@@ -498,12 +498,14 @@ void ec_fsm_slave_scan_state_sii_size(ec_fsm_slave_scan_t *fsm /**< slave state
     ec_slave_t *slave = fsm->slave;
     uint16_t cat_type, cat_size;
 
-    if (ec_fsm_sii_exec(&fsm->fsm_sii)) return;
+    if (ec_fsm_sii_exec(&fsm->fsm_sii))
+        return;
 
     if (!ec_fsm_sii_success(&fsm->fsm_sii)) {
         fsm->slave->error_flag = 1;
         fsm->state = ec_fsm_slave_scan_state_error;
-        EC_SLAVE_ERR(slave, "Failed to read SII size.\n");
+        EC_SLAVE_ERR(slave, "Failed to determine SII content size:"
+                " Reading word offset 0x%04x failed.\n", fsm->sii_offset);
         return;
     }