What is it?
In the remote connection / VPN world, RSA tokens and other two-way authentication methods are used to increase security. Sometimes a sms (text message) is send with an one-time-password. This box is able to receive these smses and display them over a telnet session, making it unnecessary to find that one specific mobile that receives these messages.
Eagle layout
The SIM900 shield is represented by the JP2 pin header.
On the SIM900 shield the power jumper is soldered together, so the Arduino Mega pin 9 is able to power cycle the SIM900 board.
Arduino code
https://github.com/timdows/AMD/tree/master/SMS%20receiver
The source is split into 4 files to improve readability.
arduino_sim900.ino only holds the setup and loop functions.
ESPController.ino in the setup will wait for the ESP8266 to confirm to have an IP. If it takes more than 15 seconds to receive this status, the CH_PD pin will be pulled low for 100ms, forcing a power cycle on the ESP8266 board.
In the loop it will check if the magic string All your sms are belong to us is received (of course taken from Zero Wing), if so it will printout all the smses in memory.
LedController.ino is holding some functions to control the two leds on the front of the box.
SIMController.ino holds up to 5 smses and makes sure the new received smses are placed in the string array.
End result
3d print
Box drawn in tinkercad https://www.tinkercad.com/things/9rYtQ9gANIV-sim900-box
TODO
- Print the top part in blue, as it now is grey
Project costs in € or $
Object | Price |
---|---|
Arduino Mega | $ 11.58 |
SIM900 shield | $ 29.96 |
ESP8266 | $ 2.89 |
LM1117T | $ 0.59 |
2x WS2801 | $ 3.34 |
3d print | € 50 |
SIM card | € 10 |
Other materials | $ 2 |
Total | $ 117.36 |
What could be better
- Add capacitor on the output of the LM1117T
- Send the received sms to a central server, to store / view / process them there