I am trying to develop a mac os X application (in cocoa) that uses the pcscd to access a couple of CCID compliant devices. The long term goal is to use these devices to recognize which user is interacting w/ the program. At the moment I am just getting started and trying to figure out how to use the pcscd. To get started I wrote the following routine to list the smart card devices that are attached to my mac... - (void)ListSmartCardDevices { MSCLPTokenInfo tokenList; MSC_RV rv; MSCULong32 listSize = 0; rv = MSCListTokens( MSC_LIST_KNOWN, NULL, &listSize ); if (rv != MSC_SUCCESS) { char *err_str = pcsc_stringify_error(rv); NSLog(@"MSCListTokens failed for reason %s", err_str); return; } if (listSize == 0) { NSLog(@"MSCListTokens found no smart cards"); return; } tokenList = (MSCLPTokenInfo)malloc(sizeof(MSCTokenInfo)*listSize); rv = MSCListTokens( MSC_LIST_KNOWN, tokenList, &listSize ); if (rv != MSC_SUCCESS) { char *err_str = pcsc_stringify_error(rv); NSLog(@"MSCListTokens failed for reason %s", err_str); return; } for (int i = 0; i < listSize; i++) { printf("Token name : %s\n", tokenList[i].tokenName); printf("Slot name : %s\n", tokenList[i].slotName); } } If I run my program (which includes this routine) w/ no smartcards plugged in I get the following (predictable) output. [Session started at 2009-06-02 15:37:14 -0700.] *2009-06-02 15:37:15.155 POS[59501:10b] MSCListTokens found no smart cards* If I then plug in the ACR122 device from ACS system and rerun my program I get the following error [Session started at 2009-06-02 15:38:18 -0700.] *2009-06-02 15:38:19.470 POS[59511:10b] MSCListTokens failed for reason Unknown PCSC error: 40019 [0x00009C53]* I get a similar error if I plug in the SCL010 card reader from SCM microsystems. Can anyone suggest any debugging next steps? Cheers, J