Michel Pastor
eef4c3b8df
Enable LM75 temperature sensors on all targets >= F4
2019-01-06 20:27:15 +01:00
Konstantin Sharlaimov (DigitalEntity)
07b831bed4
[ADC] Implement ADC averaging on F7, enable ADC averaging on all targets
2019-01-06 20:24:17 +01:00
Michel Pastor
8245db1bcd
Enable pitot and LM75 temperature sensor on all targets >= F4
2019-01-06 20:10:33 +01:00
Konstantin Sharlaimov
ecf1007384
Merge pull request #4139 from shellixyz/lm75_i2c_temp_sensor_support
...
LM75 I²C temperature sensor preliminary support
2019-01-06 19:10:58 +01:00
Konstantin Sharlaimov
8847ce56e3
Merge pull request #4072 from StewLG/LaunchModeMessages
...
Display "Autolaunch" as system message when Auto Launch mode is active
2019-01-06 12:13:11 +01:00
Konstantin Sharlaimov
2cd7ddea0a
Merge pull request #4142 from iNavFlight/agh_max7456_extra_chars
...
Add support for 512 character fonts on MAX7456, add boot logo
2019-01-06 12:12:44 +01:00
Konstantin Sharlaimov
d449a5646c
Merge pull request #4154 from shellixyz/fix_fly_time_bug
...
Fix fly time bug
2019-01-06 09:27:38 +01:00
Michel Pastor
2ea3f50e5e
Fix fly time bug
...
Closes #4141
2019-01-06 00:15:30 +01:00
Konstantin Sharlaimov
7f3c69e2c2
Merge pull request #3427 from flounderscore/fgh_python_scan_target_headers
...
Add script to scan target header files for #define's.
2019-01-05 10:29:04 +01:00
Konstantin Sharlaimov
0e5fa60dfe
Merge pull request #4127 from iNavFlight/de_gps_fixes
...
[GPS] Improve handling of SBAS and GALILEO supportability; Increase GPS failure timeout
2019-01-05 10:15:02 +01:00
Paweł Spychalski
7a906e8d5c
Merge pull request #4143 from iNavFlight/dzikuvx-braking-on-omnibus
...
Enable MR Braking on Omnibus target
2019-01-03 21:03:13 +01:00
Alberto García Hierro
89c2189592
Merge pull request #4146 from iNavFlight/agh_center_osd_flymode
...
Align OSD_FLYMODE to 13th column by default
2019-01-03 19:56:39 +00:00
Pawel Spychalski (DzikuVx)
27f0ed7bf3
Enable MR Braking on Omnibus target
2019-01-03 20:08:29 +01:00
Paweł Spychalski
f183c556b1
Merge pull request #4145 from iNavFlight/dzikuvx-smix-reverse-removal
...
smix reverse removed
2019-01-03 20:00:34 +01:00
Alberto García Hierro
6c9725bebd
Align OSD_FLYMODE to 13th column by default
...
Since OSD_FLYMODE is 4 characters and the display is 30 characters,
to center it we should place it on the 13th instead of the 12th.
2019-01-02 23:02:04 +00:00
Pawel Spychalski (DzikuVx)
9fab108bbb
smix reverse removed as obsolete
2019-01-02 21:51:17 +01:00
Alberto García Hierro
ebe2fc059a
Merge pull request #4090 from iNavFlight/agh_reduce_setting_name_storage
...
Use 5 bits to encode setting words
2019-01-02 19:35:13 +00:00
Alberto García Hierro
34ef222dd3
Rename fontMetadata in display driver's vTable to getFontMetadata
2019-01-02 19:15:35 +00:00
Alberto García Hierro
66f38ded64
Add comment explaining the shift by 2 bits when writing to DMDI
2019-01-02 19:13:06 +00:00
Alberto García Hierro
ac3f9984b6
Rename displayFontMetadata() to displayGetFontMetadata()
2019-01-02 19:09:00 +00:00
Alberto García Hierro
3c95544566
Refactor the rest of the MAX7456 driver
...
- Cleanup init sequence to perform as much initialization as
possible in max7456Init().
- Initialize the OSD as soon as video sync is detected. If no
video sync is detected at 1.5s, start as PAL but then continue
probing until we find a valid video signal.
- Wait for the software reset to finish during initialization.
- Remove extern variable for maxScreenSize, replace it with
max7456GetScreenSize().
- Make sure that when disabling the OSD for reading/writing to
NVM we only enable it again if it was enabled before.
- Rewrite prototypes in the header file to use the same style and
formatting as the rest of the code.
- Delay call to millis() in max7456StallCheck() to avoid calling
it when it's not strictly needed.
2019-01-02 19:00:17 +00:00
Alberto García Hierro
8b9312c408
Ensure the MAX7456 detects a valid signal before accepting it
...
Code was not checking for the Loss-of-Sync bit, causing it to
detect PAL too early in some cases.
2019-01-02 15:13:52 +00:00
Alberto García Hierro
04358bd3d6
Call max7456Init() before displayInit()
...
Otherwise the display initialization might call methods on the
max7456 driver on an uninitialized device
2019-01-02 15:13:03 +00:00
Alberto García Hierro
8949efa24b
Add support for font metadata, use it for detecting extended fonts
...
Also, add boot logo on OSD when the font supports it. If the font
is invalid or out of date, show an "INVALID FONT" message.
2019-01-02 13:50:33 +00:00
Alberto García Hierro
e35d343508
Add support for OSD characters > 255, refactor MAX7456
...
Change display(Read|Write)Char* functions to use an uint16_t
character. This lets callers which need characters > 255 use these
functions, while keeping most strings in ASCII to save memory (
the string based functions still take a cosnt char *).
Change display drivers to support 16 bit characters when writing
a single character. Note that some drivers might silently truncate
the character, it's the responsability of the caller to check
wether the display supports characters > 255 (API will follow in
the next commit).
Refactor and cleanup the MAX7456 driver:
- Move global state to a struct, for better encapsulation
- Make max7456DrawScreenPartial() static, expose instead the new
function max7456Update(), which calls max7456StallCheck() and
max7456DrawScreenPartial() instead of doing all the work on
a single function.
- Rewrite max7456RefreshAll() to use HW based screen clearing, then
leverage max7456DrawScreenPartial() to redraw only non-blank
characters. This should make full screen redraws faster while
reducing complexity and flash usage (we no longer have 2 paths
for drawing).
- Support writing characters > 255, switching to 8bit mode on
demand.
2019-01-02 13:44:04 +00:00
Alberto García Hierro
f34d57e333
Add workaround for corrupted characters when uploading MAX7456 fonts
...
Restore the previous behavior of rebooting after uploading characters,
but add a comment explaining why it needs to be done.
2019-01-02 13:44:04 +00:00
Alberto García Hierro
324a994042
Add support for read/write MAX7456 NVM for chars > 256
...
Add max7456Character_t, which represents the data for character a
single MAX7456 character.
Use max7456Character_t to read and pass character data around.
Change max7456WriteNvm() to accept a 2-byte character address.
Change MSP handler for MSP_OSD_CHAR_WRITE to accept 2 byte character
addresses. To keep backwards compatibility, check wether the caller
sent 55 or 56 bytes.
Add max7456ReadNvm() to read a character from the MAX7456 NVM, which
will eventually be used for font metadata.
2019-01-02 13:44:04 +00:00
Alberto García Hierro
c442a57875
Refactor code for locking access to MAX7456 to functions
...
Rename max7456Lock var to max7455Mutex. Add max7456Lock(),
max7456Unlock() and max7456TryLock().
2019-01-02 13:44:04 +00:00
Alberto García Hierro
5326acca2f
Output the number of bits used for encoding characters from settings.rb
...
Instead of hardcoding the number of bits in both settings.c and
settings.rb, make the latter output a constant to the
settings_generated.h file.
2019-01-02 13:40:38 +00:00
Olivier C
a7bd700949
Max7456 symbols cleanup (v2) ( #4122 )
...
* OSD symbols cleanup
* Update osd.c
2019-01-02 13:31:58 +00:00
Michel Pastor
7e4a8c8e6c
LM75 I²C temperature sensor preliminary support
2019-01-02 01:03:11 +01:00
Konstantin Sharlaimov
6e636e6ea0
Merge pull request #4111 from iNavFlight/de_obf4_dshot
...
Enable DSHOT on OmnibusF4 and ASGARD boards
2018-12-30 18:35:57 +01:00
Konstantin Sharlaimov
12379d41bb
Merge pull request #4134 from utsxumiao/patch-1
...
Minor spelling fix
2018-12-30 18:12:07 +01:00
Konstantin Sharlaimov
56f6cd7ab3
Merge pull request #4133 from iNavFlight/de_f7_dma_fixes
...
Fix incorrect comment for MATEKF722 DMA map
2018-12-30 12:08:56 +01:00
Eric Xu
78a98b6eb5
Minor spelling fix
2018-12-30 20:53:41 +11:00
Konstantin Sharlaimov (DigitalEntity)
e86a337d50
[ASGARD32F4] Fix M1 for DSHOT
2018-12-30 10:50:20 +01:00
Konstantin Sharlaimov (DigitalEntity)
204018df44
[ASGARDF7] Fix M1 DMA for DSHOT
2018-12-30 10:50:20 +01:00
Konstantin Sharlaimov (DigitalEntity)
94f7482d61
[ASGARD] Enable DSHOT
2018-12-30 10:50:20 +01:00
Konstantin Sharlaimov (DigitalEntity)
95ad7fbb78
[OMNIBUSF4] Enable DSHOT
2018-12-30 10:50:20 +01:00
Konstantin Sharlaimov (DigitalEntity)
43dc259b12
Fix comment
2018-12-30 10:49:02 +01:00
Konstantin Sharlaimov
d0e68a3a98
Merge pull request #4128 from iNavFlight/de_f7_dma_fixes
...
DMA fixes for F7 ADC & Timer; Enable DSHOT on MATEKF722
2018-12-29 19:56:18 +01:00
Konstantin Sharlaimov (DigitalEntity)
a0bc1acd2f
[F4] Move ADC to DMA2_Stream0
2018-12-27 21:50:42 +01:00
Konstantin Sharlaimov (DigitalEntity)
12e9d6bffb
[FOXEERF722] Fix M4 for DSHOT
2018-12-27 21:47:06 +01:00
Konstantin Sharlaimov (DigitalEntity)
fc026249f1
[MATEKF722] Enable DSHOT; Remap outputs to be DSHOT-compatible
2018-12-27 21:18:25 +01:00
Konstantin Sharlaimov (DigitalEntity)
936cc03f59
[F7] Move ADC to DMA2_Stream0; Clean up F7 timer DMA
2018-12-27 21:18:02 +01:00
Konstantin Sharlaimov (DigitalEntity)
d8924dc8e7
[GPS] Improve handling of SBAS and GALILEO supportability; Increase GPS failure timeout
2018-12-27 18:05:40 +01:00
Alberto García Hierro
40f6861068
Merge pull request #4115 from iNavFlight/agh_cleanup_geo_functions
...
Cleanup geo* functions
2018-12-26 20:13:25 +01:00
Konstantin Sharlaimov
e45d138294
Merge pull request #3037 from iNavFlight/de_fpv_cam_mix
...
Port Betaflight FPV camera tilt compensation for ACRO mode
2018-12-26 17:47:19 +01:00
Konstantin Sharlaimov
385afd7cba
Merge pull request #4114 from iNavFlight/agh_bitarray_fixes
...
Fix bug in bitArrayFindFirstSet(), add functions for setting and clearing the whole array
2018-12-26 17:46:43 +01:00
Olivier C
3c9b7a0f31
Update cms_menu_osd.c
2018-12-26 16:04:26 +01:00