Skip to content

Feature/xbee cellular 3#4

Merged
felixgalindo merged 18 commits into
mainfrom
feature/xbee-cellular-3
Dec 24, 2025
Merged

Feature/xbee cellular 3#4
felixgalindo merged 18 commits into
mainfrom
feature/xbee-cellular-3

Conversation

@felixgalindo
Copy link
Copy Markdown

Merge initial implementation of xbee cellular support into main

…ar C API library

Summary:
--------
This commit adds complete support for the XBee 3 Cellular module in the existing modular C-based XBee API framework, designed with subclassed architecture similar to XBee LR (LoRaWAN). The following major additions and improvements have been made:

Features:
---------
- Implemented `xbee_cellular.c` and `xbee_cellular.h` with full subclass virtual table and high-level APIs:
  - Cellular-specific initialization, connect, disconnect, sendData, reset, and configuration hooks.
  - Introduced `XBeeCellularConfigure()` for APN/SIM/Carrier setup.
  - Defined all necessary AT command enums (e.g., `AT_PN`, `AT_AN`, `AT_CP`, `AT_SD`).
  - Implemented IPv4 TX frame sending using `XBEE_API_TYPE_CELLULAR_TX_IPV4`.

- Added `xbee_cellular_example.c`:
  - Demonstrates setup, initialization, connection, and periodic data send using XBee Cellular.
  - Follows same structure as the existing LR example.
  - Implements stubs for receive/send callbacks.

- Updated `xbee_api_frames.h` and `xbee_at_cmds.h`:
  - Defined new AT commands and API frame types for cellular.
  - Updated documentation blocks for full consistency.

- Extended core base logic in `xbee.c`:
  - Added `XBeeConfigure()` dispatch to subclass `configure()` method.
- Modified XBeeConnect to support blocking and non-blocking. In future, add support for callback for non-blocking.
- Added check in apiSendAtCommandAndGetResponse for response buffer size to prevent buffer overflow
-Updated readme with XBeeCellular
Updated xbee.c unit test
@felixgalindo felixgalindo merged commit 515d599 into main Dec 24, 2025
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant