Added settings menu entry to make RTC synchronization with GPS
persistent across reboots. When the synchronization is enabled
the RTC will be updated on the first valid RMC sentence received.
Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
Some GPS modules can work on multiple systems at the same time. However,
the current code has been written only for GPS and, consequently is not
able to manage satellites with an ID greater than 32. This commit provides
an hotfix until all the GPS code gets refactored an extended to support
also GLONASS and Galileo.
Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
Moved retrieval of latitude and longitude coordinates from RMC to GGA
sentence. This prevents from having a valid fix but coordinates still
equal to 0.0, 0.0
Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
Update meson and cmake config to only include openrtx and platform paths.
Update files to use <..> for system and external libraries, ".." for
project files and new relative paths as necessary.
Did not attempt to fix areas where includes that should be <..> were
previously ".."
Inspired by #96, closes#359.
Acked-by: Silvano Seva <silseva@fastwebnet.it>
New DC block filter implementation using fixed-point math and guaranteeing
zero DC component on the output signal.
Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
Once the RTC has been synchronized with GPS time, set the gps_set_time
flag back to false. This resets also the corresponding ON/OFF menu entry,
providing both a feedback that the operation is done and allowing the user
to just set it back to ON in case a new synchronization is needed.
Updated isNumberPressed() to make it not return anymore true if star or hash keys are pressed. Check
for character input, star and hash keys included, is now done by the input_isCharPressed function.
This separation also now prevents from entering non numeric characters during VFO frequency input.
Reorganized code for pixel framebuffer in order to have it instantiated once
and for all the possible display drivers. Dropped the display_getFrameBuffer()
function.
Using the newlib's printing functions without floating point support in order
to reduce the overall binary size. This allows to free up around 15kB of space
in the .text section.
Switched to int32_t for RSSI representation to allow running the code also
on devices with limited resources. Defined a new ad-hoc type to still keep
the possibility of using floating points on more capable devices.
Removing 18pt and 24pt fonts from graphics layer since currently are unused
and take up flash space. On MD-380, removal freed up 12'928 bytes in the
.text section.
General code optimization allowing to reduce the overall binary size, especially
for devices without hardware floating point support. On the MD-380 (which has the
FPU) the .text size has been reduced of 4'928 bytes.
GD77 and DM-1801 already have an hardware low-pass filter on the battery measurement
probe which causes the low battery protection to trigger at boot if the digital low
pass filter is also used. Given that the hardware one is good enough for our purposes,
the digital filter is now excluded.
Provides a fix for #221