Commit Graph

216 Commits

Author SHA1 Message Date
Patrick José Pereira a902c1d54b AP_OSD: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Andrew Tridgell cfe63f8657 AP_OSD: changed OSD screen switching logic
this prevents us constantly changing screens when a PWM is given that
matches multiple screens. Instead the first matching screen is used
2021-02-03 10:09:41 +11:00
Andrew Tridgell 12b93e2922 AP_OSD: fixed valgrind errors with AP_Param::ParamToken 2021-01-26 10:43:09 +11:00
vierfuffzig c4a644100d AP_OSD: refactor current panel and add 2nd instance 2020-12-02 06:27:59 +11:00
Andrew Tridgell 1bef41b42e AP_OSD: fixed param metadata for several OSD settings
only found now we build OSD for SITL
2020-12-01 18:34:37 +11:00
Andrew Tridgell 42b1d2135a AP_OSD: fixed enable of OSD on boards with no built-in OSD
this fixes MSP enable
2020-12-01 18:34:37 +11:00
Michel Pastor eb88e6a37c AP_OSD: Fix vertical speed varying length 2020-12-01 11:20:16 +11:00
Peter Barker 3baaa84de1 AP_OSD: remove duplicate parameter definition 2020-11-24 12:15:15 +11:00
vierfuffzig e830494f0f AP_OSD_Screen: move vspeed decimal switch to 10 m/s 2020-11-18 09:27:54 +11:00
Andrew Tridgell 3a0e494085 AP_OSD: fallback to font 0 on load failure
this will allow us to reduce the number of fonts we include as
standard without breaking existing setups
2020-11-18 09:11:36 +11:00
Andrew Tridgell a2d86eac6d AP_OSD: allow for loading fonts from sdcard
user can put fontN.bin on their sdcard and it will replace the font in
romfs. This makes for easy font development, and allows for multiple
languages

