USE UPS NEXT DAY AIR FOR ANY USA ORDER BEFORE 11AM ET *TODAY* 12/19/2014 TO GET YOUR PACKAGE IN TIME FOR XMAS - PLEASE SEE OUR SHIPPING DEADLINE NOTICE FOR MORE DETAILS!

How does SIM Reader work?
Moderators: adafruit_support_bill, adafruit

How does SIM Reader work?

by Fruitloops on Tue May 15, 2012 11:47 am

My SIM Reader reads SMS messages (but not phone numbers) on a card that I have and I'm satisfied with this Kit. I looked at the schematic and see very few connections to the SIM card (3.5 meg clock signal, In, Out and RST). I sure would appreciate it if someone could give a brief (or any kind) of explanation of how the software and Reader acts upon the SIM card. Even a simple, general description would be appreciated...
Dave
Fruitloops
 
Posts: 1
Joined: Tue May 15, 2012 11:36 am

Re: How does SIM Reader work?

by adafruit_support_mike on Thu May 17, 2012 3:38 pm

It uses a protocol called the 'Serial Peripheral Interface' or 'SPI':

http://en.wikipedia.org/wiki/Serial_Per ... erface_Bus

The link above will probably give you more information than you want. The upshot is that the devices at either end know how to speak a language made of high/low signals on the IN and OUT lines. The device in control (called the 'master') provides the clock signal, and the SIM card (called the 'slave') does what the controller tells it.

The official names for the IN and OUT lines are MISO (Master In, Slave Out) and MOSI (Master Out, Slave In), and the names pretty much tell you what they do. The master puts signals on MOSI and the slave reads them. The slave puts signals an MISO and the master reads them.

SPI is a 'full duplex' protocol, meaning both the master and slave send and receive signals at the same time. There are several different ways to handle the exchange, but they all follow the same general pattern: The master and slave put signals on their output lines when the clock goes from LOW to HIGH, then read their input lines when the clock goes from HIGH to LOW.

The benefit of sending signals both ways is that the master can send the address of the next byte it wants while it reads bits from the last byte it wanted.
When you void a product warranty, you give up your right to sue the manufacturer if something goes wrong and accept full responsibility for whatever happens next. And then you truly own the product.
User avatar
adafruit_support_mike
 
Posts: 11329
Joined: Thu Feb 11, 2010 2:51 pm