This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit b9a9ad3aa6e12c4370720756fea6d72dff0afeeb
Author: raiden00pl <[email protected]>
AuthorDate: Thu Oct 22 16:47:47 2026 +0200

    drivers/wireless/ieee802154/mrf24j40: write the extended addresses LSB first
    
    EADR0 and ASSOEADR0 hold the least significant octet (datasheet
    registers 2-6 and 2-83), but the driver wrote the most significant one
    there, so the radio dropped frames sent to its extended address.
    
    Assisted-by: Claude Code
    Signed-off-by: raiden00pl <[email protected]>
---
 drivers/wireless/ieee802154/mrf24j40/mrf24j40_getset.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/wireless/ieee802154/mrf24j40/mrf24j40_getset.c 
b/drivers/wireless/ieee802154/mrf24j40/mrf24j40_getset.c
index f7722878394..1ee64dcd3ef 100644
--- a/drivers/wireless/ieee802154/mrf24j40/mrf24j40_getset.c
+++ b/drivers/wireless/ieee802154/mrf24j40/mrf24j40_getset.c
@@ -213,7 +213,7 @@ int mrf24j40_seteaddr(FAR struct mrf24j40_radio_s *dev,
 
   for (i = 0; i < 8; i++)
     {
-      mrf24j40_setreg(dev->spi, MRF24J40_EADR0 + i, eaddr[i]);
+      mrf24j40_setreg(dev->spi, MRF24J40_EADR0 + i, eaddr[7 - i]);
       dev->addr.eaddr[i] = eaddr[i];
     }
 
@@ -263,7 +263,7 @@ int mrf24j40_setcoordeaddr(FAR struct mrf24j40_radio_s *dev,
 
   for (i = 0; i < 8; i++)
     {
-      mrf24j40_setreg(dev->spi, MRF24J40_ASSOEADR0 + i, eaddr[i]);
+      mrf24j40_setreg(dev->spi, MRF24J40_ASSOEADR0 + i, eaddr[7 - i]);
     }
 
   wlinfo("%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X\n", eaddr[0], eaddr[1],

Reply via email to