This replaces #15668
2020-11-18 09:11:36 +11:00
yaapu 026ddfa679 AP_OSD: fix for sim_vehcile --osdmsp 2020-11-15 15:01:13 +11:00
Andrew Tridgell 8c59575646 AP_OSD: support callsign display on OSD
use a file "callsign.txt" on the sdcard for callsign
2020-11-12 14:22:44 -08:00
Andy Piper 8cd9af5ddd AP_OSD: refactor to enable a TX-only set of parameter screens
add accessor for getting parameter names
add camel-case conversion for parameters names
enable OSD parameters unless HAL_MINIMIZE_FEATURES
correct OSD parameter documentation
don't default to TXONLY
2020-11-11 18:13:11 +11:00
Iampete1 c591e45e59 AP_OSD: get wind speed from wind vane on rover 2020-10-13 11:39:43 +11:00
vierfuffzig 60b37f395e AP_OSD_Screen.cpp: add decimal precision to vspd 2020-10-06 10:17:43 +11:00
Michel Pastor 8465588467 AP_OLC: clean namespace and use constexpr instead of init method 2020-10-01 09:40:45 +10:00
giacomo892 4eeccb61cd WAF: Add AP_OLC to build 2020-10-01 09:40:45 +10:00
giacomo892 b00d3e00bc AP_OSD: Add OLC (pluscode) element 2020-10-01 09:40:45 +10:00
Andy Piper 46d4d9a97e AP_OSD: use cleaner conditional compilation for the various OSD options
provide suitable defaults for parameter screens on different vehicles
build fixes
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2020-09-16 18:11:54 +10:00
vierfuffzig ca95e7865a AP_OSD_Param_Setting: fix copter FS_OPTIONS mnemonics 2020-09-15 09:26:46 +10:00
Hwurzburg f78a09ba2a AP_OSD: fix white space error preventing emit to Wiki 2020-09-13 12:16:57 +10:00
Andy Piper 04b3b1f4c2 AP_OSD: re-enable OSD parameters on 1Mb boards since it wasn't doing anything
Make sure OSD parameters can be disabled in hwdef.dat
2020-09-10 18:10:32 +10:00
Andy Piper eab127ffa3 AP_OSD: disable OSD parameter support on 1Mb boards 2020-09-09 20:36:42 +10:00
Andy Piper c483c04d4b AP_OSD: separate parameter screen
display parameter names and types and allow modification via stick gestures
add support for updating selected parameters
support symbolic names for cetain options with add vehicle specific labels
add support for OSD parameter access and modification over mavlink
save OSD parameter when setting
add missing serial protocols
set defaults on settings correctly
re-organise defaults for NTSC screens and add 9th parameter
allow parameter control to be disabled
add plane aux options (from vierfuffzig)
only enable osd param on bitmap enabled backends
make sure draw() is elided on non-bitmap backends
2020-09-09 20:36:42 +10:00
Andrew Tridgell c7b03dc936 AP_OSD: added missing OSD types to param docs 2020-09-09 06:35:50 +10:00
vierfuffzig a547af97c6 AP_OSD_Screen.cpp: fix aviation unit vspd sym
in aviaition units it's ft / min actually, not ft / s. stumbled across this thanks to increased attention to the vspeed panel using @samuelctabor awesome soaring addons ;)
2020-09-08 08:13:24 +10:00
Andrew Tridgell 8ca9af72e0 AP_OSD: prevent startup segfault 2020-09-02 05:56:46 +10:00
Andrew Tridgell 0e55a63be2 AP_OSD: skip backend drawing for boards without font backends
this saves a lot of flash space on boards that want the MSP OSD system
but not the MAX7456 backend
2020-09-02 05:56:46 +10:00
Andrew Tridgell 25746ef27e AP_OSD: avoid building MAX7456 driver without an SPI device for it 2020-09-02 05:56:46 +10:00
yaapu b8b285b359 AP_OSD: added support for an MSP based OSD 2020-09-02 05:56:46 +10:00
bugobliterator 13188b5e7e AP_OSD: ensure that we use environment Python interpreter 2020-08-03 14:02:09 +10:00
Iampete1 3a0329822a AP_OSD: apply aspect ratio correction to horizon 2020-07-21 20:08:03 +10:00
Peter Barker 8867457c4f AP_OSD: fix pointless multiple/divide
This is scaling code; OSD wants 0 to 99 vs 0 to 255 the uint8_t
function gives.  Use the unerlying 0-1 function in the OSD code in
preference to unscaling it from 255 then scaling to 99
2020-06-10 09:39:59 +10:00
Andrew Tridgell 6360c67858 AP_OSD: avoid build when OSD disabled 2020-03-28 15:28:03 +11:00
Henry Wurzburg bf1b48b940 AP_Notify: add mah consumed to BAT line in OLED displays 2020-02-18 15:15:52 +11:00
Peter Hall e2c4d453e1 AP_OSD: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Barker 9410d40b2f AP_OSD: reduce scope of WITH_SEMAPHORE
The backend write() calls don't look nasty ATM - but we should get in,
get out data and get out again ASAP.
2020-01-14 10:36:44 +11:00
Andy Piper a09c18386e AP_OSD: allow osd to be disabled 2019-12-30 13:02:04 +11:00
Andrew Tridgell c4d78a7d8c AP_OSD: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
vierfuffzig 1f9b2f712e AP_OSD: add clock panel 2019-10-07 19:55:42 +11:00
Henry Wurzburg cf3bd2487b AP_OSD: add current averaging filter to reduce jitter (~5 sample timeconstant) 2019-09-28 14:17:59 +10:00
Henry Wurzburg 11c633be32 AP_OSD: distance total fix for slow vehicles 2019-09-27 07:19:55 +10:00
Henry Wurzburg 59ce3f1007 AP_OSD: scale xtrack, add precision for distances <10 units 2019-09-26 12:56:12 +10:00
Henry Wurzburg f592806184 AP_OSD: formatting fixes 2019-09-25 15:01:59 +09:00
Henry Wurzburg 57dc253be8 AP_OSD: Add autoranging to current and speed displays 2019-09-17 07:34:46 +10:00
Andrew Tridgell 6af9d55e70 AP_OSD: fixed vsnprintf return assumption 2019-09-12 08:43:31 +10:00
vierfuffzig 6b1046f0ac AP_OSD: add primary airspeed item
and fix param description
2019-08-02 09:22:55 +09:00
vierfuffzig d1f80a841f AP_OSD_Screen: fix param descriptions 2019-07-20 14:23:55 +10:00
Henry Wurzburg ee079a50dc OSD: fixes missing param def for SATS_EN and typos 2019-07-18 08:51:44 +10:00
Henry Wurzburg deb3d6d8c3 OSD: Add panel parameter descriptions 2019-07-17 09:42:49 +10:00
Michael du Breuil 10410b696c AP_OSD: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil 631b4380e1 AP_OSD: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 2ab8a2318e AP_OSD: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil ba4c589ff2 AP_OSD: Fix depending upon AP_Logger for AP_BattMonitor header 2019-06-18 10:02:05 +10:00
Andrew Tridgell 48ac028cd0 AP_OSD: take ahrs and baro semaphores
this ensures OSD data is self-consistent within each item
2019-05-30 08:33:12 +10:00
Peter Barker 32a6f0026a AP_OSD: add mutex against maniplating sf windows from different threads 2019-05-21 09:21:56 +10:00
Andrew Tridgell b3b59c7298 AP_OSD: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
SergeyBokhantsev cd166ec911 AP_OSD: Switch screens basing on FS state
AP_OSD: Switch screens basing on ARM state
2019-04-23 20:41:07 +10:00
Pierre Kancir 492c7532eb AP_OSD: move get_bearing_cd to Location and rename to get_bearing_to 2019-04-06 09:10:28 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 12a6e9ad69 AP_OSD: replace location_offset() and get_distance() function calls with Location object member function calls
This allows removing duplicated code
2019-02-28 11:44:09 +11:00
Tom Pittenger 1648a6544b AP_OSD: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Alexander Malishev 15db7a6b97 AP_OSD: normalize whitespace symbols
This fixes garbage on the screen (\n and \r symbols are not mapped
inside used fonts).
Thanks to @atshort for reporting the issue.
2019-01-22 13:11:50 +11:00
vierfuffzig 64915c69b6 AP_OSD: check for airspeed object 2018-12-03 07:57:46 +11:00
vierfuffzig 5a262a7f6a AP_OSD: add secondary airspeed item 2018-12-03 07:57:46 +11:00
Andrew Tridgell 42b89e7427 AP_OSD: flash GPS if no lock 2018-11-29 08:49:23 +11:00
vierfuffzig 47463e8159 AP_OSD: set default type for boards with onboard OSD 2018-11-09 08:12:51 +11:00
Peter Barker 41b6f30450 AP_OSD: add include for WITH_SEMAPHORE 2018-10-22 11:15:47 +11:00
Peter Barker de3244e26c AP_OSD: account for snprintf now null-terminating strings 2018-10-21 07:54:30 +11:00
vierfuffzig 83f4f5c347 AP_BLHeli: add motor pole parameter 2018-10-20 10:15:34 +11:00
vierfuffzig 5b955333ce AP_OSD: fix BLHAMPS current divisor 2018-10-19 15:05:53 +11:00
Andrew Tridgell 17049ff5f5 AP_OSD: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Randy Mackay 8d3b093bbf AP_OSD: resolve compiler warning 2018-09-28 15:17:40 +09:00
Andrew Tridgell 1e0ca409d1 AP_OSD: check we have an airspeed object 2018-09-11 22:23:53 +10:00
vierfuffzig 2936f24814 AP_OSD: battery support improvements
adds airpseed temperatur item
adds secondary batt instance items
switches used capacities to Ah above 9999 mAh
volt / amp / distance symbols reworked and realigned to specific font styles
2018-09-11 22:23:53 +10:00
Andrew Tridgell d98110084d AP_OSD: updated fonts for new OSD items 2018-09-11 22:23:53 +10:00
vierfuffzig 395820096a AP_OSD add external baro temperature item 2018-09-11 17:17:59 +10:00
cclauss 7291aa0d00 AP_OSD: Simplify with the code enumerate()
* Avoid hardcoding the path to the python executable on the shebang line
* Using __with open() as__ automates file close().
2018-09-08 20:24:42 +10:00
Randy Mackay 305d927dd8 AP_OSD: resolve compiler warnings 2018-08-30 20:23:00 +09:00
Andrew Tridgell 83f293305f AP_OSD: raise thread stack size to 1024
based on testing in SITL
2018-08-20 13:49:14 +10:00
Hwurzburg 53a28cdf18 AP_OSD: Adding efficiency and climb efficiency
and new font characters
2018-08-17 16:33:53 +10:00
Hwurzburg 7c79175309 AP_OSD: add flytime item 2018-08-16 12:00:50 +10:00
Hwurzburg 5f72c9040e AP_OSD: Adding flight distance and summary panels for OSD 2018-08-16 12:00:50 +10:00
Alexander Malishev eec34fc47d AP_OSD: add waypoint and xtrack_error items 2018-08-16 10:26:34 +10:00
vierfuffzig aae1054a94 AP_OSD: add hdop display 2018-08-16 09:39:02 +10:00
Randy Mackay 8bf6e8e0cf AP_OSD: fix compiler warnings 2018-07-26 10:25:56 -07:00
vierfuffzig 1c91bd3588 AP_OSD: added temperature item 2018-07-21 06:32:07 +10:00
Alexander Malishev 13b56d5870 AP_OSD: improve AHI for large roll angles 2018-07-14 18:08:36 +10:00
vierfuffzig 78386ed080 AP_OSD: added OSD_MSG_TIME parameter 2018-07-14 09:07:42 +10:00
Alexander Malishev 785cf293cd AP_OSD: use software blink
This should fix blink issue with some hardware
2018-07-12 15:04:32 +10:00
Andrew Tridgell 6328a7233f AP_OSD: cope with no EKF for vspeed 2018-07-10 15:40:08 +10:00
vierfuffzig bdede462e8 AP_OSD: updated fonts 2018-07-10 12:34:42 +10:00
vierfuffzig 02bc49f6b5 AP_OSD: added roll and pitch angle items 2018-07-10 12:34:42 +10:00
Andrew Tridgell 33653b6734 AP_OSD: added SI and Aviation units 2018-07-10 12:34:42 +10:00
Andrew Tridgell a561aa2f6d AP_OSD: allow for runtime H and V offset change 2018-07-10 08:52:02 +10:00
Andrew Tridgell a085b33729 AP_OSD: make units tables a bit easier to read
and add OSD_UNITS parameter
2018-07-10 08:52:02 +10:00
Alexander Malishev d2e05eb927 AP_OSD: ensure spi_buffer space 2018-07-10 08:52:02 +10:00
Alexander Malishev ac71a181d6 AP_OSD: refactoring based on review suggestions 2018-07-10 08:52:02 +10:00
Alexander Malishev e364a815f8 AP_OSD: add warning levels for vbat, rssi and nsat 2018-07-10 08:52:02 +10:00
Alexander Malishev 731ae44ffa AP_OSD: add imperial units option 2018-07-10 08:52:02 +10:00