This brings the power on sequence in line with the EG25-G Hardware Design datasheet, which states we need to wait at least 30 ms after VBAT becomes stable before pulling PWRKEY low (first action of the power on sequene). After this change the sequence becomes as follows: - Set RESET_N high - Wait 60 ms (double 30 ms) - Execute PWRKEY sequence 60 ms was choosen because we don't know when VBAT becomes stable, but it should be much less than an additional 30 ms. Empirical evidence suggests PinePhone units with a healthy battery do not see serious side effects from not doing this, while the modem will fail to boot and/or throw random errors on boot with a worn out battery.
eg25-manager - Quectel EG25 management daemon
eg25-manager
is a daemon for managing the Quectel EG25 modem found on the
Pine64 PinePhone.
It implements the following features:
- cleanly power on/off the modem
- configure/check essential parameters (such as the audio format) on startup
- monitor the modem state through ModemManager
- put the modem in low-power mode when suspending the system, and restore it back to normal behavior when resuming
- monitor the modem state on resume and recover it if needed
Dependencies
eg25-manager
requires the following development libraries:
- libglib2.0-dev
- libgpiod-dev
- libmm-glib-dev
Building
eg25-manager
uses meson as its build system. Building and installing
eg25-manager
is as simple as running the following commands:
$ meson ../eg25-build
$ ninja -C ../eg25-build
# ninja -C ../eg25-build install
Configuration
eg25-manager
uses device-specific configuration files, named after the
device-tree compatible
field. These files are installed to
/usr/share/eg25-manager
. They can be copied to /etc/eg25-manager
then
modified, that way they won't be overwritten during an upgrade.
Running
eg25-manager
is usually run as a systemd service, but can also be
manually started from the command-line (requires root privileges):
# eg25manager
License
eg25-manager
is licensed under the GPLv3+.