<
>
back to all cubes

SMS Cube

No text

After Udi Oren finished his first cube (the Balloon Cube) in record time, we thought: why not give him another one? We picked the SMS cube, and thought it wouldn't take too much of his time. We were wrong...

Though the cube is based on two off-the-shelf components (an SMS shield for the Arduino, and a thermal printer), each of them introduced its fair share of trouble. The printer turned out to communicate in RS-232, which needed to be translated to the Arduinos TTL using another part (Max3232) and lots of iterations for connecting it's satellite capacitors correctly...

The SMS module, on the other hand, was relatively easy to work with... until we got to the part where we need it to print in Hebrew. Udi worked like mad for a few weeks to get it understand the text coding used in Israel, and make it write in the correct direction (right to left).

Arduino code - download here

/*
  CUBES originally created by the interaction Lab, Holon Institute of Technology for the Design Museum Holon.
  http://interaction.shenkar.ac.il
  This work is licensed under a Creative Commons Attribution 3.0 Unported License

  SMS Cube by Udi Oren
*/

// this is the main code of the sketch (SMS_Cube.ino). There are other files in the ZIP that are needed in order to run the code.

#include <NewSoftSerial.h>
#include <avr/pgmspace.h>
NewSoftSerial Printer(10, 11);         //Soft RX from printer on D2, soft TX out to printer on D3

//-------GSM vars---------
char phone_number[20];
char date_time[30];
char massege[141];
int Hmassege[70];
byte language;      // language: 0 = English  /  1 = Hebrew

//-------Printer vars---------
int shalom[] = {249, 236, 229, 237, 58, 32};   //Shalom in iso-8859-8
int  pre[] =  {228, 228, 229, 227, 242, 228, 32, 249, 236, 234, 32, 228, 233, 224, 58};
int  bye[] = {249, 233, 228, 233, 228, 32, 233, 229, 237, 32, 247, 229, 225, 233, 233, 250, 233, 46, 46, 46, 32, 32, 32, 32, 32, 32, 32};
int HebLen;
int MassegeLen;

