Hardware: VOXL 2 Mini (M0104) on a Stinger. SKU /data/modalai/sku.txt: MRB-D0013-6-V1-C33-T8-M26-X8 (X8 = Lepton). ADB serial 6299769b. USB VTX dongle Realtek 0bda:8812, product string "VTX Gen 1.5". Paired ModalAI VRX (same vtx.key, 5825 MHz).
Software version: Full flash today of voxl2-mini_SDK_1.6.4.tar.gz (MD5 12c726bed8e72d68ec489533e15ba9ef), /data preserved, SKU reconfigured as above. Last confirmed after flash (bird is offline now, so this is not a fresh voxl-version paste):
- System image
1.8.08-M0104-14.1a-perf
voxl-suite 1.6.4 (was 1.5.0)
voxl-lepton-server 1.4.0 (was 1.3.3)
voxl-vtx 2.2.27 (was 1.4.7)
Configuration / services: SoftAP off. voxl-vtx and voxl-lepton-server enabled and active. VTX RF: 5825 MHz, bandwidth 20, FEC on, STBC 0, /data/modalai/vtx.key present. Active VTX source was switched between hires_low_latency_misp_encoded and lepton0_encoded. Lepton config is stock SPI bus 0, en_rotate: true, shutter_mode: manual.
What I am trying to do:
Send the downward Lepton to the VRX using the stock SDK 1.6 path: voxl-lepton-server publishes /run/mpa/lepton0_encoded (H265), and voxl-vtx uses that pipe as its profile source. RGB already works on the same radio and VRX.
What actually happens:
lepton0_raw and lepton0_color publish live frames (RAW8 / RGB, 160×120, ~8.8 fps). /run/mpa/lepton0_encoded/info exists and reports string_format: H265, 160×120, 9 fps, server voxl-lepton-server. voxl-inspect-cam lepton0_encoded stays at "Waiting for Server" indefinitely. No encoded frames, with or without voxl-vtx subscribed.
voxl-lepton-server log:
WARNING: OMX SetTargetBitrate: H265 CBR requires bps >= 3.0Mbit (1000000 bps provided). Using FPS hack. scale = 3.000000
H265 encoder initialized (160x120 @ 9 fps)
WARNING: ion buffer pool exhausted — reusing idx N (age=~455ms, gen=…)
The ION warning repeats on every frame from first boot. Verbose run also prints "Received a complete frame, publishing" for the raw path, then the same ION exhaustion, and the encoded client still never receives a frame.
Pointing VTX at lepton0_encoded makes the VRX drop to signal lost. Pointing it back at hires_low_latency_misp_encoded restores video immediately (same frequency, same key). So the RF link, key, and VRX are fine. The encoded Lepton pipe is empty.
Steps to reproduce:
- Flash VOXL 2 Mini SDK 1.6.4, preserve
/data, configure SKU MRB-D0013-6-V1-C33-T8-M26-X8.
- Confirm
voxl-lepton-server is running and voxl-inspect-cam lepton0_raw shows ~9 fps.
voxl-inspect-cam lepton0_encoded — stays "Waiting for Server".
- With SoftAP off and VTX on a channel the VRX already locks (here 5825),
voxl-configure-vtx -s hires_low_latency_misp_encoded — VRX shows video.
voxl-configure-vtx -s lepton0_encoded and restart voxl-vtx — VRX loses signal. lepton0_encoded/info is present; voxl-inspect-cam still waits.
Question: On SDK 1.6.4 / voxl-lepton-server 1.4.0, is lepton0_encoded supposed to emit H265 for a 160×120 Lepton, or is the encoder known not to produce frames (ION pool exhausted, OMX 1 Mbit vs 3 Mbit CBR warning)? Release notes for 1.6.6 only say lepton-server 1.4.1 is a rebuild against libvoxl-codec 0.1.1 ("OMX parity with camera-server"). Is that the fix for this, and can you provide voxl2-mini_SDK_1.6.6.tar.gz (MD5 5e412872759cca0c5252aa02c29b31ef)? 1.6.6 is not on the public download page.