Support & Discussion
ulanding light + arducopter => "bad lidar health", and no readings
Hi,
I'v connected the ulanding to a pixhawk running the latest arducopter. I'v configured - RNGFNDR_TYPE to 11, SERIAL4_PROTOCOL to 12 and SERIAL4_BAUD to 115. I've wired the ulanding according to:
https://aerotenna.readme.io/docs/%CE%BClanding-integration-apm-pixhawk
I get "bad lidar health" error message in the mission planner, and the sonar data indicates constant 0.
Any help? what am I doing wrong?
Thanks!!
Posted by H E about 6 years ago
uLanding Issues with Arduplane 3.8.0
All,
My goal is to use the Aerotenna uLanding-C1 for the purpose of maintaining AGL and improving landing performance.
Current Configuration:
Pixhawk 2.1: ArduPlane V3.8.0
GCS: Mission Planner 1.3.49 build 1.1.6410.20232
Altimeter: Aerotenna uLanding-C1 (Serial)
I have the uLanding connected to Serial4 (GPS2) of the Pixhawk 2.1.
SERIAL4_PROTOCOL: 12 (uLanding Parameter value)
SERIAL4_BAUD: 115 (uLanding default Baud Rate)
The only parameter I have changed regarding the range-finder functionality is:
RNGFND_TYPE: 11 (uLanding Parameter value)
I have tried adjusting various values related to the upper and lower bounds, but none have seemed to affect readout. See below.
Unexpected Behavior:
Upon connecting Mission Planner to the Pixhawk, SonarRange reads "0". If I move the altimeter around, 1-3 three similar windows open (??), and the SonarRange value is populated. In most cases, a value of 6.35 (cm) is displayed regardless of orientation and obstructions before the altimeter. On occasion, sporadic (erroneous) values are displayed.
Debugging:
I have used the provided python scripts to manually read out serial data from the uLanding - the values roughly correspond to appropriate distances, though I've considerable concern regarding the consistency of the data. The distances have a considerable number of outliers in the positive direction.
Side Question:
Has anyone implemented uLanding variants with a CAN/I2C option in Ardupilot?
I was hoping someone with a similar configuration utilizing the uLanding might give advice on the proper configuration (parameters) or known issues with my configuration.
Current theories:
- PH2.1 cannot sustain 115 kbaud on Serial4? When I tried lowering to 9600 baud, the value reset itself to 115 kbaud on next startup and connect cycle.
- Some parameter related to the abundance of laser analog/PWM altimeters is interfering with the value?
See below [Forum Link] for an example of the issue (including mystery window) and a copy of my parameters.
NOTE: This question was originally asked here <https://discuss.ardupilot.org/t/aerotenna-ulanding-extensive-issues/20062> as I figured it was a general Ardupilot issue. There, it was recommended that I consult here, as the problem may be driver related.
Posted by Evan Williams over 6 years ago
Could you please help for the following issue (run PX4 on OcPoc Zynq box)?
We try to run PX4 on OcPoc Zynq platform. Could you please help for the following issue (run PX4 on OcPoc Zynq box)?
root@ocpoc_sw:~# ./px4 posix-configs/ocpoc/px4.config
commands file: posix-configs/ocpoc/px4.config
______ __ __ ___
| ___ \ \ \ / / / |
| |_/ / \ V / / /| |
| __/ / \ / /_| |
| | / /^\ \ \___ |
\_| \/ \/ |_/
px4 starting.
INFO [param] selected parameter default file /home/root/rootfs/eeprom/parameters
157342 Reset MPU9250
161989 initializing mpu9250 driver without mag support
168089 Error: i2c write failed. Reported -1 bytes written
168134 error: unable to communicate with the hmc5883 mag sensor
168153 error: mag sensor initialization failed, sensor read thread not started
ERROR [df_hmc5883_wrapper] HMC5883 start fail: -5
ERROR [df_hmc5883_wrapper] DfHmc9250Wrapper start failed
Command 'df_hmc5883_wrapper' failed, returned -5
169211 IMU temperature initialized to: 42.038780
WARN [commander] LED: getHandle fail
WARN [commander] LED init failed
WARN [commander] Buzzer: px4_open fail
WARN [commander] Buzzer init failed
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: FW_CLMBOUT_DIFF
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
ERROR [lib__controllib] error finding param: VT_B_DEC_MSS
ERROR [lib__controllib] error finding param: VT_B_REV_DEL
INFO [dataman] Unknown restart, data manager file 'rootfs/fs/microsd/dataman' size is 11405140 bytes
ERROR [lib__controllib] error finding param: FW_ARSP_MODE
INFO [mavlink] mode: Normal, data rate: 2880 B/s on /dev/ttyPS1 @ 57600B
INFO [logger] logger started (mode=all)
pxh> INFO [linux_pwm_out] Loaded mixer from file ROMFS/px4fmu_common/mixers/ocpoc_quad_x.main.mix
INFO [linux_pwm_out] Starting PWM output in ocpoc_mmap mode
ERROR [sensors] Accel #0 fail: TOUT!
ERROR [sensors] Gyro #0 fail: TOUT!
107323279 FIFO corrupt, temp difference: 13.609417, last temp: 48.556786, current temp: 34.947369
107323997 FIFO overflow
107325369 IMU temperature initialized to: 48.584488
Posted by Fylood over 6 years ago
Where can i get hardware schematic of OcPoc board with Zynq?
Where can i get hardware schematic of OcPoc board with Zynq?
Posted by Fylood over 6 years ago
PX4 build for OcPoc
I am having problems with PX4 on OcPoc.
I am building on a virtual machine with Ubuntu 16.04 where I have installed the depencies with https://raw.githubusercontent.com/PX4/Devguide/master/build_scripts/ubuntu_sim.sh.
I have followed the instructions in https://aerotenna.readme.io/docs/px4-setup. Please, note that build instructions in https://aerotenna.readme.io/docs/downloading-required-files (make posix_ocpoc_ubuntu) seem to be wrong, so I built using make aerotenna_ocpoc_ubuntu (as in https://github.com/PX4/px4_user_guide/blob/master/en/flight_controller/ocpoc_zynq.md).
However, when I run px4 in Ocpoc (./px4 posix-configs/ocpoc/px4.config from /root folder) I got the following error:
root@ubuntu-armhf:~# ./px4 posix-configs/ocpoc/px4.config
INFO [px4] Creating symlink posix-configs/ocpoc/px4.config -> /root/etc
ERROR [px4] Error opening startup file, does not exist: etc/init.d/rcS
If I run px4 from / folder, I can run it but when I execute any command (such as led_control on), I get a segmentation fault:
root@ubuntu-armhf:/# /root/px4 /root/posix-configs/ocpoc/px4.config
px4 starting.
INFO [px4] Calling startup script: /bin/sh etc/init.d/rcS 0
INFO [px4] Startup script returned successfully
pxh> led_control on
Segmentation Fault
INFO [log] Backtrace: 0
On the other side, I have noticed that when I run px4 from /root folder, a link etc (in /root folder) to posix-configs/ocpoc/px4.config is generated.
It seems that there is some problem with my built, missing path or missing step in the build. Could you provide me with assistance to fix this problem?
Posted by Daniel about 5 years ago
Second telemetry port configuration, flashlight off or turning red
Hi,
I’m Sannie from ITPS Canada. We intend to use OcPoc on a fixed-wing airplane but we have several unsolved issues:
1) We want to have two telemetry ports to work at the same time, what is the code line to put to /media/user/rootFs/etc/init.d/ardupilot to configure the second telemetry port? I tried “-C /dev/ttyPS1 -C /dev/ttyS7” and apparently only one of the two ports work. I had to splice wire from one telemetry port to make both work at the same time.
2) The flashlight is always off when running arduplane module, but is fine when running arducopter module. I checked that the arduplane executable file looks different than the arducopter one. I got the arducopter module from aerotenna guys through email, and followed steps from the website to get the arduplane executable file.
3) I tried to load PX4 to another SD card as well following the procedure on the website, but the red flashlight was always on. on the GTKTerm screen it constantly shows red lines "ERROR [sensors] Accel #0" fail: TIMEOUT!" "ERROR [sensors] Gyro #0" fail: TIMEOUT!"
I appreciate a lot for your help!
Best regards,
Sannie
Posted by Sannie Xu almost 6 years ago
How to configure linux_sbus driver for PPM RC receivers
Hello, firstly I would like to say that we are trying to successfully run PX4 on a Microzed board with an ad-hoc additional board with sensor (IMU, GNSS, barometer, magnetometer). We thanks Aerotenna for the work done for porting PX4 to a ZYNQ processor.
About my question, I would like to know if the linux_sbus driver running on PX4 can automatically detect if the RC receiver signal is SBUS or PPM, or if it must be set for PPM RC receivers at compilation time. I understand that the linux_sbus driver supports both standards.
We have a PPM RC receiver and is not working. We have connected the PPM signal to the RX input of an UARTLITE IP core. We have tried to calibrate the RC transmitter using QGroundControl but QGC does not detect an RC signal.
I really appreciate any help you can provide.
Regards.
I will really appreciate any help you can provide.
Posted by Rodrigo Gonzalez about 6 years ago
RC seems not work well, what's wrong?
I connected Futaba RC(R2008SB), Dji's ESC and motors to your Zynq Mini Box based on guideline - https://aerotenna.readme.io/v1.0/docs/integrating-the-ocpoc-mini-zynq-into-a-pre-existing-airframe and then try to run px4 based on guideline - https://aerotenna.readme.io/v1.0/docs/px4-setup. It seems the system didn't work, I monitored PWM signal and found that no any change when I tried to control motor by RC radio. The RC radio and Dji's ESC/motors all worked well on my current Pixhawk platform. For Pixhawk platform, there is safty switch for arm and disarm (I didn't find it on Zynq Mini Box). Do I miss anything for Zynq Mini Box? Any comments?
Posted by Steven over 6 years ago
Can i use OcPoc hardware(Zynq) box with PX4 firmware to replace Pixhawk hardware(Cotex-M4F) with PX4 firmware?
Currently, i'm ongoing to use Pixhawk hardware with PX4 firmware on my aircraft. On my pixhawk platform, i used external Futaba RC, GPS etc. I want to know if i can use OcPoc hardware (Zynq) box with PX4 firmware to replace my current Pixhawk hardware (Cotex-M4F) with PX4 firmware. Thanks.
Posted by Steven over 6 years ago
Lidar & PX4flow doesn't work
Hello
after loading ardupilot on the ocpoc zynq mini, i can not get the data from Px4flow on APMplanner as shown on the ardupilot wiki
then by adding the lidar, I get to see the pX4flow data on APMplanner's Inspector Mavlink which is displayed for 1 second then it goes back to zero (opt_m_x & opt_m_y data, do not display continuously over time, sometimes one of them go to zero, sometimes both, every second,
and if I connect directly to the OcPoc via the cable i2c (6 pins), in a terminal I see the lidar data that appears (Lidar_distance) but still after a moment of operation (30 seconds ~ 40 seconds) the Lidar disconnects and displays a message that I add to the code here
-----------------------------------------------------
----AP_RangeFinder_PulsedLightLRF.cpp
-----------------------------------------------------
case PHASE_COLLECT: {
be16_t val;
// read the high and low byte distance registers
if (_dev->read_registers(LL40LS_DISTHIGH_REG | LL40LS_AUTO_INCREMENT, (uint8_t*)&val, sizeof(val))) {
uint16_t _distance_cm = be16toh(val);
// remove momentary spikes
if (abs(_distance_cm - last_distance_cm) < 100) {
state.distance_cm = _distance_cm;
update_status();
}
last_distance_cm = _distance_cm;
hal.console->printf("Lidar_distance =%d , check_reg_counter = %d \n",last_distance_cm, check_reg_counter);
} else {
//set_status(RangeFinder::RangeFinder_NoData);
hal.console->printf("Lidar...... RangeFinder_NoData \n");
}
hard : OcPoc zynq mini
soft: ardupilot 3.6-dev
sensors: Px4flow & Lidar lite V3
I do not know if if because of the insufficient power supply (two sensors are connected to the OcPoc) and the OcPoc is powered via USB
thanks for any help
Posted by Alex almost 6 years ago