int nL = 90;
int nH = 1;
int Wd = 1038;
int rows = 5;
prog_char pic[5][1038] PROGMEM = {
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, -4, 0, 31, -1, 0, 63, -1, 0, 127, -1, 0, -1, -1, 1, -1, -1, 1, -1, -1, 3, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 3, -1, -1, 1, -1, -1, 1, -1, -1, 0, -1, -1, 0, 127, -1, 0, 63, -1, 0, 31, -1, 0, 3, -8, 0, 7, -2, 0, 31, -1, 0, 63, -1, 0, 127, -1, 0, -1, -1, 1, -2, 7, 3, -8, 1, 7, -16, 0, 7, -32, 0, 7, -32, 0, 7, -32, 0, 7, -32, 0, 7, -32, 0, 7, -32, 0, 7, -32, 0, 7, -32, 0, 7, -16, 0, 1, -8, 3, 1, -4, 7, 0, -1, -1, 0, 127, -1, 0, 63, -1, 0, 31, -1, 0, 3, -8, 0, 3, -4, 0, 15, -2, 0, 63, -1, 0, 127, -1, 0, -1, -1, 1, -1, -1, 1, -2, 15, 3, -4, 7, 7, -7, -13, 7, -15, -7, 7, -1, -4, 7, -17, -2, 7, -17, -2, 7, -17, -2, 7, -1, -2, 7, -15, -7, 7, -7, -15, 3, -4, -13, 1, -2, 15, 1, -1, -65, 0, -1, -1, 0, 127, -1, 0, 63, -1, 0, 15, -1, 0, 7, -4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -24, 0, 7, -2, -128, 15, -2, -64, 15, -2, -32, 15, -2, -16, 15, -2, -8, 15, -2, -4, 31, -2, -4, 31, -2, -4, 31, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -8, 63, -2, -8, 63, -2, -16, 63, -2, -32, 63, -2, -64, 63, -2, -128, 63, -2, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, -64, 31, -1, -32, 31, -1, -16, 31, -1, -16, 15, -1, -8, 15, -1, -4, 15, -1, -4, 15, -1, -4, 7, -1, -4, 3, -1, -4, 3, -1, -4, 1, -1, -4, 0, -1, -4, 0, 127, -4, 0, 31, -4, 0, 0, -8, 0, 0, -16, 0, 0, -16, 0, 0, -32, 0, 0, -64, 31, -2, -128, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, -128, 63, -2, -64, 63, -2, -32, 63, -2, -16, 63, -2, -16, 63, -2, -8, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -2, -4, 63, -1, -4, 63, -1, -4, 63, -1, -8, 63, -1, -8, 63, -1, -16, 63, -1, -32, 63, -1, -64, 63, -1, -128, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -8, 0, 31, -32, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 8, 0, 15, -4, 0, 31, -2, 0, 31, -2, 0, 31, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 31, -1, 0, 31, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 7, -1, 0, 3, -1, 0, 3, -1, 0, 0, -1, 0, 0, -1, 0, 0, 127, 0, 0, 31, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 15, -16, 0, 31, -2, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 15, -1, 0, 7, -1, 0, 0, 127, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 15, -1, 0, 15, -1, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 15, -32, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 31, -2, 0, 31, -2, 0, 31, -2, 0, 31, -2, 0, 31, -1, 0, 31, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 31, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 7, -1, 0, 1, -1, 0, 0, 63, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, -4, 0, 15, -2, 0, 15, -2, 0, 15, -2, 0, 15, -2, 0, 15, -2, 0, 31, -2, 0, 31, -2, 0, 31, -2, 0, 31, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -2, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 31, -1, 0, 31, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 15, -1, 0, 3, -1, 0, 3, -1, 0, 1, -1, 0, 1, -1, 0, 0, -1, 0, 0, 63, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -32, 31, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 15, -1, -1, 15, -1, -1, 15, -1, -1, 15, -1, -1, 31, -1, -1, 31, -1, -1, 31, -1, -1, 7, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -128, 0, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 127, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, -1, 0, 0, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 0, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 8, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 127, -16, -1, 0, 0, -1, 0, 1, -1, 0, 1, -1, 0, 1, -1, 0, 1, -4, 0, 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 0, 0, -1, 0, 0, -1, -16, 0, -1, -8, 0, -1, -1, -15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, 7, -1, -1, 0, 1, -1, 0, 1, -1, 0, 3, -1, 0, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -2, -1, -1, -2, -1, -1, -4, -1, -1, -8, -1, -1, -16, -1, -1, -32, -1, -1, -128, -1, -1, 0, -1, -4, 0, -1, -16, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 0, 31, -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -8, 0, -8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 123, 0, 0, -1, 0, 0, -1, 0, 1, -1, 0, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 7, -1, -1, 15, -1, -1, 15, -1, -1, 15, -1, -1, 15, -1, -1, 31, -1, -1, 31, -1, -1, 31, -1, -1, 15, -1, -1, 7, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -32, 15, -61, -16, 15, -57, -16, 31, -57, -16, 63, -57, -16, 63, -57, -16, 127, -57, -16, 127, -49, -16, 127, -49, -16, 127, -113, -16, -1, -113, -16, -1, -113, -16, 127, -64, -16, 127, -64, -16, 127, -64, -16, 127, -32, -32, 127, -1, 0, 127, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 31, -1, 0, 15, -1, -32, 15, -1, -16, 3, -1, -16, 0, -1, -16, 15, 0, -16, 31, 0, -16, 127, -128, -16, 127, -29, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -32, 127, -1, 0, 127, -1, 0, 63, -1, 0, 0, 0, 0, 0, 0, 0, 120, 0, 0, 124, 0, 0, 127, 0, 0, 127, -128, 0, 127, -32, 0, 127, -16, 0, 127, -4, 0, 127, -2, 0, 127, -1, 0, 127, -1, 0, 63, -1, 0, 63, -1, 0, 3, -1, 0, 1, -1, 0, 0, -1, 0, 15, -1, 0, 63, -1, -32, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -2, -16, 127, -8, -16, 127, -64, -16, 126, 0, -16, 0, 0, -16, 0, 0, -16, 31, -125, -16, 127, -57, -16, 127, -57, -16, 127, -57, -32, 127, -57, -64, 127, -57, 0, 127, -49, 0, 127, -49, 0, 127, -113, 0, 127, -113, 0, 127, -113, 0, 127, -49, 0, 127, -64, 0, 127, -64, 0, 127, -64, 0, 127, -57, 0, 127, -49, 0, 127, -1, -32, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -4, -16, 31, -32, -16, 0, 0, -16, 0, 0, -16, 120, 0, -16, 125, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 63, -1, -16, 31, -1, -16, 7, -1, -16, 3, -1, -16, 0, 127, -16, 0, 127, -16, 63, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -8, -16, 127, -128, -32, 56, 0, 0, 0, 0, 0, 15, -64, 0, 31, -64, 0, 63, -64, 32, 63, -64, -16, 127, -64, -16, 127, -64, -16, 127, -64, -16, -1, -64, -16, -1, -64, -16, 127, -64, -16, 127, -64, -16, 127, -64, -16, 127, -26, -16, 127, -1, -16, 127, -1, -16, 63, -1, -16, 63, -1, -16, 63, -1, -16, 63, -1, -16, 63, -1, -16, 31, -1, -16, 31, -1, -16, 7, -1, -16, 1, -1, -16, 31, -1, -16, 63, -1, -16, 127, -1, -16, 127, -1, -32, 127, -1, -32, 127, -1, -64, 127, -1, -64, 127, -1, -64, 127, -1, -128, 127, -1, -128, 127, -1, 0, 127, -1, 0, 63, -1, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 127, 0, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 63, -1, 0, 63, -1, 0, 63, -1, 0, 31, -1, 0, 3, -1, -32, 1, -1, -16, 7, -1, -16, 31, 0, -16, 63, -64, -16, 63, -64, -16, 127, -64, -16, 127, -64, -16, 127, -64, -16, -1, -1, -16, -1, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -32, 63, -1, -32, 63, -1, -128, 63, -1, 0, 31, -1, 0, 15, -1, 0, 1, -1, 0, 6, 3, 0, 31, 0, -32, 63, -128, -16, 127, -32, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 7, -1, -16, 0, 0, -16, 0, 0, -16, 120, 0, -32, 127, -1, -32, 127, -1, -64, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 127, -1, 0, 63, -1, 0, 31, -1, -32, 7, -1, -32, 3, -1, -16, 0, 127, -16, 0, 127, -16, 63, -1, -16, 63, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -16, -16, 127, -128, -15, -4, 0, -1, -1, 0, -65, -1, -64, 31, -1, -64, 31, -1, -64, 31, -1, -64, 31, -1, -64, 31, -1, -64, 31, -1, -64, 31, -1, -64, -65, -1, -64, -1, -1, -64, -16, 127, -64, -16, 127, -64, -16, 127, -64, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -16, 127, -1, -32, 127, -1, -64, 63, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, -64, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -32, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -64, 0, 0, -32, 0, 0, -16, 0, 0, -16, 0, 0, -32, 0, 0, -32, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, -32, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, -113, -16, 0, -33, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, 127, -16, 0, 63, -16, 0, 15, -32, 0, 0, 0, 0, 0, 0, 0, -1, -1, -32, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -16, -1, -1, -32, 1, -1, -64, 1, -16, 0, 15, -32, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -32, 0, -1, -64, 0, -64, 0, 0, 0, 0, 0, 0, 0, 0, 1, -32, 0, 15, -16, 0, 127, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -61, -32, 0, -64, 0, 0, -16, 0, 0, -8, 0, 0, -2, 0, 0, -1, -64, 0, -1, -32, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, 1, -8, 0, 0, -8, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -128, -64, 0, -1, -32, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -32, 0, -32, 0, 0, -8, 0, 0, -4, 0, 0, -2, 0, 0, -1, 0, 0, -1, -128, 0, -1, -128, 0, -1, -64, 0, -1, -32, 0, -1, -32, 0, -1, -32, 0, -1, -32, 0, 15, -32, 0, 7, -32, 0, 15, -32, 0, 15, -32, 0, -1, -32, 0, -1, -32, 0, -1, -32, 0, -1, -64, 0, -1, -128, 0, -1, -128, 0, -1, -128, 0, -1, 0, 0, -2, 0, 0, -4, 0, 0, -16, 0, 0, -32, 0, 0, -61, -64, 0, 15, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 15, -16, 0, 31, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -32, 0, -1, -128, 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32, 0, 0, -16, 0, 0, -16, 0, 0, -16, 0, 0, -32, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, -64, 0, 0, 0, 0, 0, 0, -32, 0, 31, -16, 0, 127, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -63, -32, 0, -64, 0, 0, -16, 0, 0, -4, 0, 0, -1, 0, 0, -1, -128, 0, -1, -32, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, 1, -8, 0, 0, -8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -32, 0, 15, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 31, -16, 0, 15, -16, 0, 31, -16, 0, 63, -16, 0, -1, -16, 0, -1, -16, 0, -1, -16, 0, -1, -32, 0, -1, -32, 0, -1, -32, 0, -1, -32, 0, -1, -128, 0, -1, -128, 0, -2, 0, 0, -16, 0, 0, -64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
};

