Closed nerdCopter closed 4 months ago
Can you check if it is set to set osd_displayport_device = AUTO
somehow?
Can you check if it is set to
set osd_displayport_device = AUTO
somehow?
defaults
#
# get osd_displayport_device
osd_displayport_device = AUTO
Allowed values: NONE, AUTO, MAX7456, MSP, FRSKYOSD
# diff
# version
# Betaflight / STM32F405 (S405) 4.6.0 May 2 2024 / 12:55:20 (4640a5da9) MSP API: 1.46
# config rev: cdb9e49
# start the command batch
batch start
board_name FOXEERF405
manufacturer_id FOXE
# feature
feature TELEMETRY
feature LED_STRIP
feature OSD
# master
set osd_canvas_height = 13
profile 0
rateprofile 0
# end the command batch
batch end
set osd_displayport_device = MAX7456
results exact same.
# get osd_displayport_device
osd_displayport_device = MAX7456
Allowed values: NONE, AUTO, MAX7456, MSP, FRSKYOSD
Default value: AUTO
Did you try to power with battery?
"osdSetupNoOsdChipDetectWarning": {
"message": "<span class=\"message-negative\"><b>WARNING:</b></span> No OSD chip was detected. Some flight controllers will not properly power the OSD chip unless connected to battery power. Please connect the battery before connecting the USB (PROPS REMOVED!)."
},
that alert does not show; therefore i believe it detects the chip properly. currently, i'm unsoldered, but in the past, i could upload fonts to this FC without lipo. -- Although i cannot verify results, it processes upload-fonts from older UI. (progress bar). there is a chance my memory is wrong however :zany_face:
i do now recall recently ApexF7 (couple months), i was forced to debug-mode-workraround as well, to perform the font/logo upload.
tested with LiPo, same result
Button is disabled here:
if (!OSD.data.state.isMax7456FontDeviceDetected || !OSD.data.state.haveMax7456FontDeviceConfigured) {
$('.requires-max7456-font-device-detected').addClass('disabled');
}
where state would be
d.state = {};
d.state.haveSomeOsd = (d.flags !== 0);
d.state.haveMax7456Configured = bit_check(d.flags, 4);
d.state.haveFrSkyOSDConfigured = semver.gte(FC.CONFIG.apiVersion, API_VERSION_1_43) && bit_check(d.flags, 3);
d.state.haveMax7456FontDeviceConfigured = d.state.haveMax7456Configured || d.state.haveFrSkyOSDConfigured;
d.state.isMax7456FontDeviceDetected = bit_check(d.flags, 5) || (d.state.haveMax7456FontDeviceConfigured && semver.lt(FC.CONFIG.apiVersion, API_VERSION_1_43));
d.state.haveOsdFeature = bit_check(d.flags, 0);
d.state.isOsdSlave = bit_check(d.flags, 1);
d.state.isMspDevice = bit_check(d.flags, 6) && semver.gte(FC.CONFIG.apiVersion, API_VERSION_1_45);
Fresh flash on NEUTRONRCF435
@nerdCopter the issue seems to be isMspDevice
is true in your case.
Considering i've seen two other reports of this, it is weird; however, i have a working button now.
I do not know if the source of the problem is potentially: 1) failing PG-reset, or 2) Configurator not 100% honoring full-chip-erase, or 3) a dying flash-chip.
I used my boot-button to force DFU mode rather than relying on reboot into DFU. I toggled the full-chip-erase a couple times to force it enabled.
Upon flashing, defaults worked as expected to enable the Font Manager button.
I also noticed similar weirdness when testing https://github.com/betaflight/betaflight-configurator/pull/3823 / https://github.com/betaflight/betaflight/pull/13404 where flashing did not present LED Strip option/tab even though it was enabled in the cloud-build. re-flashing the same hex resolved it.
still having trouble with this... (did not try with LiPo here)
what causes isMax7456FontDeviceDetected
to be false when:
(src/js/tabs/osd.js:2280: d.state.isMax7456FontDeviceDetected = bit_check(d.flags, 5);
)
diff
# master
set osd_warnings_pos = 14740
set osd_displayport_device = MAX7456
set osd_canvas_width = 30
set osd_canvas_height = 13
set vcd_video_system = NTSC
set displayport_msp_fonts = 0,0,0,0
what causes haveMax7456Configured
to be false? when:
# get osd_displayport_device
osd_displayport_device = AUTO
Allowed values: NONE, AUTO, MAX7456, MSP, FRSKYOSD
# get vcd_video_system
vcd_video_system = AUTO
Allowed values: AUTO, PAL, NTSC, HD
otherwise what causes isMax7456FontDeviceDetected
to be false when:
diff
# master
set osd_displayport_device = MAX7456
set osd_canvas_height = 13
set vcd_video_system = NTSC
sorry, i have some clarity here
sorry, i have some clarity here
It looks like that. Now to be able to customize OSD I have to connect the battery to drone before flashing new FW and keep an eye on VTX to not get overheated. Earlier it just went fine via USB.
Hhow it happened to work flawlessly in 4.4.3 version? Why this function is in fact degraded in newer version?
@StadnikSindar , same hardware worked on 4.4.3 but not 4.5.x? i have some hardware that requires lipo, and others that do not.
Yes, exactly. I work with SpeedyBee F405V3 and on 4.4.3 the OSD "font editor" was available after FW flashing via USB without battery. On 4.5.0 and 4.5.1 as well the "font editor" button remains inactive uness you connect battery before flashing FW. And even in that case using battery does not guarantee. Sometimes it takes 2 attempts of flashing to make button "font editor" become active.
Got the same problem with 4.5.1, SpeedyBee F405 V3 and SpeedyBee TX800. I tried to flash 4.5.0 and 4.5.1 with and without battery but no success. I confirm there is no such issue with 4.4.3. However I managed to get it, not by flashing but by enabeling OSD on Configuration tab with battery + Save/Reboot. Not sure about the exact combination, but after this, the OSD was working (not working before) and Font button unlocked. Hope this could help other guys coming here.
Describe the bug
Font Manger button stuck in disabled state as reported by other pilots a few times. Experienced the same myself and typically use debug-build and just enable it. Code either not setting or respecting
![image](https://github.com/betaflight/betaflight-configurator/assets/56646290/a515b610-e79f-4a1d-ba2e-1141e008115b)
requires-max7456-font-device-detected
.reference https://github.com/betaflight/betaflight-configurator/pull/1927
To Reproduce
Flash target with
OSD (SD)
only. Maybe other combos, untested.vcd_video_system = AUTO, NTSC, PAL does not matter.
Expected behavior
Font Manager button enabled.
Configurator version
10.10 release; 11.0 8ae2b050
Flight controller configuration
Add any other context about the problem that you think might be relevant here
No response