Skip to main content

huawei-lte-api

API For huawei LAN/WAN LTE Modems, you can use this to simply send SMS, get information about your internet usage, signal, and tons of other stuff

Tox tests

Please consider sponsoring if you're using this package commercially, my time is not free :) You can sponsor me by clicking on "Sponsor" button in top button row. Thank You.

Tested on:

3G/LTE Routers:

  • Huawei B310s-22
  • Huawei B311-221
  • Huawei B315s-22
  • Huawei B525s-23a
  • Huawei B525s-65a
  • Huawei B715s-23c
  • Huawei B528s
  • Huawei B535-232
  • Huawei B628-265
  • Huawei B612-233
  • Huawei B818-263
  • Huawei E5180s-22
  • Huawei E5186s-22a
  • Huawei E5576-320
  • Huawei E5577Cs-321
  • Huawei E8231
  • Huawei E5573s-320
  • SoyeaLink B535-333

3G/LTE USB sticks:

(Device must support NETWork mode aka. "HiLink" version, it wont work with serial mode)

  • Huawei E3131
  • Huawei E8372h-608
  • Huawei E3372
  • Huawei E3531
  • Huawei E5530As-2

5G Routers:

  • Huawei 5G CPE Pro 2 (H122-373)
  • Huawei 5G CPE Pro (H112-372)
  • Huawei 5G CPE6 (H165-383)

(probably will work for other Huawei LTE devices too)

Will NOT work on:

LTE Routers:

  • Huawei B2368-22 (Incompatible firmware, testing device needed!)
  • Huawei B593s-22 (Incompatible firmware, testing device needed!)

Installation

PIP (pip3 on some distros)

pip install huawei-lte-api

Repository

You can also use these repositories maintained by me

Debian and derivatives

Add repository by running these commands

wget -O- https://repository.salamek.cz/deb/salamek.gpg | sudo tee /usr/share/keyrings/salamek-archive-keyring.gpg
echo "deb     [signed-by=/usr/share/keyrings/salamek-archive-keyring.gpg] https://repository.salamek.cz/deb/pub all main" | sudo tee /etc/apt/sources.list.d/salamek.cz.list

And then you can install a package python3-huawei-lte-api

apt update && apt install python3-huawei-lte-api

Archlinux

Add repository by adding this at end of file /etc/pacman.conf

[salamek]
Server = https://repository.salamek.cz/arch/pub/any
SigLevel = Optional

and then install by running

pacman -Sy python-huawei-lte-api

Gentoo

emerge dev-python/huawei-lte-api

Usage

from huawei_lte_api.Client import Client
from huawei_lte_api.Connection import Connection

# with Connection('http://192.168.8.1/') as connection: For limited access, I have valid credentials no need for limited access
with Connection("http://admin:MY_SUPER_TRUPER_PASSWORD@192.168.8.1/") as connection:
    client = Client(connection)  # This just simplifies access to separate API groups, you can use device = Device(connection) if you want

    print(client.device.signal())  # Can be accessed without authorization
    print(client.device.information())  # Needs valid authorization, will throw exception if invalid credentials are passed in URL


# For more API calls just look on code in the huawei_lte_api/api folder, there is no separate DOC yet

Result dict

{
    "DeviceName": "B310s-22",
    "SerialNumber": "MY_SERIAL_NUMBER",
    "Imei": "MY_IMEI",
    "Imsi": "MY_IMSI",
    "Iccid": "MY_ICCID",
    "Msisdn": None,
    "HardwareVersion": "WL1B310FM03",
    "SoftwareVersion": "21.311.06.03.55",
    "WebUIVersion": "17.100.09.00.03",
    "MacAddress1": "EHM:MY:MAC",
    "MacAddress2": None,
    "ProductFamily": "LTE",
    "Classify": "cpe",
    "supportmode": None,
    "workmode": "LTE",
}

Code examples

Some code examples are in /examples folder

Monitoring

SMS

Ports to other languages

Donations

  • 250 CZK (9.79 EUR) for B535-232 fund, thx @larsvinc !
  • 371,69 CZK (14.32 EUR) by Oleg Jusaew
  • 292 CZK (11.50 EUR) by Toth-Mate Akos
  • 441 CZK (18.12 EUR) by Olexandr Shamin

Download files

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

Source Distribution

huawei_lte_api-2.0.1.tar.gz (46.8 kB view details)

Uploaded Source

Built Distribution

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

huawei_lte_api-2.0.1-py3-none-any.whl (65.7 kB view details)

Uploaded Python 3

File details

Details for the file huawei_lte_api-2.0.1.tar.gz.

File metadata

  • Download URL: huawei_lte_api-2.0.1.tar.gz
  • Upload date:
  • Size: 46.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for huawei_lte_api-2.0.1.tar.gz
Algorithm Hash digest
SHA256 a30329eb50579bde65fd35f5246f5b416d2f530e1ac3136428adea533e0a307e
MD5 797ddbd53bd3a6a842a43d92a250e61f
BLAKE2b-256 2ca855aac0383b66fbccd4f30933ffaae322692635eadcaf1bc432a998765c50

See more details on using hashes here.

File details

Details for the file huawei_lte_api-2.0.1-py3-none-any.whl.

File metadata

  • Download URL: huawei_lte_api-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 65.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for huawei_lte_api-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 23a6af2e8553e11ae3bd0d8df895fc9fddcb16bba15be3b2b1443576f4e32522
MD5 acb600b7d6a9334fb5424b08f874668f
BLAKE2b-256 092c03e2e4958e49efdc52a7de2b7cf5e299c5846c0d7b2eb682d533a8f3f519

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 Sentry Error logging StatusPage Status page