~aleteoryx/muditaos

ref: 6912ec26dd6ae4afea3467bd5d33d72df8be75c8 muditaos/module-bsp/board d---------
d2bf42d4 — Adam Wulkiewicz 2 years ago
[BH-1655] Fix memory leaks in clock faces and shortcuts

Disable libphonenumber initialization since it is not used in Harmony
but takes around 1.4MB of memory

Add heap allocation statistics
2cbadc6a — Dawid Wojtas 2 years ago
[BH-1630] Turn off the device for low voltage

The system closes only if the SoC is 0%, but
it doesn't react if the voltage has low level.
The new implementation invokes the close
procedure if the voltage is less than 3.4V.
This solution should avoid possiblity to
hang the MCU.
f7980fea — Dawid Wojtas 2 years ago
[BH-1649] Reimplement I2C communication attempts

The CW2015 driver should avoid any logic.
Thus I2C communication attempts were moved
to the BatteryCharger which is product specific.
3934e718 — Lefucjusz 2 years ago
[MOS-000] Remove redundant newlines when printing clocks

As described.
9279e9ac — Dawid Wojtas 3 years ago
[BH-1628] Reinit I2C after bus error

A lack of timeout in I2C could cause
the worker could get stuck in a loop
if the communication has been broken somehow.
The Harmony is unresponsive in this case.
The only solution is just to perform a hardware
reset using Frontlight and Back buttons simultaneously.

There are also additional 5 attempts to read and write
transactions if the bus error occurs in the Fuel Gauge driver.
It should be sufficient but if it would still persists
the system just will read 0% SOC and shutdown system.
5098d060 — Dawid Wojtas 3 years ago
[BH-1627] Enable brownout detection

There is the possibility of hanging
the MCU due to a power glitch
if the voltage drops to 2.8V
and the system wants to use some
peripherals like the eink or the backlight.

To prevent this situation brownout
detection has been enabled
which monitors the 1.1V and 2.5V
LDO regulators. If the voltage
will drop to the trigger voltages
then the interrupt is invoked.
The interrupt checks the source
of the interrupt and then reset
the MCU using WDOG_B pin
which is connected to the main power source.

After restarting, the MCU checks
the voltage. If it is too low
the system enters SNVS mode.
c3ccf0fb — Dawid Wojtas 3 years ago
[BH-1554] Add delay after init external oscillator

Some Harmony devices are struggling to switch between
internal to external oscillators.
According to the newest version of the library
(lpm.c - Low Power Mode) the NXP is recommending
adding at least a 200us delay after
enabling the external oscillator.

Their implementation is not full because
the CPU speed used in the delay function is hardcoded.
So if the CPU has a frequency 4MHz the delay takes ~26ms.

To avoid that situation we use
the proper speed of the CPU in the delay function.
e1a73af2 — Lefucjusz 2 years ago
[MOS-176] Fix long turn off time

Fix of the issue that resulted in long
turn off time of the phone, which was
caused by unfortunate coincidence
of functions names - as a result the
one from the included header file was
called instead of the one from the
anonymous namespace inside the file,
what resulted on not cutting off
board power until the watchdog
triggered.
9ece62c1 — Lefucjusz 3 years ago
[MOS-903] Remove reboot to USB MSC mode

Remove mechanics enabling to perform reboot
to MSC mode by sending request to one of the
endpoints via serial port, as it is not
implemented in bootloader and may potentially
be unsafe.
c0577999 — Lefucjusz 3 years ago
[MOS-887] Fix black screen left after power off

Fix of the issue that after powering off
the phone with dark mode enabled the
screen remained black instead of being
cleared to white.
d28fdb65 — Lefucjusz 3 years ago
[MOS-882] Fix FLAC file playback with USB cable connected

Fix of the issue that caused system crash when
trying to play 96kHz FLAC file with USB cable
connected. The reason of the issue was the lack
of FreeRTOS heap space left, what caused
pvPortMalloc() to fail when allocating
memory for stream buffer.

Additionally minor code cleanup.
09bab001 — Mateusz Piesta 3 years ago
[MOS-807] Update scripts

Added update scripts for both variants:
UDM update and further 'normal' updates.

Minor updates to the directories layout
eeafb5f1 — Lefucjusz 3 years ago
[MOS-783] Moved battery config file to '/user/data'

Moved battery config file from root
directory of user partition to
'data' directory to comply with
new directory layout design.
fef2ad61 — Bartosz 3 years ago
[MOS-786] A/B Booting - fixed factory reset from menu

Now factory reset works both from ecoboot and from menu
afd7e7bc — Lefucjusz 3 years ago
[MOS-783] Working Pure simulator after partition changes

Fixed iosyscalls so that Pure simulator
works after directory structure changes.
01857dd1 — Bartosz 3 years ago
[MOS-786] Added support for A/B boot codes in OS

Further implementation of A/B booting
178fba16 — Lefucjusz 3 years ago
[MOS-783] First part of new dir structure implementation

    Works:
    - generating .img for Pure;
    - Pure boots after flashing new image and
    seems to be working fine;

    Not yet:
    - generating update package;
    - generating image for Harmony;
    - simulator;
    - path-related unit tests fail
    due to paths being hardcoded
    in test scenarios.
0867d172 — Pawel Olejniczak 3 years ago
[CP-1424] Refactor backup and restore endpoints

Redesign of backup and restore endpoints in the
service-desktop to delegate responsibility for
execution of the actual backup and restore process
onto the Updater.
25096a1e — Bartosz Szostak 3 years ago
[MOS-820] Fix crashes caused by plugging the charger

The deleting of the USBLinuxReceive task has been added
in the USB stack de-initialization process to avoid creating
multiple instances during next initializations.
f4aaf4e3 — Maciej-Mudita 3 years ago
[MOS-775] Create run-time statistics for tasks

Every hour, statistics of tasks that put a heavy load
on the CPU will be logged
Next