-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compatiable for DJI O3 #9384
Compatiable for DJI O3 #9384
Conversation
case SYM_PITCH_DOWN: | ||
return BF_SYM_PITCH_DOWN; | ||
return BF_SYM_PITCH; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is ambiguous. DJI should fix the font support.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mmosca Yes, but this patch should better than '?' since we can't push DJI to do this. May be I should add a minus here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not really. Ambiguity can be worse than a question mark.
You will never get full coverage of the OSD with O3, unless DJI implements support for INAV's font.
case SYM_HEADING: | ||
return BF_SYM_HEADING; | ||
return BF_SYM_ARROW_NORTH; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is trying a bit too hard. The inav icon represents a compass, this is picking an arrow pointing up.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mmosca But BF do not have something looks like "Compass", so we may choose something like char 'C' or just arrow to represent following number is for heading.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mmosca But BF do not have something looks like "Compass", so we may choose something like char 'C' or just arrow to represent following number is for heading.
There are a lot of symbols not included in BF. The goal for the BFCOMPAT modes is not to have 0 question marks, but to map the symbols that betaflight actually supports and make it clear when a symbol is not supported, without adding too much complexity to the code, or ambiguity to the OSD.
Unfortunatelly, only DJI can actually fix the overall situation. :(
@@ -2385,7 +2385,12 @@ static bool osdDrawSingleElement(uint8_t item) | |||
if (!failsafeIsReceivingRxData()) | |||
tfp_sprintf(buff, "%s%c", " ", SYM_BLANK); | |||
else | |||
tfp_sprintf(buff, "%4d%c", rxLinkStatistics.uplinkTXPower, SYM_MW); | |||
if (isBfCompatibleVideoSystem(osdConfig())) { | |||
tfp_sprintf(buff, "%4dMW", rxLinkStatistics.uplinkTXPower); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have not added units like this to avoid overcomplicating the osd code even more.
@@ -186,17 +186,17 @@ uint8_t getBfCharacter(uint8_t ch, uint8_t page) | |||
|
|||
case SYM_ALT_M: | |||
return BF_SYM_M; | |||
|
|||
case SYM_TOTAL: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is probably a valid suggestion.
I think overall, SYM_TOTAL sugestion is valid and can be merged, but I am not sold on the other items. We certainly don't want to change units to be fully spelled out, as that opens a can of worms and will add even more complexity to the main osd code, and not only on the bf_compat file. |
Also, some of the proposed introduce ambiguity(pitch up/down sharing the same symbol, for example), which is not good. |
|
||
case SYM_GFORCE: | ||
return BF_SYM_GFORCE; | ||
return 'G'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I’ve left my thoughts below. I don’t think it will surprise you much 😉
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am obviously a bit more accommodating there. Using G for the icon is a simple enough change, and since it did not change the symbol for the other axii, I am leaving towards it being ok to change.
Honestly, I think there have been enough changes for DJI. It’s about time they supported their customers. Instead of spending time and money trying to push competitors out of the market. |
@xuhao1 if you update the pull request to have only the SYM_TOTAL change and perhaps the G force one it will be more likely to be merged. Otherwise, if not, I can probably submit a pull request for the SYM_TOTAL on your behalf. |
OK, I will do so. And I think this one is also OK. case SYM_ALT_KM:
return BF_SYM_KM; |
Please don't. This is likely to fall into the ambiguity criteria and even if accepted, would be an incomplete fix, as we have other units as well. |
I merged the changes to SYM_TOTAL and GFORCE in a different pull request. Thanks for the pull request. :) |
Better compatibility for DJI O3, including:
Some is not perfect, but I believe they are better than '?'
Before
After
Performed fly test on DJI-O3 system with SpeedyBee F405Wing on BF 6.1.1, cherry pick to 7.0 and verified on ground.