Go Down

Topic: LinkSprite Color Camera and TinySine SIM900 Shield (Read 156 times) previous topic - next topic


I have completed a program instructs a LinkSprite color camera to take a picture and send the resulting JPEG file to a TinySine SIM900 GSM/GPRS Arduino shield from Tronixlabs. The SIM900 module is then instructed to send the picture to an email address as a MMS file.

The electronic design uses the single hardware UART of the ATMega168PU to communicate with the SIM900 and LinkSprite camera.  The UARTs of the three devices are connected in a loop (i.e. ATmega to the SIM900, SIM900 to the LinkSprite and LinkSprite back to the ATMega). Located in each of the three legs of this loop is a tri-state gated buffer/driver (parts of a 74LS125). When a buffer is disabled its output transistor is turned off which blocks data flow and presents a high impedance state to the data line.

The process for taking the picture and sending it out via the SIM900 as an MMS file is
the following:

1.   Enable the ATMega-to-LinkSprite UART link and disable the LinkSprite-to-SIM900 and SIM900-to-AtMega links.  Send commands to setup the LinkSprite and then to take a picture.

2,   Disable the ATMega-to-LinkSprite link and enable the ATMega-to-SIM900 link (leave the LinkSprite-to-SIM900 link disabled).  Send AT commands to the SIM900 to establish a phone connection and prepare to upload a MMS file. The SIM900 is left waiting for the MMS data to arrive.

3.   Disable the ATMega-to-SIM900 link and enable the ATMega-to-LinkSprite and LinkSprite-to-SIM900 links and give the LinkSprite the command to transfer the JPEG file in one batch. Once the file is received by the SIM900 it will upload the file without any further commands from the ATMega.

I started this project using an Arduino Uno but then migrated to my own PCB.  However it could still use a Uno . The Tx and Rx connection pins linking the Uno to the SIM900 would need to be cut and the 74LS125s mounted on a separate Arduino proto shield.

I have attached a file that shows the electrical design.  The code written in Basic can be found at http://www.tronixforum.com/?forum=376329 and at http://www.mcselec.com/index2.php?option=com_forum&Itemid=59&page=viewforum&f=8&sid=0dd2985f3b11f93d5bda6c4833666c06

Go Up