This circuit is only reader. It's not programmer. You CANNOT refill, hack or any illegal thing, the telecards. The purpose of this circuit is for you to understand how a microcontroller reads the telecard, for building other electronic circuits such as "electronic safety lock" or "Checker for how much units (credits) left in the card" etc.




This reader can read the contained memory of the telecard. These cards have 64 bytes ( 512 bits) of eeprom memory that the first 8 bytes ( 64 bits ) are write protected. They are only for reading.

This circuit does not include any lcd display, to keep the cost low, but the data can be viewed to any PC system using the RS232 port, by the Hyper terminal software.



The circuit:

The circuit based on AT90S2313 AVR microcontroller from atmel, programmed with telecard.hex and telecard.eep .  The converter from + - 12V of RS232 to TTL and from TTL to + - 12V is MAX232. When you build the circuit ( i think its very simple ), connect the reader with RS232 port of the PC, run the Hyper terminal software ( start – programs - accessories – communications – Hyper terminal ) and set the baud rate to 19200 bps 8 none 1.

Power on the reader, insert the telecard and press the switch to read the contain of the card.

If you use a telecard holder, usually this holder includes a switch that is pressed when you insert the card. You can use this switch, to make the reading of the card, automatic.

Some card holders have this switch as normally close (N.C) or normally open (N.O). This circuit uses Normally open switch.

Snapshoot of Hyper terminal window


Picture of a Greek telecard


The contain of the above telecard


Memory map for Greek telecards:

The 1st  (85) and 2th (FC) byte it’s the country. The 3th (0B) is the units (3000) and 4th is the customer (OTE). These results are from testing of 50 different Greek telecards and i don’t know if they are correct.

The 5th, 6th, 7th and 8th bytes are the serial number of the card in hex form. If you convert the 4A037AA0  hex ( bytes 8 to 5 ) to decimal, you will get the number 1241741984 ( look at the serial number of the black telecard above ) .

The 9th, 10th, 11th, 12th and 13th bytes are the units (credits) left counter, 5 stage octal counter that is counting the units to the zero (0).

5 stage octal unit counter with 2852 units

 (00)     (F8)      (F0)     (F0)      (F0)

 Byte9     Byte10     Byte11    Byte12     Byte13

(c4096)    (c512)     (c64)      (c8)       (c1)


00000000 - 11111000 - 11110000 - 11110000 - 11110000


(0)octal   (5)octal   (4)octal   (4)octal   (4)octal


(0*8^4) + (5*8^3)  + (4*8^2)  + (4*8^1)  + (4*8^0)

= (0*4096) + (5*512)  + (4*64)   + (4*8)    + (4*1)     


TOTAL = 2852 Units ( 2852 cents or 2,852 Euro left )

Read for more informations about how the telecards, from a lot of countries, work.

After a lot of emails (thank you for your interesting), i deside to publish  the full zip file that includes  source, hex and schematic if you use AT90S1200 or if you use AT90S2313 microcontroller.



My email