Home/Support/Support Forum/C Ansi library socket APIs

C Ansi library socket APIs

0 votes
I am working with the Xbee3 LTE-M module and microcontroller unit.

I want to make a network interface layer using the LTE module and in doing so I need to implement socket calls(create, send, receive, etc) which interns talk to Xbee hardware using AT command via USART.

To do so I am referring https://github.com/digidotcom/xbee_ansic_library/ library.

I am not able to connect the dots for callbacks given here.

My query is there anyone who has any reference code in c for the same or document to start with?

Is anyone able to achieve socket communication on any embedded microcontroller device so far?

Any help would be greatly appreciable.

Thanks & Reg.
asked Apr 30, 2020 in RF Solutions and XBee by rutvij.trivedi New to the Community (4 points)
recategorized May 5, 2020 by LeonidM

Please log in or register to answer this question.

2 Answers

0 votes

This code requires the XBee to be in API mode (ATAP1) and at a baud rate of 115.2kbps (ATBD7).

As for sockets, you don't control it like you would think. You only need to send the TX request (IPV4) which will have the IP address and port number for the device you want to send the data to. The radio will keep the socket open for the timeout period set on the radio and the remote device.

The data will be sent back on what ever port number the xbee is set to (DE and CO).

Digi Support
answered Apr 30, 2020 by mvut Veteran of the Digi Community (15,413 points)
Thank you for the quick replay.

So here I am trying to enable Amazon Freertos with LTE-M.
AWS freeRTOS wants socket API stubs to be filled in order to communicate.

What I believe it should be like below starting from forming MQTT packets to UART packet for radio

1.MQTT msgs
2.MBEDTLS (encryption done here)
3.SSL -> socket apis stubs
4.xbee_ansic_library xbee_socket.c
5.AT+ Commands harwadere + (encrypted) PAYLOAD )

Is my understanding right here (?)

In the above dia. 3 and 4 steps socket stubs can be interconnected as shown?

Socket APIS | Xbee Apis
SOCK_Create--|-> Xbee_sock_create
SOCK_recv----|-> Xbee_sock_recv
SOCK_Send----|-> Xbee_sock_send

Help would be appreciable.

Thanks & Reg.
I know there is an example for Micro python at  https://www.digi.com/resources/documentation/digidocs/90002219/default.htm#container/cont_aws.htm%3FTocPath%3DUse%2520AWS%2520IoT%2520from%2520MicroPython%7C_____0

I would suggest you go thru that first and see how it works as the process should be similar.
Thanks for the replay.


Earlier I did go through that but it is written in python, where I don't have much knowledge in.

Also, my MCU will gonna support only C lan.

So is there any C lan. example available?

Not that I am aware of.

No satisfying answer, as Title is it slef says "C Ansi library socket APIs"

0 votes
is there anyone who can help with xbee_socket.c or any doc available ?

answered May 4, 2020 by rutvij.trivedi New to the Community (4 points)

LTE-M module is located at remote location and is attached with EFM32 Geint gecko.
I am able to communicate with the module and able to Get ip and cell network.
So is there any FOTA way to do it from MCU ?
Any sample or guide available to do it easy way ?

I am able to find the the firmware version XBXC-1140F and XBXC-11415 from the

However I am not able to find the firmware version 11413.
Can you please share the link from where i can get this firmware sequences ?

It is available in XCTU.
I refferd to your guidance and i updated firmware,
After couple of issue resolution now i am able to communicate to the AWS using Xbee3 Cellular and using this c Ansi library's extended sockets.

Thanks for the all support muvt.

We can close the issue i suppose.