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

Digital pin events are not always received by the Lead Scout #152

Open
jingman opened this issue Jul 12, 2014 · 4 comments
Open

Digital pin events are not always received by the Lead Scout #152

jingman opened this issue Jul 12, 2014 · 4 comments
Labels

Comments

@jingman
Copy link
Collaborator

jingman commented Jul 12, 2014

I'm pressing a button on a Field Scout, and sometimes, the state change is missed.

Using verbose(1) on the Field Scout, I'm able to verify that the event handler is being called successfully on every pin change, and that it's announcing the correct pin states to the mesh.

Using verbose(1) on the Lead Scout, I'm able to verify that the multicast message is not received. It seems to happen intermittently, maybe 1 in 10 state changes.

@jingman jingman added the bug label Jul 12, 2014
@jingman jingman changed the title Digital pin events are not always being sent to the Lead Scout Digital pin events are not always received by the Lead Scout Jul 12, 2014
@jingman
Copy link
Collaborator Author

jingman commented Jul 12, 2014

More notes about my setup and testing:

  • Only 2 Scouts in the Troop.
  • I push the button down, wait, and then release (I'm not rapidly pressing it).
  • The missed messages do not seem to coincide with any other mesh messages being sent at the same time (like temp or power reports).

@soldair
Copy link
Collaborator

soldair commented Jul 12, 2014

is the scout on master?

@jingman
Copy link
Collaborator Author

jingman commented Jul 12, 2014

No, both Scouts are on 2014060501-0-g3b28e32.

@quartzjer
Copy link
Contributor

This is unfortunately /probably/ just the lossy lwm broadcast, but you can verify using this simple group ping scoutscript on one scout:

// these are for the first scout

// print the pong
function on.message.group {if(arg(1) == 5) { key.print(arg(3)); led.blue(10); } };

// send the ping
p = 0;
function ping { p++; message.group(4, key(p)); key.free(key(p)); led.red(10); };
run ping,1000; 

Then on one or more other scouts:

// this is for any other scout in the troop to send the pong back
function on.message.group {if(arg(1) == 4) { led.green(10); message.group(5,arg(3)) } };

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants