Smartcard access lib for Arduino based boards connected directly to a smartcard.

This is currently a work in progress.

Currently it is possible to communicate with a smartcard directly connected to a Arduino board or connected via a TDA8024T (or compatible chips. e.g. DS8024).

All tests have been done with a smart card slot connected directly to the Aruino board.

Working:
- Activation of asynchronous and synchronous smart cards
- Exchanging data with supported Smart card (Sending / Receiving)
- Asychron T=0 APDU communication.
- Basic sychron communication
- ETU calculation from TS byte.
- Support class for SLE4432 / SLE4442 / SLE4441 and SLE4440 compatible sychron smartcards.
Mostly used for secure data storage.

Open points:
- Error handling not completly implemented.
No retries if parity error is found.
- Setup of communication parameters from ATR
- T=1 communication not supported (Still possible via "raw" sendBytes(..) / receiveBytes(..))

Project Activity

See All Activity >

Categories

Hardware Drivers

License

GNU Library or Lesser General Public License version 2.0 (LGPLv2)

Follow Smartcard Lib for Arduino compat. boards

Smartcard Lib for Arduino compat. boards Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
4
0
1
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5

User Reviews

  • T=1, Async mode works well with PIV cards but not the other modes.
  • I was able to use this source code to implement communication with a 7816 card. Some initial problems were solved with the author's help. Very good job on this.
    2 users found this review helpful.
  • Amazing work. Keep up the good work Angus!!!
    1 user found this review helpful.
  • Nice work ! I have a question : why putting a pull-up resistance on RST while it's OUTPUT ?? also it will be nice to add inverse convention to your code !
    1 user found this review helpful.
  • but i got error while complining in arduino ide.....please help me in solving this
Read more reviews >

Additional Project Details

Programming Language

C++

Related Categories

C++ Hardware Drivers

Registered

2012-01-15