X-Git-Url: https://hackdaworld.org/gitweb/?p=rfid%2Flibrfid.git;a=blobdiff_plain;f=gemtag%2Fgemtag.h;h=d1bef964c00ec87b15bed51ecf4cfcec14b8d920;hp=f83210075ff1bdebeda6cb22b691003a8fc83b82;hb=d72a365a0f044de71ae7c13dd7782895f531a944;hpb=52d5cce98a304aff9e9e1f98e345432d7bf62a8d diff --git a/gemtag/gemtag.h b/gemtag/gemtag.h index f832100..d1bef96 100644 --- a/gemtag/gemtag.h +++ b/gemtag/gemtag.h @@ -24,11 +24,12 @@ struct gemtag_handle { struct usb_dev_handle *handle; unsigned char seq; - unsigned char capabilities; - unsigned char snr[4]; + unsigned char caps; + unsigned char serial[4]; }; -#define GEMTAG_CAP_CRC 0x01 +#define GEMTAG_CAP_CRC 0x01 +#define GEMTAG_CAP_VERB_TRANSMIT 0x02 struct gemtag_cmd_hdr { unsigned char start; @@ -37,10 +38,78 @@ struct gemtag_cmd_hdr { u_int16_t len; } __attribute__ ((packed)); -#define GEMTAG_CMD_GET_FW_VERSION 0x63 +#define BAD_CRC 0x01 +#define SEQ_MISMATCH 0x02 +#define SHORT_ANSWER 0x03 +#define CMD_FAILED 0x04 +#define AUTH_FAILED 0x05 +#define READ_FAILED 0x06 +#define NO_PICC 0x07 +#define PICC_SELECT_ERROR 0x08 + +/* gemtag commands */ + +#define GEMTAG_CMD_PCD_CONFIG 0x10 +#define GEMTAG_CMD_PICC_ANTICOLL 0x12 +#define GEMTAG_CMD_PICC_SELECT 0x13 + +#define GEMTAG_CMD_PICC_AUTH 0x14 +#define GEMTAG_CMD_PICC_AUTH_E2 0x15 +#define GEMTAG_CMD_HOST_CODE_KEY 0x16 +#define GEMTAG_CMD_PCD_LOAD_KEY_E2 0x17 +#define GEMTAG_CMD_PICC_AUTH_KEY 0x18 +#define GEMTAG_PICC_AUTHENT1A +#define GEMTAG_PICC_AUTHENT1B + +#define GEMTAG_CMD_PICC_READ 0x19 +#define GEMTAG_CMD_PICC_WRITE 0x1a +#define GEMTAG_CMD_PICC_VALUE 0x1b +#define GEMTAG_CMD_PICC_VALUE_DEBIT 0x1c +#define GEMTAG_CMD_PICC_HALT 0x1d +#define GEMTAG_CMD_PICC_WRITE4 0x1e +#define GEMTAG_CMD_COMMON_WRITE 0x1f +#define GEMTAG_CMD_PCD_RF_RESET 0x20 #define GEMTAG_CMD_GET_SERIAL_NUMBER 0x22 -#define GEMTAG_CMD_GET_RIC_VERSION 0x64 +#define GEMTAG_CMD_PCD_READ_E2 0x23 +#define GEMTAG_CMD_PCD_WRITE_E2 0x24 +#define GEMTAG_CMD_PICC_COMMON_READ 0x28 +#define GEMTAG_PICC_DECREMENT +#define GEMTAG_PICC_INCREMENT +#define GEMTAG_PICC_READ16 +#define GEMTAG_PICC_RESTORE +#define GEMTAG_PICC_WRITE16 +#define GEMTAG_PICC_WRITE4 + +#define GEMTAG_CMD_PICC_REQUEST 0x40 +#define GEMTAG_PICC_REQIDL 0x26 #define GEMTAG_CMD_PCD_SET_TMO 0x27 + +#define GEMTAG_CMD_PICC_CASC_ANTICOLL 0x41 +#define GEMTAG_CMD_PICC_CASC_SELECT 0x42 +#define GEMTAG_PICC_STD_SELECT_CODE 0x93 +#define GEMTAG_PICC_CASC_LEVEL1 0x95 +#define GEMTAG_PICC_CASC_LEVEL2 0x97 + +#define GEMTAG_CMD_PICC_ACTIVATE_IDLE 0x43 +#define GEMTAG_CMD_PICC_ACTIVATE_WAKEUP 0x44 +#define GEMTAG_CMD_SET_DFLT_ATTRIBUTES 0x45 +#define GEMTAG_CMD_SET_ATTRIBUTES 0x46 +#define GEMTAG_CMD_PICC_EXCHANGE_BLOCK 0x48 +#define GEMTAG_PICC_REQALL 0x52 + +#define GEMTAG_CMD_SWITCH_LED 0x60 +#define GEMTAG_LED_OFF 0x00 +#define GEMTAG_LED_ON 0x01 + +#define GEMTAG_CMD_GET_FW_VERSION 0x63 +#define GEMTAG_CMD_GET_RIC_VERSION 0x64 +#define GEMTAG_CMD_SET_DEFAULT_BAUDRATE 0x81 +#define GEMTAG_CMD_SET_ONLINE_BAUDRATE 0x82 #define GEMTAG_CMD_SET_CPU_TIMEOUT 0x88 +#define GEMTAG_CMD_DETECT_CARD 0x92 +#define GEMTAG_CMD_DETECT_ISO15693_CARD 0x93 +#define GEMTAG_CMD_PPS_REQUEST 0xa0 +#define GEMTAG_CMD_DESELECT 0xa1 + #endif