Maduino Zero SIM800C

From MakerFabsWiki
Jump to: navigation, search

Introduction

Maduino Zero SIM800C is a one-stop solution for IoT (Internet of Things) projects, it integrates 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 guides 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 skills quickly.

Model: OAC800SIM
Maduino Zero SIM800C 00.png

Features

  • 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: 115200bps
  • Size: 40*55mm

Interface Function

700px
①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;
⑧A6 Serial Port for Firmware Updates
⑨GSM: Antenna IPX Connector

700px

①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(active Low)
  • D5 - connect to SIM800C UART1_DTR
  • D6 - Unused
  • D7 - Unused
  • D8 - Unused
  • D9 - Power ON Control of SIM800C (active High)
  • 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

Usage

GPRS/GSM test

SIM800C is a GPRS/GSM Quad-band module,and the update version support Bluetooth 3.0 EDR(some functions of SPP, OPP, HFP/HSP ), so The Maduino Zero SIM800C can be capable of the GPRS connectivity for Internet, to upload/download data with internet. With this board, we can use it as a data acquisition, remote control and a lot of IOT project or smart home project. Such as we want to know the temperature and humidity of home/office/storage cabinet/ or other some place at anytime, anywhere that have a network.
So, this tutorial is for the beginners to learn how to get temperature and humidity remotely by using Maduino Zero SIM800C with detailed guide, it is for the starters to create a simple IOT project with a few time of learning.


Step 1: Set Up Arduino IDE
1.1. Follow the guide to setup Arduino IDE for Maduino Zero SIM800C.

Select board -> Arduino/Genuino Zero(Native USB Port). And the correct Port.

Maduino Zero SIM800C 01D.PNG

If you not find it, you can click -> Boards Manager as the screen snap below. Nest search “arduino zero” and install Arduino SAMD Boards(32-bit ARM Cortex-M0+).

Maduino Zero SIM800C 01.png

1.2 install dependent library
Click Sketh->Include Library->Manage Library… Nest search “dht sensor library” install “DHT sensor library by Adafruit” like the image below.

Maduino Zero SIM800C 01E.png

Maduino Zero SIM800C 01F.png


Step2: Hardware Connection

2.1.Insert a Micro SIM cardc
The Maduino Zero SIM800C board uses the micro SIM card that is widely used in Android phone, install the Micro SIM card to the holder as below picture.
Maduino Zero SIM800C 03.png
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.2. Connect the Sensor
First you need to find a DHT11 sensor or purchase one from https://www.makerfabs.com/dht11-temperature-humidity-module.html

Sensor's GND -> Board's GND(Black line)

Sensor's DATA -> Board's D3(White line)

Sensor's Vcc -> Board's 3V(Grey line)

4.png

Maduino Zero SIM800C 03A.png

2.3. Connect the GSM Antenna and the 3.7V battery
Maduino Zero SIM800C 04.PNG

Note:We should ensure that the input voltage never drop below 3.0V even when current consumption rises to 2A in the transmit burst. That's the reason why we need a battery rather than just supply power via micro USB cable.

File:123456AAA.jpg

Step3.Programming and Downloading
3.1 Sign up an account in https://thingspeak.com/ . If you already have one, sign in directly.
3.2 Click New Channel to create a new ThingSpeak channel.
Maduino Zero SIM800C 08.png

3.3 Input name, Description, Select Field 1 and Field 2. Then save channel on the bottom.

Maduino Zero SIM800C 08A.png

Maduino Zero SIM800C 08B.png


3.4 Copy the API Key, we will use it in the program

Maduino Zero SIM800C 09.png


The Codes for this application is very simple, define the SIM800C Power control pins:

//define the power control pin of SIM808:
int POWER_KEY=9; //D9: power on/off

Connect to GPRS/GSM network

sendData("AT+CGATT=1", 1000, DEBUG);

Initialize HTTP Service

sendData("AT+HTTPINIT", 1000, DEBUG);

Set HTTP parameters value

sendData("AT+HTTPPARA=\"URL\",\"http://api.thingspeak.com/update?api_key=OTI5YUPI0PALJR3F&field1=25.6&field2=78.5\"", 1000, DEBUG);

POST the data that set in command "AT+HTTPPARA"

sendData("AT+HTTPACTION=1", 1000, DEBUG);//HTTP POST success if get responce: +HTTPACTION: 1,200,0

Download the *POST Temperature&Humidity Demo, select the right port and Arduino board: Arduino Zero(Native USB Port) to upload the firmware to Maduino Zero SIM808 GPS board
Maduino Zero SIM800C 01D.PNG

4.Test Result
If the GPRS service accessible, the Maduino board post data to the site, open the Serial Tool we can see the logs as shown below:
Maduino Zero SIM800C 07A.png


Of course you can open the link: https://thingspeak.com/channels/825092 it will show the data:
Maduino Zero SIM800C 05.png


Note: AT Command:

AT+SAPBR=3,1,"CONTYPE","GPRS"  //
AT+SAPBR=3,1,"APN","CMNET"
AT+SAPBR=1,1
AT+HTTPINIT
AT+HTTPPARA="URL","http://api.thingspeak.com/update?api_key=OTI5YUPI0PALJR3F&field1=22.6&field2=73.8"
AT+HTTPACTION=1
AT+HTTPREAD
AT+HTTPTERM //Terminal the HTTP

More details you can refer to the document SIM800 Series_AT Command Manual.pdf.

Cell ID Location test

You can use *Maduino Zero SIM800C AT Commands Demo to send AT commands via Serial Monitor or other serial tools, such as we can use AT+CENG=3 and AT+CENG? to get MCC,MNC,LAC and CI.
Maduino Zero SIM800C 07B.png
Then we can show a rough location via GSM Cell ID shown as below image.
https://cellidfinder.com/cells
Maduino Zero SIM800C 05D.png

FAQ

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

Resources