Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IEEE802.15.4 support for nrf52 #11617

Merged
merged 4 commits into from
Feb 18, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
various cosmetic changes related to ieee802154
  • Loading branch information
raiden00pl committed Feb 17, 2024
commit e460118da62caa9146d7deb30f017d4a19461efd
12 changes: 9 additions & 3 deletions Documentation/applications/wireless/i8sak/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
==================================================

Description
-----------
===========

The i8sak app is a useful CLI for testing various IEEE 802.15.4 functionality.
It also serves as a starting place for learning how to interface with the NuttX
Expand All @@ -30,7 +30,8 @@ _sticky_, meaning, if you set the endpoint short address once, any future
operation using the endpoint short address can default to the previously used
address. This is particularly useful to keep the command lengths down.

## How To Use
How To Use
==========

The i8sak app has a series of CLI functions that can be invoked. The default
i8sak command is ``i8`` to make things quick and easy to type.
Expand All @@ -47,6 +48,11 @@ This will tell the MAC layer that it should now act as a PAN coordinator using
PAN ID CD:AB. For now, this function assumes that we are operating a non-beacon
enabled PAN, since, as of this writing, beacon-enabled networks are unfinished.

Configure PAN coordinator short address and EP short addres::

i8 set saddr 0A:00
i8 set ep_saddr 0B:00

Next, on the same device, run::

i8 acceptassoc
Expand Down Expand Up @@ -117,7 +123,7 @@ similar to the following::
Dest. Address - 0xDEADBEEF00FADE0C
Src. Address - 0xDEADBEEF00FADE0A
Command Type - Association Response
Assigned SADDR - 0x000C
Assigned SADDR - 0x000B
Assoc Status - Successful

3a) ACK
Expand Down
10 changes: 5 additions & 5 deletions wireless/ieee802154/mac802154.c
Original file line number Diff line number Diff line change
Expand Up @@ -458,9 +458,9 @@ static void mac802154_notify_worker(FAR void *arg)
* This function is called in the following scenarios:
* - The MAC receives a START.request primitive
* - Upon receiving the IEEE802154_SFEVENT_ENDOFACTIVE event from the
* this radio layer, the MAC checks the bf_update flag and if set
* calls function. The bf_update flag is set when various attributes
* that effect the beacon are updated.
* this radio layer, the MAC checks the beaconupdate flag and if set
* calls function. The beaconupdate flag is set when various
* attributes that effect the beacon are updated.
*
* Internal function used by various parts of the MAC layer. This function
* uses the various MAC attributes to update the beacon frame. It loads
Expand Down Expand Up @@ -778,8 +778,8 @@ static void mac802154_purge_worker(FAR void *arg)
****************************************************************************/

static int
mac802154_radiopoll(FAR const struct ieee802154_radiocb_s *radiocb,
bool gts, FAR struct ieee802154_txdesc_s **txdesc)
mac802154_radiopoll(FAR const struct ieee802154_radiocb_s *radiocb,
bool gts, FAR struct ieee802154_txdesc_s **txdesc)
{
FAR struct mac802154_radiocb_s *cb =
(FAR struct mac802154_radiocb_s *)radiocb;
Expand Down
6 changes: 4 additions & 2 deletions wireless/ieee802154/mac802154_assoc.c
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,9 @@ int mac802154_req_associate(MACHANDLE mac,
return ret;
}

/* Get a uin16_t reference to the first two bytes. ie frame control field */
/* Get a uint16_t reference to the first two bytes. ie frame control
* field
*/

iob->io_data[0] = 0;
iob->io_data[1] = 0;
Expand Down Expand Up @@ -879,7 +881,7 @@ static void mac802154_assoctimeout(FAR void *arg)
}

/****************************************************************************
* Name: mac802154_extract_assocrespj
* Name: mac802154_extract_assocresp
*
* Description:
* Create and send a Data request command to extract the Association
Expand Down