diff --git a/src/jtag/drivers/usb_blaster/usb_blaster.c b/src/jtag/drivers/usb_blaster/usb_blaster.c
index 5335ce4e9..d64a7ea82 100644
--- a/src/jtag/drivers/usb_blaster/usb_blaster.c
+++ b/src/jtag/drivers/usb_blaster/usb_blaster.c
@@ -952,7 +952,7 @@ COMMAND_HANDLER(ublast_handle_pin_command)
 
 		if (strlen(pin_value) > 1)
 			val = '?';
-		switch (tolower(val)) {
+		switch (tolower((unsigned char)val)) {
 		case '0':
 			*steer = FIXED_0;
 			break;