Voxl2 analog sensor interface
-
Hi,
I do not see an ADC or similar pin on the Voxl2 to read an analog signal coming from a flex sensor
is there any other way to achieve this? maybe the gpio pins on J19 ?thank you!
-
@tiralonghipol Correct, there is not an ADC input on VOXL 2
-
@Moderator awesome!
I saw in the px4 drivers that the module i'm trying to read (ADS1115) is already supported
what I plan to do, since I am not using pin 4 and 5 on J19 (sda,scl) is to read the adc instead of the gps.now the problem is that when I plug the ADC breakout board
and i
voxl2:/$ i2cdetect -r -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --there is nothing on i2c-0.
actually there is no register detected on 0,1,2 (3 should not be used)what am I doing wrong?
the physical connection is [J19 <-> adc board]:
pin 1 (5V) <-> Vin
pin 4 (SCL) <-> scl
pin 5 (SDA) <-> sda
pin 12 (GND) <-> gnd -
@Moderator
Solved using the J5 connector instead! -
@Moderator
so I am able to correctly read 2 flex sensors using a python library.But is it possible to achieve the same via the px4 driver itself? if yes, where should I look into?
should I rebuild the voxl-px4 image enabling the ads1115 driver?
I believe it is disabled by default, if I understood correctlyjust to give some context:
let's say the arms of my quad are able to passively flex and I read the 4 deflection angles via this ADC.
the ultimate goal I am trying to achieve is to send this analog information to the control actuator matrix and adapt it real time, taking into account the deflectionAny help is highly appreciated thanks
-
@tiralonghipol That driver is not built or included in the px4 dsp build. So you would need to add that and then add it's start command to the /usr/bin/voxl-px4-start script file. You would need to specify
-b 4as an option to that start command to choose the proper bus. -
@Eric-Katzfey thank you Eric!
I figured out during our time-zone difference!
I was actually able to use the pins reserved for the mag
so I built the docker, added the driver, modified the start on the correct bus but now I am unsure: where are these values published? lol========== Starting ads1115 ADC =========== INFO [qshell] Send cmd: 'ads1115 start -X -b 1' INFO [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic INFO [muorb] SLPI: qshell gotten: ads1115 start -X -b 1 INFO [muorb] SLPI: arg0 = 'ads1115' INFO [muorb] SLPI: arg1 = 'start' INFO [muorb] SLPI: arg2 = '-X' INFO [muorb] SLPI: arg3 = '-b' INFO [muorb] SLPI: arg4 = '1' INFO [muorb] SLPI: *** I2C Device ID 0x904809 9455625 INFO [muorb] SLPI: ads1115 #0 on I2C bus 1 INFO [muorb] SLPI: (external) INFO [muorb] SLPI: address 0x48 INFO [muorb] SLPI: INFO [muorb] SLPI: Ok executing command: ads1115 start -X -b 1 INFO [qshell] qshell return value timestamp: 791748467, local time: 791750038 INFO [uORB] Advertising remote topic sensor_baro INFO [qshell] Send cmd: 'sensors start' INFO [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic INFO [muorb] SLPI: qshell gotten: sensors start INFO [muorb] SLPI: arg0 = 'sensors' INFO [muorb] SLPI: arg1 = 'start'could be this one?
INFO [uORB] Advertising remote topic adc_report -
@tiralonghipol I have never used that sensor but from the code it looks like adc_report is indeed the data it is publishing.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login