first commit
This commit is contained in:
commit
e6a42e28e9
4355 changed files with 4626605 additions and 0 deletions
|
|
@ -0,0 +1,90 @@
|
|||
/**************************************************************
|
||||
*
|
||||
* This sketch uploads SSL certificates to the SIM8xx
|
||||
*
|
||||
* TinyGSM Getting Started guide:
|
||||
* https://tiny.cc/tinygsm-readme
|
||||
*
|
||||
**************************************************************/
|
||||
|
||||
// This example is specific to SIM8xx
|
||||
#define TINY_GSM_MODEM_SIM800
|
||||
|
||||
// Select your certificate:
|
||||
#include "DSTRootCAX3.h"
|
||||
//#include "DSTRootCAX3.der.h"
|
||||
//#include "COMODORSACertificationAuthority.h"
|
||||
|
||||
// Select the file you want to write into
|
||||
// (the file is stored on the modem)
|
||||
#define CERT_FILE "C:\\USER\\CERT.CRT"
|
||||
|
||||
#include <TinyGsmClient.h>
|
||||
|
||||
// Set serial for debug console (to the Serial Monitor, speed 115200)
|
||||
#define SerialMon Serial
|
||||
|
||||
// Use Hardware Serial for AT commands
|
||||
#define SerialAT Serial1
|
||||
|
||||
// Uncomment this if you want to see all AT commands
|
||||
// #define DUMP_AT_COMMANDS
|
||||
|
||||
|
||||
#ifdef DUMP_AT_COMMANDS
|
||||
#include <StreamDebugger.h>
|
||||
StreamDebugger debugger(SerialAT, SerialMon);
|
||||
TinyGsm modem(debugger);
|
||||
#else
|
||||
TinyGsm modem(SerialAT);
|
||||
#endif
|
||||
|
||||
void setup() {
|
||||
// Set console baud rate
|
||||
SerialMon.begin(115200);
|
||||
delay(10);
|
||||
|
||||
// Set GSM module baud rate
|
||||
SerialAT.begin(115200);
|
||||
delay(6000);
|
||||
|
||||
SerialMon.println(F("Initializing modem..."));
|
||||
modem.init();
|
||||
|
||||
modem.sendAT(GF("+FSCREATE=" CERT_FILE));
|
||||
if (modem.waitResponse() != 1) return;
|
||||
|
||||
const int cert_size = sizeof(cert);
|
||||
|
||||
modem.sendAT(GF("+FSWRITE=" CERT_FILE ",0,"), cert_size, GF(",10"));
|
||||
if (modem.waitResponse(GF(">")) != 1) { return; }
|
||||
|
||||
for (int i = 0; i < cert_size; i++) {
|
||||
char c = pgm_read_byte(&cert[i]);
|
||||
modem.stream.write(c);
|
||||
}
|
||||
|
||||
modem.stream.write(AT_NL);
|
||||
modem.stream.flush();
|
||||
|
||||
if (modem.waitResponse(2000) != 1) return;
|
||||
|
||||
modem.sendAT(GF("+SSLSETCERT=\"" CERT_FILE "\""));
|
||||
if (modem.waitResponse() != 1) return;
|
||||
if (modem.waitResponse(5000L, GF(AT_NL "+SSLSETCERT:")) != 1) return;
|
||||
const int retCode = modem.stream.readStringUntil('\n').toInt();
|
||||
|
||||
|
||||
SerialMon.println();
|
||||
SerialMon.println();
|
||||
SerialMon.println(F("****************************"));
|
||||
SerialMon.print(F("Setting Certificate: "));
|
||||
SerialMon.println((0 == retCode) ? "OK" : "FAILED");
|
||||
SerialMon.println(F("****************************"));
|
||||
}
|
||||
|
||||
void loop() {
|
||||
if (SerialAT.available()) { SerialMon.write(SerialAT.read()); }
|
||||
if (SerialMon.available()) { SerialAT.write(SerialMon.read()); }
|
||||
delay(0);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue