u-blox / cellular

Cellular API, compatible with LWIP, in C for embedded platforms.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This repo is now superseded by https://github.com/u-blox/ubxlib.

Introduction

In this repository you will find the implementation of a cellular transport in C for various embedded target platforms, enabling a cellular connection to be used inside the embedded C IoT SDKs of cloud platforms such as AWS and Azure. The implementation consists of:

  • ctrl: a driver that allows control of a cellular module over an AT interface, e.g. make connection, read IMEI, read signal strength, etc.
  • sock: a driver that allows data transfer through a cellular module, presenting the same TCP/UDP sockets API as LWIP and building on top of the AT parser in ctrl.
  • port: the porting layer which allows ctrl and sock to be compiled and tested on various platforms and within various SDKs; look here for the build files and the tests.
  • cfg: configuration information for the software in general, specific cellular modules and tests.

Architecture

Usage

The C API for ctrl, sock and port can be found in their respective api sub-directories and are documented in the header files there. Information on how to build run tests on a given target platform can be found in the README.md files of the relevant platform sub-directory of port.

License

The software in this repository is Apache 2.0 licensed and copyright u-blox with the following exceptions:

  • the AT parsing code in ctrl is derived from the Apache 2.0 licensed AT parser of mbed-os,
  • the heap management code for the STM32 platform (heap_useNewlib.c), required because the native ST implementation does not allocate memory correctly when used with FreeRTOS, is copyright Dave Nadler.

In all cases copyright (and our thanks) remain with the original authors.

About

Cellular API, compatible with LWIP, in C for embedded platforms.

License:Apache License 2.0


Languages

Language:C 93.7%Language:Assembly 1.5%Language:Batchfile 1.4%Language:CMake 1.4%Language:Python 0.9%Language:C++ 0.6%Language:Makefile 0.5%