diff --git a/py/runtime.c b/py/runtime.c
index 795cc4624ca6122c4e1f0cc2c96cf68c3a5075b9..3ec47a9ed5f8577cfff1423a477f735b160dd547 100644
--- a/py/runtime.c
+++ b/py/runtime.c
@@ -536,7 +536,9 @@ mp_obj_t rt_binary_op(int op, mp_obj_t lhs, mp_obj_t rhs) {
     }
 
     // TODO specify in error message what the operator is
-    nlr_jump(mp_obj_new_exception_msg_varg(MP_QSTR_TypeError, "unsupported operand type for binary operator: '%s'", mp_obj_get_type_str(lhs)));
+    nlr_jump(mp_obj_new_exception_msg_varg(MP_QSTR_TypeError,
+        "unsupported operand types for binary operator: '%s', '%s'",
+        mp_obj_get_type_str(lhs), mp_obj_get_type_str(rhs)));
 }
 
 mp_obj_t rt_compare_op(int op, mp_obj_t lhs, mp_obj_t rhs) {