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

Use ring buffer to broadcast messages from WiThrottle such as power status, speed, direction, turnout state #87

Open
davidcutting42 opened this issue Nov 21, 2020 · 7 comments
Labels
Enhancement New feature or request Needs Clarification Need more information from the requestor
Milestone

Comments

@davidcutting42
Copy link

davidcutting42 commented Nov 21, 2020

From #66

@davidcutting42 davidcutting42 added Enhancement New feature or request Needs Clarification Need more information from the requestor labels Nov 21, 2020
@davidcutting42 davidcutting42 added this to the v3.1.0 milestone Nov 21, 2020
@Asbelos
Copy link
Contributor

Asbelos commented Nov 22, 2020

This would depend on not having ethernet and wifi at the same time.. and also on the network stack redesign by @grbba

@grbba
Copy link
Contributor

grbba commented Nov 22, 2020

What does that actually mean ? WiThrottle send something else than the actual WiThrottle protocol to the CommandStation ?
What does that to the User Experience and why would/do I need it ?

@Asbelos
Copy link
Contributor

Asbelos commented Nov 22, 2020 via email

@grbba
Copy link
Contributor

grbba commented Nov 22, 2020

So what you are basically saying is that the CS is issuing messages to all connected WiThrottle clients without having received a command before based e.g. on a timer or some other trigger operating in the CommandStation is that right ?

@Asbelos
Copy link
Contributor

Asbelos commented Nov 22, 2020 via email

@grbba
Copy link
Contributor

grbba commented Nov 22, 2020

Sounds reasonable but the only observation i would have is to look into the trade off between the cost off polling and the cost of having the observers looking for changes in the data you want to send. Obviously this can be done this way and indeed would be nice. Second observation would be if the current WiThrottle based clients can handle this type of async data flow ( ED and WiThrottle maybe but all the others around maybe not and i can't remember if in the Doc about WiThrottle on the JMRI website that sort of capability is actually required by the protocol )

@marada1
Copy link

marada1 commented Nov 22, 2020

We have been playing around with the NRF network and CS. The polling does not seem to be an issue so far. The issue so far is communicating to the NRF board. Using a mega and the NRF boards they share a serial port. The solution is to remove the NRF board from the CS which is a good idea and have the CS communicate to the NRF network using serial2 in the case of the Mega or software serial using an Uno. But when the 2 were combined and the serial part disabled, it worked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request Needs Clarification Need more information from the requestor
Projects
None yet
Development

No branches or pull requests

4 participants