void setup(){
  Serial.begin(115200);
  Printer.begin(19200); // used for writing to the printer
  SetPins();
  Turn_On();
  Register();
  InitParam2();
  InitSMS();
  GSMReady();
  fontSize(0);
  prntLn("Ready to gooooooo");
  prntLine();
  Paperfeed(4);
}

void loop(){
    if(GetSMS(1, phone_number, date_time, massege)){
    prntLine();
    PrintPic();
    if (language == 0){
      textAlign('R');
      printDate(date_time);
      textAlign('L');
      prnt("Hello: ");  
      prntLn(phone_number);
      fontSize(1);
      UnderLine(1);
      prntLn("Your massege is:");
      UnderLine(0);
      prntEnglish(1, MassegeLen);
      Paperfeed(1);
      fontSize(0);
      prnt("Have a cubical day...      ");
      Paperfeed(2);
    }
    else if (language == 1){
      Serial.println("HEB");
      ConvertEn(MassegeLen);
      printDate(date_time);
      fontSize(0);
      textAlign('R');
      prnt(phone_number);      
      HebLen = sizeof(shalom) / 2;      prntHebLn(shalom, HebLen);
      fontSize(1);
      UnderLine(2);
      HebLen = sizeof(pre) / 2;      prntHebLn(pre, HebLen);      
      UnderLine(0);
      prntHebrew(1, MassegeLen);
      Paperfeed(1);
      fontSize(0);
      HebLen = sizeof(bye) / 2;      prntHebLn(bye, HebLen);
      textAlign('L');
    }
    prntLine();
    Paperfeed(4);
  InitSMS();
  }
  delay(2500);
}

Parts:

(1x) Arduino Mega 2560

(1x) Arduino Cellular Shield

(1x) S40 Mobile Printer

(1x) Max3232 - RS232 Transciever

(4x) 0.1 uF Capacitors

(1x) 7.2V Li-Po Battery

(1x) 5.5/2.1mm Jack Socket