Skip to main content
Support / Troubleshooting

Error-code troubleshooting

MASAMUNE errors become easier to resolve once you separate device state, USB / ADB connectivity, iOS restore behavior, APK install flow, and worker-internal processing. This page focuses on the most practical field patterns rather than a raw internal dump.

16-digithex code
6 groupscommon patterns
?code=direct-link ready
1 formsupport path

What to check before anything else

  • USB cable, hub path, device trust dialog, and USB debugging authorization
  • Activation Lock, FRP, Apple ID state, and whether the handset is locked
  • Play Protect, unknown-app install policy, and BMDRGate install conditions on Android
  • Whether the field screenshot and masamune.ai log are describing the same event

How to use this page

Direct lookup?code=00020110000003EA scrolls to the closest match.
Family lookup20013 style family codes also work when the prefix changes by module.
EscalationIf retry does not change the behavior, send the code and screenshots through the contact form.
Context: Prefix values can vary by module and version. This page emphasizes representative public-facing codes and useful code families so operators can decide what to check first.

Connectivity & authorization

USB path, trust dialogs, and USB debugging authorization should be cleared first. Downstream errors often become noise if this layer is unstable.

Device-side state

Activation Lock, FRP, lockscreen state, and managed-device restrictions can block the workflow before erase logic really begins.

Android install flow

Play Protect, unknown-app restrictions, and prior BMDRGate state are the main causes behind APK installation failures.

iOS restore path

IPSW restore, recovery transitions, cable instability, and mid-process reboot behavior define most restore-side failures.

ADB socket behavior

Receive failures and timeouts usually point to Android communication instability, incomplete authorization, or flaky USB conditions.

Worker-internal processing

If the issue reproduces after a clean retry, collect logs early instead of burning time on blind repetition.

Representative codes and what to check first

Code / familyMeaningTypical causeFirst check
00020110000003EA iOS restore failure Restore transition failure, unstable cable, mid-process reboot, or inconsistent device response Swap cable, restart the device, confirm recovery transition, reconnect, and retry once on the same handset
0002021000002711 APK installation failure Play Protect, unknown-app restrictions, missing USB debugging authorization, or BMDRGate install failure Play Protect, install permissions, USB debugging, device-side popups, and prior app state
20013 family ADB socket receive failure Android communication instability, incomplete authorization, or poor cable / hub quality Reconnect USB, wake the device, confirm trust / debugging dialogs, and review the hub path
20014 family ADB socket timeout Long device-side wait, permission prompts, device lag, or unstable connectivity Keep the device awake, clear device prompts, re-establish USB, and compare retry timing
20021 family APK install error family Insufficient install permission, device policy blocks, existing app conflicts, or Android-side restrictions Existing BMDRGate presence, app permissions, unknown-app settings, and MDM policy conditions
9999 family Generic INTERNAL processing error Worker-side processing failure or mixed conditions that need log correlation Confirm whether the failure reproduces, preserve screenshots, and record the exact steps and device state

Families such as 20013, 20014, and 20021 remain useful even when the full 16-digit prefix differs by module or version.

How to read the code

USER / EXTERNAL / INTERNAL / SYSTEM

The right next action depends on whether the issue came from operator input, a device / external process, or worker-internal behavior.

The tail code matters most

For public troubleshooting, the tail code and the field situation are usually more actionable than a perfect prefix match.

Reproduction beats guessing

One-off noise, same-device reproduction, and port-specific behavior lead to very different support decisions.

What to include when contacting support

  • Target device model, OS version, connection path, and whether a USB hub was involved
  • The shown code, screenshot, and approximate timestamp
  • Retry result on the same handset, and whether another port or cable changes the outcome
  • Activation Lock, FRP, Play Protect, and USB debugging status

Note

This is a public troubleshooting page, not a raw internal error dump. For version-specific edge cases, field screenshots and reproduction steps remain more reliable than code text alone.

If logs and reproduction details are ready, the contact form is the fastest path.

Support on masamune.com is centered on the form so the code, screenshots, and steps can stay together.