You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: T56 stays on 3G with weak signal; provision roaming and validate LTE readiness #11
Android radio application / device provisioning / cellular modem integration
Version or commit
Investigation baseline: e3657bf780fd.
Record the exact installed APK version, build, and baseband when the T56 is connected over USB.
Affected hardware
Primary report:
T56 — UNIPRO / ZX, Android 5.1.1 / API 22
Compatibility and regression scope:
T99
RYKS
Generic Android
Summary
After inserting an active SIM into the T56, the device remains on 3G and reports persistently weak signal strength even though the test area has confirmed 4G/LTE coverage.
Provisioning currently does not explicitly establish and verify a cellular-readiness policy. For managed radio deployments, Data Roaming should be enabled from the beginning of provisioning and verified again after reboot. This is required because some managed, MVNO, multi-network, or cross-network SIMs need roaming permission even when used within the intended service area.
Enabling Data Roaming is one required preventive measure, not a complete diagnosis and not a guarantee of LTE. The investigation must also cover preferred-network mode, APN/carrier configuration, SIM entitlement, modem firmware, LTE-band compatibility, actual serving-cell availability, and Android/Minimum telephony reporting.
Current behavior
The SIM is detected and mobile service is available.
The network remains reported as 3G.
Reported signal strength remains low.
The behavior persists in an area where 4G/LTE is otherwise available.
Provisioning does not currently report a verified cellular-ready state.
Expected behavior
Provisioning enables Data Roaming by default for supported managed-radio profiles before the final connectivity checks.
Provisioning sets or verifies a safe automatic preferred-network mode that includes LTE and legacy fallback; it must not force LTE-only operation.
When the SIM, operator, LTE bands, and coverage are compatible, T56 registers on LTE.
Android system state and Minimum telemetry report the actual active data network and a valid signal value.
The configured cellular state survives reboot.
Model-specific workarounds are gated to verified hardware and do not regress T99, RYKS, or Generic Android.
Provisioning changes
1. Enable and verify Data Roaming
Make Data Roaming enabled by default in the supported-device provisioning workflow.
Apply the setting early enough that cellular registration can stabilize before readiness checks.
Make the operation idempotent.
Read the value back after writing it; do not report success from command exit status alone.
Verify the value again after the provisioning reboot.
Print a clear operator notice that roaming can incur carrier charges.
Provide an explicit opt-out for deployments whose SIM policy prohibits roaming, while retaining default-on behavior for the managed workflow.
Handle Android-version, OEM, and subscription differences explicitly; fail or warn when the setting cannot be verified.
Avoid exposing subscriber identifiers in console output or logs.
2. Establish a safe preferred-network policy
Capture the original preferred-network mode before mutation.
Detect whether the current mode allows LTE.
Select an automatic LTE-capable mode appropriate to the verified modem/firmware and subscription, with 3G/2G fallback.
Do not use LTE-only mode because voice, emergency, or coverage fallback may depend on legacy radio access.
Read back and report the effective mode before and after reboot.
Do not apply numeric preferred-network constants blindly across Android/OEM variants.
3. Validate APN and carrier readiness
Confirm that a usable APN is selected for the active SIM/operator.
Validate APN type, protocol, roaming protocol, authentication requirements, and carrier enablement using sanitized output.
Do not overwrite carrier-provided APNs indiscriminately.
If a managed APN is required, make its configuration explicit, model/carrier-scoped, idempotent, and testable.
Detect SIM-not-ready, data-disabled, carrier-restricted, roaming-denied, and LTE-not-provisioned states separately.
Record whether the SIM is an MVNO or uses a partner network without publishing IMSI, ICCID, phone number, or credentials.
4. Add a cellular readiness gate
Provisioning should not declare cellular readiness only because a SIM exists.
Wait for SIM and service state to stabilize within a bounded timeout.
Report voice network type, data network type, roaming state, operator name, data connection state, and signal unit/source using sanitized values.
Confirm that mobile data is enabled and a usable cellular route exists.
Prefer LTE when compatible and available, but accept documented 3G/2G fallback rather than looping indefinitely.
Distinguish PASS, WARN, and FAIL outcomes with a useful reason.
Re-check after reboot.
Preserve the device's existing app data and Device ID.
Capture SIM state, service state, data/voice network types, roaming state, data state, preferred-network mode, and selected APN.
Compare the system status UI, TelephonyManager, signal callbacks, and sanitized dumpsys telephony.registry evidence.
Record evidence before changing roaming or network mode, then compare after each isolated change.
Toggle airplane mode once or perform another controlled radio re-registration, then wait for stabilization.
Reboot and confirm persistence.
Test with a known-good LTE SIM in the T56.
Where practical, test the affected SIM in a known-good LTE device at the same coarse location.
Verify the T56 modem's supported LTE bands against the operator's serving bands.
Determine whether weak signal is real or caused by stale/invalid values or incorrect ASU-to-dBm conversion on Android 5.1/Qualcomm.
Record whether the observed 3G label comes from the modem, Android framework, system UI, or Minimum/APRS telemetry.
Do not upload a full bugreport or raw logs containing IMEI, IMSI, ICCID, phone number, device serial, APN credentials, access tokens, certificate fingerprints, exact private coordinates, or other unique/private data.
Additional preventive fixes
Add a reusable sanitized cellular diagnostic command/report to the provisioning bundle.
Capture before/after provisioning state so unintended modem-setting changes are visible.
Detect unsupported LTE bands or firmware limitations and report them as a hardware/carrier limitation instead of repeatedly rewriting settings.
Use bounded recovery: one controlled re-registration/reboot, then stop with evidence rather than retrying forever.
Validate state after SIM replacement because carrier configuration and roaming behavior may change.
Ensure provisioning does not silently disable roaming or LTE during later upgrades.
Document the managed cellular policy, operator cost warning, opt-out, and rollback steps.
Add automated parsing/policy tests without relying on private device identifiers.
Keep signal/network telemetry unavailable when Android returns unknown or invalid values instead of presenting misleading weak-signal data.
If runtime telemetry is shared, prefer API/capability-based behavior; gate Qualcomm/T56-specific handling by the verified device profile.
Cross-model validation
Identify which roaming, APN, mobile-data, network-mode, and signal-reporting code paths are shared.
T56: real-device cellular acceptance required.
T99: verify provisioning and reboot persistence; record cellular capability and test evidence.
RYKS: verify provisioning and reboot persistence; record cellular capability and test evidence.
Generic Android: confirm no unsafe OEM-specific setting is applied and telemetry degrades safely.
Do not claim LTE-band or real-signal acceptance for any model without physical evidence.
Unknown or ambiguous hardware must be rejected before model-specific mutations.
Acceptance criteria
Root cause is documented with sanitized USB/ADB evidence.
Supported-device provisioning enables and verifies Data Roaming by default, including after reboot.
The provisioning output includes a roaming-cost warning and an explicit opt-out.
Preferred-network mode safely includes LTE and legacy fallback where supported.
APN and SIM/carrier readiness failures are diagnosed distinctly.
T56 registers on LTE under confirmed compatible SIM, band, entitlement, and coverage conditions, or a verified hardware/carrier limitation is documented.
Minimum reports the same active network generation as Android/modem registration state.
Signal telemetry does not remain falsely low because of stale, invalid, or incorrectly converted values.
Genuine 3G/2G fallback continues to work.
Cellular settings persist after reboot and remain idempotent on repeated provisioning.
Shared behavior is covered by automated tests where feasible.
T99, RYKS, and Generic Android regression impact is assessed and recorded.
Real-device results clearly distinguish tested facts from assumptions.
Merged via #14 at d4bbaf4be9432433994e7526d2efc0b040a767f6; PR CI and post-merge main CI (31726824727) passed Android and portal jobs.
Sanitized physical E7ROW7 facts:
exact profile UNIPRO / ZX; Android API 22; no PTT transmission used
in-place same-debug-signer update from versionCode 3070300 to 3070301; Device ID E7ROW7 and config version 16 preserved
automatic LTE-capable policy, mobile data and roaming already matched the reviewed T56 policy (CELLULAR_POLICY_V1_T56=ALREADY_OK)
actual voice/data registration reported LTE; LTE RSRP was -97 dBm
reboot persistence and exact rerun passed; same-ID Ready returned and expanded LKG/safe-settings evidence was preserved
APN inspection remained unavailable because the OEM provider denies shell access
no active cellular route was present (dataState=0, reason dataDisabled), so overall cellular readiness remains truthful WARN
This materially completes the guarded policy, persistence, idempotence, LTE registration and telemetry work. The issue remains open because the original acceptance criteria also require a usable cellular route/APN/carrier root-cause determination. The current dataDisabled/no-route limitation is not waived or mislabeled PASS. T99/RYKS/generic cellular regression evidence also remains limited to guarded code/static tests unless separately recorded.
No subscriber identifiers, hardware serials, certificate fingerprints, raw UI XML or unsanitized logs are included here.
The Issue #11 implementation remains included in signed prerelease 3.7.3-minimum.2 (versionCode 3070301) from exact main commit 192ee37a146ad245cf5482656c410115ec1f82ce. Release workflow https://github.com/awatchar/minimum/actions/runs/31734123092 and the downloaded APK/bundle identity, checksums, exact allowlist and sole-signer binding passed audit.
The later checksum-portability correction is merged via #18 as 655d89234051c795176341808db19d93b1388d54; post-merge CI https://github.com/awatchar/minimum/actions/runs/32347826798 passed. It changes future release checksum naming only and does not change the cellular policy.
No T56 is currently visible on either configured ADB server, so no new cellular/roaming/APN/route evidence was produced. The prior physical result remains authoritative: LTE registration/policy persistence passed, while dataDisabled/no active cellular route and unavailable APN inspection remain unresolved. This issue stays open and is not relabeled PASS.
Component
Android radio application / device provisioning / cellular modem integration
Version or commit
Investigation baseline:
e3657bf780fd.Record the exact installed APK version, build, and baseband when the T56 is connected over USB.
Affected hardware
Primary report:
Compatibility and regression scope:
Summary
After inserting an active SIM into the T56, the device remains on 3G and reports persistently weak signal strength even though the test area has confirmed 4G/LTE coverage.
Provisioning currently does not explicitly establish and verify a cellular-readiness policy. For managed radio deployments, Data Roaming should be enabled from the beginning of provisioning and verified again after reboot. This is required because some managed, MVNO, multi-network, or cross-network SIMs need roaming permission even when used within the intended service area.
Enabling Data Roaming is one required preventive measure, not a complete diagnosis and not a guarantee of LTE. The investigation must also cover preferred-network mode, APN/carrier configuration, SIM entitlement, modem firmware, LTE-band compatibility, actual serving-cell availability, and Android/Minimum telephony reporting.
Current behavior
Expected behavior
Provisioning changes
1. Enable and verify Data Roaming
2. Establish a safe preferred-network policy
3. Validate APN and carrier readiness
4. Add a cellular readiness gate
Provisioning should not declare cellular readiness only because a SIM exists.
PASS,WARN, andFAILoutcomes with a useful reason.USB/ADB investigation plan
When T56 is connected:
TelephonyManager, signal callbacks, and sanitizeddumpsys telephony.registryevidence.3Glabel comes from the modem, Android framework, system UI, or Minimum/APRS telemetry.Do not upload a full bugreport or raw logs containing IMEI, IMSI, ICCID, phone number, device serial, APN credentials, access tokens, certificate fingerprints, exact private coordinates, or other unique/private data.
Additional preventive fixes
Cross-model validation
Acceptance criteria
Test record to complete
Safety