diff --git a/CardReader/main.c b/CardReader/main.c index 5160cb19a5f1948af774131d3220c86418de48bc..4a525be99b364c04ffe1a55a1abbfcb93c911315 100644 --- a/CardReader/main.c +++ b/CardReader/main.c @@ -28,7 +28,7 @@ volatile uint16_t host_timeout = HOST_TIMEOUT; volatile uint8_t host_ping = 1; volatile uint8_t host_dead = 0; -#define DISPLAY_RESET_TIMEOUT 400 /* 400*10 = 4 sec */ +#define DISPLAY_RESET_TIMEOUT 1000 /* 1000*10 = 4 sec */ volatile uint16_t display_reset_timeout = DISPLAY_RESET_TIMEOUT; volatile uint8_t display_reset = 1; @@ -209,7 +209,7 @@ void display_card_status(void){ return; } - lcd_write_string_sz_P(PSTR("PortalCardReader")); + lcd_write_string_sz_P(PSTR("Warpzone Portal")); lcd_set_pos(0,1); switch (card_status){ case CARD_STATUS_REMOVED: @@ -222,9 +222,17 @@ void display_card_status(void){ lcd_write_string_sz_P(PSTR("Card Ready")); break; case CARD_STATUS_ERROR: - lcd_write_string_sz_P(PSTR("Card Error 0x")); - lcd_write_byte_hex(card_atr_error); - lcd_write_char(' '); +// lcd_write_string_sz_P(PSTR("Card Error 0x")); +// lcd_write_byte_hex(card_atr_error); +// lcd_write_char(' '); + switch(card_atr_error){ + case ERR_ATR_TIMEOUT: lcd_write_string_sz_P(PSTR("Card Mute")); break; + case ERR_TOO_MANY_ATR_INTERFACE_BYTES: lcd_write_string_sz_P(PSTR("ATR too long")); break; + case ERR_ATR_CHECKSUM_FAIL: lcd_write_string_sz_P(PSTR("ATR chksum fail")); break; + case ERR_PROTOCOL_NOT_SUPPORTED: lcd_write_string_sz_P(PSTR("Card unspported")); break; + case ERR_ATR_CARD_REMOVED: lcd_write_string_sz_P(PSTR("Card removed")); break; + default: lcd_write_string_sz_P(PSTR("Unknown error ")); lcd_write_byte_hex(card_atr_error); break; + } break; } // lcd_write_char('C');