The AEI DK-9830 is a compact digital access control keypad commonly used for residential and commercial entry points. To change or reset your password (the Master Code or User Code), you must first enter Programming Mode using the factory default or your current personal code. 🔑 Changing the Master Code
The Master Code is used only for entering programming mode. The default factory Master Code is typically 0000.
Enter Programming Mode: Key in the current Master Code (e.g., 0000) and press the * (star) key. The amber LED will turn on, indicating you are in programming mode.
Select Location: Press 0 (the memory location for the Master Code).
Enter New Code: Type your new 4-digit Master Code followed by the # (pound) key to confirm. You will hear two beeps for success. Exit: Press * to exit programming mode. 👥 Adding or Changing User Codes
User codes are the actual passwords used to unlock the door. Enter Programming Mode: [Current Master Code] + *. Select Slot: Choose a user slot (e.g., 1 for User 1). Enter Code: Type the new 4-digit user code followed by #. Exit: Press * once finished. 🛠️ Forgot Your Master Code? (DAP Reset)
If you are locked out of programming because you forgot the Master Code, you can use the Direct Access to Programming (DAP) jumper located on the internal circuit board. Disconnect Power: Turn off the power supply to the keypad.
Move Jumper: Locate the DAP jumper and move it from the OFF position to the ON position. Reconnect Power: The keypad will start beeping.
Reset Jumper: Move the jumper back to the OFF position (the beeping should stop).
Re-program: The keypad is now in programming mode. Follow the steps above to set a new Master Code in location 0.
Watch this step-by-step walkthrough to see exactly how to move the internal DAP jumper and reset your keypad to programming mode:
To change the Master Code or User Codes on an AEI DK-9830 digital keypad, follow these steps according to the AEI DK-9830 User Manual How to Change the Master Code
The Master Code is used only to enter programming mode; it cannot be used to operate the door. The factory default is Enter the existing Master Code twice: [Master Code] [Master Code]
(The status LED should turn amber/orange, indicating programming mode). (to select the Master Code location). Enter your new 4-digit Master Code to confirm. to exit programming mode. How to Change or Add a User Code
User Codes are stored in memory "slots" (01 to 20 for this model). Master Code twice to enter programming mode. 2-digit Slot Number for the first user). Enter your new 4-digit User Code to confirm. Repeat steps 2–4 for other users, or press Reset to Factory Defaults
2. Assumptions & Threat Model
- Assumed environment: Local admin, remote management via HTTPS/SSH, optional physical access.
- Adversaries: Network eavesdropper, active MITM, remote attacker with valid session token, local attacker with filesystem access, privileged insider, side-channel attacker.
- Trust anchors: Device boot integrity, device certificate store, secure clock (or monotonic counter).
10. Recovery & Reset Procedures
- Secure factory-reset procedure that requires physical presence (button press with power-cycle) or authenticated recovery token printed on device provisioning label.
- Emergency admin reset: require signed reset request using device-specific attestation; log event and force password change on next boot.
8. Rate Limiting & Lockout
- Per-account exponential backoff and temporary lockout after configurable failed attempts (e.g., 5 attempts → 30s, 6→2m, 7→15m). Persist failed-attempt counters in non-volatile storage with decay.
Part 2: How to Change the Password on AEI DK 9830 (Standard Method)
If you already know the current administrator password and simply want to update it for security, follow these steps:
Step 1: Log into Admin mode as described above.
Step 2: Navigate to System Settings (usually using the up/down arrows). Press OK.
Step 3: Scroll down to Admin Options or Security Settings.
Step 4: Select Change Admin Password (sometimes labeled as "PWD Management").
Step 5: You will be prompted to enter the Old Password. Type it in and press OK.
Step 6: Enter the New Password.
- Best Practice: Use a 6-8 digit number. Do not use sequential numbers (123456) or repeated numbers (111111).
- Avoid: Birthdays or the company room number.
Step 7: Confirm the New Password by typing it again.
Step 8: The machine will beep and display: "Password changed successfully."
Step 9: Press ESC to return to the main screen. Log out by pressing Menu again or simply waiting 10 seconds. Test the new password immediately.
Pro Tip: Write the new password down in a sealed envelope stored in a company safe. Do not tape it to the back of the machine.
Step 7: Exit and Test
- Press the
MenuorEsckey repeatedly to exit all menus and return to the standby screen. - Log out entirely (if the device doesn’t auto-logout, remove your fingerprint or wait 10 seconds).
- Test your new password by re-entering the menu using the newly created credentials. This is critical—never lock yourself out without a backup.
Troubleshooting Common Password Change Issues
| Problem | Possible Cause | Solution |
| :--- | :--- | :--- |
| "Access Denied" when entering menu | Incorrect current password | Ensure caps lock is off (not relevant for digits); check if someone changed default; try 0000. |
| New password not accepted | Too short/long or contains invalid character | Use strictly 4-8 numeric digits; no letters or symbols. |
| Device freezes after saving | Firmware glitch | Power cycle (unplug for 30 seconds). The new password should still be active. |
| User password change not working | Insufficient admin privileges | Log in with master admin, not a sub-admin account. |
5.3 SSH/CLI Flow
- Use PAM or native auth module; password change performed by exec of secure utility that validates, updates, and logs.
5.1 API Endpoint (REST) — /api/v1/password/change
- Method: POST
- Auth: Bearer token tied to session; require re-authentication with current password for sensitive operation.
- Payload (JSON):
- current_password: string (UTF-8)
- new_password: string (UTF-8)
- new_password_confirm: string (UTF-8)
- nonce: base64 (32 bytes) — server-generated challenge included in form to tie to session
- otp: optional string (for 2FA)
- Transport: TLS 1.3; server requires client to include Origin and CSRF token header when from web UI.
- Response: 200 OK or structured error codes (400/401/403/429/500). Use JSON with code and message.