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

Add range command [Feature Request] #324

Open
BlackthornYugen opened this issue Apr 14, 2024 · 0 comments
Open

Add range command [Feature Request] #324

BlackthornYugen opened this issue Apr 14, 2024 · 0 comments
Labels
Type: Enhancement Adds or improves a feature

Comments

@BlackthornYugen
Copy link

I'm curious about the potential of using Ultrawideband (UWB) technology to auto-correct positional drift in tracking systems. The idea is for the Slime server to periodically initiate distance checks between sensors. Would implementing additional range commands to facilitate this process be effective?

// get the distance to another sensor
void requestRangeOnce(const std::string& targetSensorUUID);

// get the distance to another sensor every n ms, if already ranging that sensor the interval is updated
void startPeriodicRangeRequest(const std::string& targetSensorUUID, std::chrono::milliseconds interval);
   
// stop ranging one sensor
void stopPeriodicRangeRequest(const std::string& targetSensorUUID);

void stopAllPeriodicRangeRequests();

image

@startuml
participant SlimeServer
participant "Sensor A" as A
participant "Sensor B" as B

SlimeServer -> A : Request range to Sensor B
A -> B : Send UWB ping
B --> A : UWB ping response
A -> SlimeServer : 6cm
@enduml

Has anyone looked into UWB to assist with tracking previously? Is this worth experimenting with?

My plan is to order something like a SR040HN and to connect it with serial to a ESP8266 or a ESP32.

@Vyolex Vyolex added the Type: Enhancement Adds or improves a feature label May 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Enhancement Adds or improves a feature
Projects
None yet
Development

No branches or pull requests

2 participants