Instalando o Logicrom no Arduino IDE

IDE do Arduino

O software Arduino (IDE) de código aberto facilita a escrita de código e o upload para a placa. Mais para ler sobre o Arduino IDE:

IDE do Arduino

Instalando a plataforma Logicrom

  1. Baixe e instale o Arduino IDE no site do Arduino

  2. Abra o Arduino IDE, vá em Arquivo > Preferências

  3. Adicione o URL das placas Logicrom aos URLs adicionais do gerenciador de placas e clique em OK.https://waybyte.github.io/package_logicrom_index.json

  1. Vá em Ferramentas > Quadro > Gerenciador de Quadro

  2. Na caixa de pesquisa, digite “Logicrom”

  3. Clique no botão Instalar para placas Logicrom Arduino .

  4. Selecione sua placa GSM no gerenciador de placas em “Logicrom Arduino”

Veja como ficou e compilação


/**
 * @file main.c
 * Sample main file
 */

#include <stdio.h>
#include <unistd.h>

#include <lib.h>
#include <ril.h>
#include <os_api.h>

/**
 * URC Handler
 * @param param1    URC Code
 * @param param2    URC Parameter
 */
static void urc_callback(unsigned int param1, unsigned int param2)
{
    switch (param1) {
    case URC_SYS_INIT_STATE_IND:
        if (param2 == SYS_STATE_SMSOK) {
            /* Ready for SMS */
        }
        break;
    case URC_SIM_CARD_STATE_IND:
        switch (param2) {
        case SIM_STAT_NOT_INSERTED:
            debug(DBG_OFF, "SYSTEM: SIM card not inserted!\n");
            break;
        case SIM_STAT_READY:
            debug(DBG_INFO, "SYSTEM: SIM card Ready!\n");
            break;
        case SIM_STAT_PIN_REQ:
            debug(DBG_OFF, "SYSTEM: SIM PIN required!\n");
            break;
        case SIM_STAT_PUK_REQ:
            debug(DBG_OFF, "SYSTEM: SIM PUK required!\n");
            break;
        case SIM_STAT_NOT_READY:
            debug(DBG_OFF, "SYSTEM: SIM card not recognized!\n");
            break;
        default:
            debug(DBG_OFF, "SYSTEM: SIM ERROR: %d\n", param2);
        }
        break;
    case URC_GSM_NW_STATE_IND:
        debug(DBG_OFF, "SYSTEM: GSM NW State: %d\n", param2);
        break;
    case URC_GPRS_NW_STATE_IND:
        break;
    case URC_CFUN_STATE_IND:
        break;
    case URC_COMING_CALL_IND:
        debug(DBG_OFF, "Incoming voice call from: %s\n", ((struct ril_callinfo_t *)param2)->number);
        /* Take action here, Answer/Hang-up */
        break;
    case URC_CALL_STATE_IND:
        switch (param2) {
        case CALL_STATE_BUSY:
            debug(DBG_OFF, "The number you dialed is busy now\n");
            break;
        case CALL_STATE_NO_ANSWER:
            debug(DBG_OFF, "The number you dialed has no answer\n");
            break;
        case CALL_STATE_NO_CARRIER:
            debug(DBG_OFF, "The number you dialed cannot reach\n");
            break;
        case CALL_STATE_NO_DIALTONE:
            debug(DBG_OFF, "No Dial tone\n");
            break;
        default:
            break;
        }
        break;
    case URC_NEW_SMS_IND:
        debug(DBG_OFF, "SMS: New SMS (%d)\n", param2);
        /* Handle New SMS */
        break;
    case URC_MODULE_VOLTAGE_IND:
        debug(DBG_INFO, "VBatt Voltage: %d\n", param2);
        break;
    case URC_ALARM_RING_IND:
        break;
    case URC_FILE_DOWNLOAD_STATUS:
        break;
    case URC_FOTA_STARTED:
        break;
    case URC_FOTA_FINISHED:
        break;
    case URC_FOTA_FAILED:
        break;
    case URC_STKPCI_RSP_IND:
        break;
    default:
        break;
    }
}

/**
 * Sample Task
 * @param arg   Task Argument
 */
static void sample_task(void *arg)
{
    while (1) {
        printf("Hello world\n");
        sleep(1);
    }
}



/**
 * Application main entry point
 */
int main(int argc, char *argv[])
{
    /*
     * Initialize library and Setup STDIO
     */

    pinMode(1,1);

    logicrom_init("/dev/ttyS0", urc_callback);

    printf("System Ready\n");

    /* Create Application tasks */
    os_task_create(sample_task, "sampletask", NULL, FALSE);

    printf("System Initialization finished\n");

    while (1) {
        /* Main task */
        sleep(1);
    }
}



Integração com DASHBOARD, atualização remota, etc

Entre em contato com a Waybyte Solutions - Your Firmware Partner, carregue o firmware e  faça o registro também

waybyte/logicrom_core: Core firmware files for Logicrom supported modules (github.com)

Quick Start Guide — Logicrom OpenCPU SDK documentation


Preços
Waybyte Solutions - Your Firmware Partner

Ref

Waybyte Solutions - Your Firmware Partner
waybyte/arduino_logicrom: Arduino framework for 4G LTE Cat.1, GSM and NB-IoT Modules from Quectel and Neoway (github.com)
arduino_logicrom/libraries at master · waybyte/arduino_logicrom (github.com)
Logicrom SDK

Sobre a SMARTCORE

A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portfólio inclui modem 2G/3G/4G/NB-IoT/Cat.M, satelital, módulos WiFi, Bluetooth, GNSS / GPS, Sigfox, LoRa, leitor de cartão, leitor QR code, mecanismo de impressão, mini-board PC, antena, pigtail, LCD, bateria, repetidor GPS e sensores.

Mais detalhes em www.smartcore.com.br