Skip to main content

Library for interfacing to Narrowband Non-Terrestrial Network modems using AT commands.

Project description

NB-NTN Modem Interface

A generic model for interfacing to a NB-IoT modem compatible with 3GPP R17 Non-Terrestrial Network.

Provides an base class NbntnModem that abstracts specific AT commands to common methods used for communicating using NB-IoT over satellite. The class is intended to be subclassed and extended for specific modem variants from various manufacturers.

Modem Subclassing

Since modem implementations differ across make/model, this library is intended to be used to create NbntnModem subclasses with specific AT commands and responses.

Initialization Sequence

The ntninit submodule describes the format and an example template for the AT command sequence required by a particular modem variant.

The ntn_init list of init objects may be customized and included at the top of a specific modem subclass.

Common Workflow

  • connect() using either .env variables, default or programmatic values for SERIAL_PORT/port and SERIAL_BAUDRATE/baudrate.

  • initialize_ntn() to run the modem-specific configuration sequence

  • Run a loop that continually runs check_urc(), queues and then processes each get_urc_type()

URC injection

Some modems do not emit any URC on important events such as the completion of a MO message sending. In such cases the inject_urc() method is provided to simulate a modem-generated URC.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pynbntnmodem-0.6.16.tar.gz (28.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pynbntnmodem-0.6.16-py3-none-any.whl (34.5 kB view details)

Uploaded Python 3

File details

Details for the file pynbntnmodem-0.6.16.tar.gz.

File metadata

  • Download URL: pynbntnmodem-0.6.16.tar.gz
  • Upload date:
  • Size: 28.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.19 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for pynbntnmodem-0.6.16.tar.gz
Algorithm Hash digest
SHA256 d9de441513dbc4b2d9fc0b722940545de7baadb340c0687aa29263cf7d0c7474
MD5 32c1f162bfd8427b0feb3b13c1366ea6
BLAKE2b-256 7774974090aadd9e695ec33c539f2b718d9ac176223c01b71478be68cce5a18b

See more details on using hashes here.

File details

Details for the file pynbntnmodem-0.6.16-py3-none-any.whl.

File metadata

  • Download URL: pynbntnmodem-0.6.16-py3-none-any.whl
  • Upload date:
  • Size: 34.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.19 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for pynbntnmodem-0.6.16-py3-none-any.whl
Algorithm Hash digest
SHA256 c398427667b06fa6b802d8fe19858be0b78de486a3c8ff43880617ed3ab6f9c8
MD5 dc7190fd79998824eade9271d00c7b17
BLAKE2b-256 d2fab5372223583fcb5ecc876b5dd0e91934bca5f66751a611e8bc9f70c4aca1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page