Maduino Zero SIM800C

From MakerFabsWiki
Revision as of 08:15, 5 July 2019 by Charlin (talk | contribs) (创建页面,内容为“== Introduction == Maduino Zero SIM800C is a one-stop solution for IOT (Internet of Things) projects, it integrate a micro Controller SAMD21G18A-AU, GRRS/GSM module...”)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Maduino Zero SIM800C is a one-stop solution for IOT (Internet of Things) projects, it integrate a micro Controller SAMD21G18A-AU, GRRS/GSM module SIM800C, on-board power management and storage, to make the Maduino Zero SIM800C ready for real project for IOT projects such as smart-home, outdoor monitoring, shared bicycle, etc. The GRPS/GSM module A6 support quad-band 850/900/1800/1900MHz, that covers any GSM network, after inserting a SIM card, then you will able to use the SMS/GPRS service of Cellular connectivity.
The Maduino Zero SIM800C based on the Arduino, users can program it with Arduino IDE, which is very easy especially suit for the none-programmers. There are also detailed guide for users to learn how to create the first IOT project with Maduino Zero SIM800C board, with which the starters can learn the hardware and programming skill quickly.

Model: OAC800SIM


  • Powered by lithium battery 3.4-4.2V or USB(5V)
  • SAMD21G18A: 32-bit ARM® Cortex®-M0 up to 48MHz, 256KB flash, 32KB SRAM, LQFP48
  • Integrated Power Control System
  • Quad-band: 850/900/1800/1900Mz
  • Interface: I2C/SPI/UART/ADC/DAC/I2S/38*GPIO
  • Arduino Compatible
  • Working Temperature: -20 – 85℃
  • Default baud rate: 115200
  • Size: 40*55mm

Interface Function

①PWR: Power Indicator
②CHG: Charge Status Indicator
③VBAT: Lipo Battery Connector
④CHG: 5V power Input Connector, connect to the solar panel to charge the battery.
⑤Micro USB: 5V Power Input, USB to serial Communication
⑥RESET: Reset Button for SAMD21G18A-AU
⑦Serial Port Select:
D0&D1: Hardware serial port;
D7&D8: Software serial port;
⑧A6 Serial Port for Firmware Updates
⑨GSM: Antenna IPX Connector


①Micro SIM Card Holder
②Micro SD Card Holder

Pins usage on Arduino

  • D0 – RX from SIM800C (Hardware Serial Communication Selected)
  • D1 – TX to SIM800C (Hardware Serial Communication Selected)
  • D2 - Unused
  • D3 - Unused
  • D4 - SD Card CS PIN(Low active)
  • D5 - To be confirmed
  • D6 - Unused
  • D7 - Unused
  • D8 - Unused
  • D9 - Power ON Control of SIM800C (High active)
  • D10 - Unused
  • D11 - Unused
  • D12 - Unused
  • D13 - Unused
  • D14(A0) - Unused
  • D15(A1) - Unused
  • D16(A2) - Unused
  • D17(A3) - Unused
  • D18(A4) - Unused
  • D19(A5) – Unused


GSM Connectivity

With the Maduino Zero SIM800C, users can create IOT projects such as remote controlling. The following simple application is using the SMS to control a RGB LED, it would be convenient for remote controlling without any internet, only with the 2G GSM connectivity that you can control hardware remotely.
1.Insert a Micro SIM card
The MaduinoZero SIM800C board uses the micro SIM card that is widely used in Android phone, insert the Micro SIM card to the holder as below picture.
Maduino GPRS A6 6.JPG
Note that some fee maybe needed for each SMS depends on your local GSM Operator, make sure that the SIM Card is active and enough money left for this application.

2.Connect the GSM Antenna and the 3.7V battery
Maduino GPRS A6 7.JPG
3.Connect the module that you want to control by Maduino Zero SIM800C.
Connect an RGB LED module to the Maduino Zero SIM800C as the following connection:
RGB LED Module-----Maduino Zero SIM800C


Maduino GPRS A6 9.JPG
Actually you can connect plenty of other modules that can be controlled by the simple On/Off Commands. For Example, a Relay can be connected, to control the AC110V or AC220V connectivity, and a DC motor can be connected and controlled, to created Automatic agriculture applications.

4.Programming and Download
The Codes for this application is simple, firstly, define the control pins: (Demo Code Download)

//define the RGB LED connection to the Maduino Zero SIM800C:
int LED_R = 2;
int LED_G = 3;
int LED_B= 4;

When some characters are received, turn on/off the related LED color:

SerialInByte = (unsigned char);
if( SerialInByte == 13 )// if some charactors are received from the SIM800C;

Turn On/Off t the LED, depends on the charactor received: ( Note that the RGB LED is Low active)

void ProcessSms( String sms )
  Serial.print( "ProcessSms for [" );
  Serial.print( sms );
  Serial.println( "]" ); 
  if( sms.indexOf("onr") >= 0 ){  //If “onr“ receoved
    digitalWrite(LED_R, LOW); // Turn On the Red Color
    Serial.println( "LED Red ON" );
  if( sms.indexOf("ong") >= 0 ){
    digitalWrite( LED_G, LOW);// Turn Off the Green Color
    Serial.println( "LED Green ON" );
    if( sms.indexOf("onb") >= 0 ){
    digitalWrite(LED_B, LOW);
    Serial.println( "LED Blue ON" );//Turn On the Blue Color
    if( sms.indexOf("offr") >= 0 ){
        digitalWrite( LED_R,HIGH);//Turn Off the Red Color
    Serial.println( "LED Red OFF" );
  if( sms.indexOf("offg") >= 0 ){
    digitalWrite(LED_G, HIGH ); //Turn Off the Green Color
    Serial.println( "LED Green OFF" );
    if( sms.indexOf("offb") >= 0 ){
    digitalWrite(LED_B, HIGH ); //Turn Off the Blue Color
    Serial.println( "LED Blue OFF" );

Select the right port and Arduino board: Arduino pro mini 3.3V 8MHz to upload the firmware to Maduino Zero SIM800C boards
Maduino GPRS A6 10.JPG
5.Test Result
You can send SMS to Maduino Zero SIM800C board to control the LED On/Off now. After getting the SMS, the Maduino Zero SIM800C will check the SMS firstly, and then turn On/Off the related LED Color with the commands:
Maduino GPRS A6 11.JPG

GPRS Connectivity

Of course the Maduino Zero SIM800C can be capable of the GPRS connectivity for Internet, to upload/download data with internet. The following simple example shows the starters how to access a website on the internet (Users need check the AT commands for how to access an website):

     sendData("GET HTTP/1.0\r\n\r\n\r\n",100,DEBUG);
     sendData("AT+CIPCLOSE ",1000,DEBUG);

If the GPRS service accessible, the Maduino board get data from the site, you can check the serial output debug info as:
Maduino GPRS A6 12.JPG
Then you can upload/download related data from the site to create remote data acquisition or remote controlling.


You can list you question here or contact with for technology support.