Comments (5)
Hello.
I believe the much more ROS way is to have one node running per each device, but that's seems impossible without preliminary changing the addresses of each rangefinder.
So what if to have something (a script, a node, ...) that will sequentially change the addresses of each device, and only after that to have necessary count of these nodes running, each with adjusted i2c_address
parameter in appropriate way?
from vl53l1x_ros.
the idea is to have a 'ring' of sensors to have a 360 degree coverage on the horizontal plane
What is required to get something similar to this: https://github.com/mjbogusz/vl53l0x-linux/blob/master/examples/continuousMultipleSensors.cpp ?
from vl53l1x_ros.
I get your idea. I guess there is two options:
- Extend my node to add support running for multiple rangefinders. This is a pretty huge change, and also seems not too much ROS way to me (where one node per one device usually used).
- Write a program or script, that changes addresses of each rangefinder connected, and only after that run N instances of this node, each for each rangefinder. This solution is more universal and can be used not only with this package.
from vl53l1x_ros.
all right
could you be more specific on 'huge change' on method 1 ?
for example, where can I find documentation on how to write my own i2c/gpio functions?
like the one declared in the API https://github.com/okalachev/vl53l1x_ros/blob/master/vl53l1x/lib/platform/vl53l1_platform.h
regarding the VL53L1_GPIO*
from vl53l1x_ros.
Here is my implementation of I2C functions, that are needed to the library, based on Linux API:
- https://github.com/okalachev/vl53l1x_ros/blob/master/vl53l1x/lib/platform/vl53l1_platform.c
- https://github.com/okalachev/vl53l1x_ros/blob/master/vl53l1x/src/i2c.cpp.
The change is to update the API of the node a little, to make it possible to configure multiple I2C addresses and multiple set of parameters for each I2C address. Adding preliminary procedure for updating the addresses of the rangefinders. Plus publishing multiple result topics, each in its own namespace.
But as I said, personally I like the method 2 more.
from vl53l1x_ros.
Related Issues (6)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vl53l1x_ros.