@Hector-Nevarez Hi Hector,
Here is the output of voxl-wifi getmode
WiFi is currently set up as follows:
Mode: station
Hardware: Concurrent STA+AP capable (AP:uap0, STA:mlan0)
Station: Active on mlan0 - "Chiron"
SoftAP: Disabled
Thank you!
@Hector-Nevarez Hi Hector,
Here is the output of voxl-wifi getmode
WiFi is currently set up as follows:
Mode: station
Hardware: Concurrent STA+AP capable (AP:uap0, STA:mlan0)
Station: Active on mlan0 - "Chiron"
SoftAP: Disabled
Thank you!
Here is the relevant part from dmesg
[ 2130.644295] FW trigger fw dump
[ 2130.644332] =====FW trigger dump====
[ 2130.644347] ==== Start Receive FW dump event ====
[ 2130.645036] Create directory /data/dump_2130 successfully
[ 2130.645058] Firmware Dump directory name is /data/dump_2130
[ 2130.645078] === START DRIVER INFO DUMP===
[ 2130.645180] DRV dump data in /data/dump_2130/file_drv_info
[ 2130.653905] Drv info total bytes = 205002 (0x320ca)
[ 2130.653933] === DRIVER INFO DUMP END===
[ 2131.373918] ==== FW DUMP END: 1381912 bytes ====
[ 2131.374101] Start to process hanging
[ 2131.374170] Cancel all pending cmd and txrx queue
[ 2131.374381] Block woal_cfg80211_del_key in abnormal driver state
[ 2131.374408] Block woal_cfg80211_del_key in abnormal driver state
[ 2131.374430] Block woal_cfg80211_del_key in abnormal driver state
[ 2131.374451] Block woal_cfg80211_del_key in abnormal driver state
[ 2131.374472] Block woal_cfg80211_del_key in abnormal driver state
[ 2131.374493] Block woal_cfg80211_del_key in abnormal driver state
[ 2131.477115] Block woal_cfg80211_scan in abnormal driver state
[ 2132.479524] Block woal_cfg80211_scan in abnormal driver state
[ 2133.481978] Block woal_cfg80211_scan in abnormal driver state
[ 2134.484164] Block woal_cfg80211_scan in abnormal driver state
[ 2135.486210] Block woal_cfg80211_scan in abnormal driver state
[ 2136.489052] Block woal_cfg80211_scan in abnormal driver state
[ 2137.491936] Block woal_cfg80211_scan in abnormal driver state
We are using the Bots Unlimited wifi board attached directly to our voxl2 board. It seems like the wifi driver will sometimes randomly crash with this message being repeated in dmesg: "Block woal_cfg80211_scan in abnormal driver state". When this happens the drone can no longer connect to wifi. We couldn't find any way in software to reboot the wifi board. To get it working again we have to power cycle the drone. Is there a fix for this?
I was using the voxl2 on my starling 2 drone out in the sun for a few hours on a ~80 F day. Commands which would normally be responsive like ros2 topic echoing, etc. were taking a long time to output any text so I thought it might be overheating and powered it off.
A few days later I tried turning it on and it doesn't boot up. I can't connect over adb shell. I get the following output from dmesg when plugging it in:
[31549.649340] usb 1-9: new high-speed USB device number 15 using xhci_hcd
[31549.800919] usb 1-9: New USB device found, idVendor=05c6, idProduct=900e, bcdDevice= 0.00
[31549.800933] usb 1-9: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[31549.800937] usb 1-9: Product: QUSB_BULK_SN:C67DF5D4
[31549.800941] usb 1-9: Manufacturer: Qualcomm CDMA Technologies MSM
[31549.800944] usb 1-9: SerialNumber: 22d3828
I see this in lsusb
Bus 001 Device 015: ID 05c6:900e Qualcomm, Inc. QUSB_BULK_SN:C67DF5D4
fastboot devices doesn't list anything.
Is there a way to fix or debug this? Thank you.
I saw that the voxl2 supports OpenGLES 3.1 and I would like to port over some of our OpenGL code to run on the voxl2. I am starting off by trying to get EGL to initialize with the following program but it is failing on the call to eglInitialize with error 0x3001 which is EGL_NOT_INITIALIZED. I am building with gcc egl-query.c -o egl-query -lEGL.
Is there any examples of using EGL/OpenGL or does anyone know how to get this working?
Thank you
#include <EGL/egl.h>
#include <EGL/eglext.h>
#include <stdio.h>
int main(void)
{
EGLDisplay display;
EGLint major, minor;
display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
if (display == EGL_NO_DISPLAY) {
printf("eglGetDisplay failed\n");
return 1;
}
if (!eglInitialize(display, &major, &minor)) {
EGLint err = eglGetError();
printf("eglInitialize failed (0x%x)\n", err);
return 1;
}
printf("EGL initialized successfully\n");
printf("EGL version: %d.%d\n", major, minor);
const char* vendor = eglQueryString(display, EGL_VENDOR);
const char* version = eglQueryString(display, EGL_VERSION);
const char* extensions = eglQueryString(display, EGL_EXTENSIONS);
const char* clientapis = eglQueryString(display, EGL_CLIENT_APIS);
printf("EGL_VENDOR: %s\n", vendor ? vendor : "(null)");
printf("EGL_VERSION: %s\n", version ? version : "(null)");
printf("EGL_CLIENT_APIS: %s\n", clientapis ? clientapis : "(null)");
printf("EGL_EXTENSIONS:\n%s\n", extensions ? extensions : "(null)");
eglTerminate(display);
return 0;
}