• Skip to main content
  • Skip to primary sidebar

RNTLab.com

The Ultimate Shortcut to Learn Electronics and Programming with Open Source Hardware and Software

  • Courses
  • Forum
    • Forum
    • Ask Question
  • Shop
  • Account
  • Blog
  • Login

ESP-NOW only supports 3 nodes to master, not 4.

Q&A Forum › Category: ESP32 › ESP-NOW only supports 3 nodes to master, not 4.
0 Vote Up Vote Down
DON PREFONTAINE asked 1 day ago

I have modified lab 10.4.2 to have 4 nodes talking to a single host/master. Even though each of the 4 nodes reports  “Sent IDx  AHT10 Readings with Success”, only 3 are showing stats on the master – not the fourth (ID4). 10_4_2_esp-now_many-to-one_Receiver_ID0_Timer_ST7796S.zip is the host/master file and 10_4_1_esp-now_many-to-one_sender_ID4.zip is the node file. Node files with ID1 through ID4 are identical except for their ID numbers.
https://www.networkhorizons.com/EP/45_ESP32-C3_ESP-NOW/v1.0/Code/10_4_1_esp-now_many-to-one_sender_ID4.zip
https://www.networkhorizons.com/EP/45_ESP32-C3_ESP-NOW/v1.0/Code/10_4_2_esp-now_many-to-one_Receiver_ID0_Timer_ST7796S.zip
Additionally, the master’s Serial Monitor is not matching the correct ID of the satellite node. I tried to use this file to clean up the cache to no avail:https://www.networkhorizons.com/EP/45_ESP32-C3_ESP-NOW/v1.0/Code/ESP32-C3_Super_Mini_Forget_Cache.zip
Any help on why all 4 nodes send their traffic sucessfully but the master only displays 1 through 3 on the Serial Monitor and TFT display. Node that ID0 is the master reporting on its BME280 sensor whereas the satellite nodes are sporting AHT10 sensors.

Question Tags: Esp-now
2 Answers
0 Vote Up Vote Down
William Lucid answered 8 hours ago

Might be a syncing issue were message is arriving when another mesage is printing to Serial Monitor.  Are you using flags to control when a message is sent?

Example of “on demand” data collection using flag syncing

Regards,

William

0 Vote Up Vote Down
DON PREFONTAINE answered 4 hours ago

Before I have to change the code to accommodate the flags idea, I thought I would try something else. 
All 4 boards were disconnected and the master was reset. 
Board ID1 was powered up and was seen by the master. It was powered down and ID2 was powered up and seen by the master. As with ID1, the first byte of the Raw Data matched the ID#. 
I powered down ID2 and powered up ID3; all is well. I powered down ID3.
When I powered up board ID4, it’s node readings were being sent but the board was not seen at all by the master. I powered down board ID4.
 
Next I powered up each board in order (ID1, ID2, ID3, ID4) once I could see that the previous ID matched the board and Raw Data. All was well but once again ID4 could not be seen.
 
There has to be something in my code, some hidden limit, that is preventing board 4 from being seen by the master. 
 
Next, I replaced board 4 with board 5 and tried using ID4 code – no change.
I tried board 6 with ID1 code: it showed ID1 stats in master’s SM but not on the TFT display.
I tried board 6 with ID4 code: it showed ID4 stats in master’s SM but on the TFT display they are on the line used by ID3.
 
Time to take a break because if there is a failure pattern, it presently eludes me.

Primary Sidebar

Login to Ask or Answer Questions

This Forum is private and it’s only available for members enrolled in our Courses.

Login »

Latest Course Updates

  • [New Edition] Build ESP32-CAM Projects eBook – 2nd Edition April 16, 2025
  • [eBook Updated] Learn ESP32 with Arduino IDE eBook – Version 3.2 April 16, 2025

You must be logged in to view this content.

Contact Support - Refunds - Privacy - Terms - MakerAdvisor.com - Member Login

Copyright © 2013-2025 · RandomNerdTutorials.com · All Rights Reserved

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.