Troubleshooting
This document covers the most common issues encountered when using AmebaClaw, organized by problem type. Each entry describes the symptom, lists likely causes, and provides step-by-step resolution guidance. First-time users are encouraged to work through sections in order.
Note
Before investigating any issue, connect to the device over serial and monitor live logs. Logs often reveal the root cause immediately. Serial monitor command:
python ameba.py monitor -p /dev/ttyUSB0 -b 1500000
Flash & Boot Issues
Cannot Find the AmebaClaw-XXXX Hotspot
Symptom
After powering on the device, scanning for nearby Wi-Fi networks on a phone or computer does not show a hotspot named AmebaClaw-XXXX (where XXXX is the last four characters of the device MAC address).
Likely Causes
The device has not booted successfully, or USB power is insufficient
Firmware has not been flashed, or the flash was incomplete
The device has already been configured with Wi-Fi credentials and is no longer broadcasting the SoftAP hotspot (this is normal behavior)
Resolution Steps
Confirm the power supply is adequate
Check that the USB cable is firmly connected. Use a USB 3.0 port on a computer or a dedicated 5 V / 1 A (or higher) power adapter. Avoid charge-only cables that carry no data.
Observe the device indicator LED
During a normal boot the LED blinks. If there is no activity at all, check the power supply or re-flash the firmware.
Connect via serial and read the boot log
python ameba.py monitor -p /dev/ttyUSB0 -b 1500000
If there is no output whatsoever, the firmware is not present or the device is faulty. If you see boot messages but no SoftAP-related lines, the firmware may be corrupted.
Device has previously been configured with Wi-Fi
If the device has already connected to a network, it will attempt to reconnect to the saved network on boot rather than broadcasting a hotspot. Clear the saved Wi-Fi configuration via AT command to return to SoftAP mode:
AT+CLAW=wifi,clear
Restart the device after sending the command. The
AmebaClaw-XXXXhotspot will reappear.Re-flash the firmware
If the steps above do not help, use the online flash tool to write a complete firmware image.
Tip
The SoftAP hotspot name is AmebaClaw-XXXX and has no password — connect directly. Once connected, open a browser and navigate to 192.168.1.1 to access the Web admin panel.
Online Flash Tool Cannot Connect to the Device
Symptom
After opening the online flash tool page and clicking “Connect Device”, the port selection dialog does not appear, or appears but lists no device.
Likely Causes
The browser does not support the Web Serial API (non-Chromium browsers)
The USB-to-serial driver is not installed (common on Windows)
The USB cable supports charging only and does not carry data
The operating system has not recognized the device
Resolution Steps
Switch to a browser that supports Web Serial
The Web Serial API is only available in Chromium-based browsers. Use Google Chrome 89+ or Microsoft Edge 89+. Firefox and Safari are not supported.
Install the USB-to-serial driver (Windows)
AmebaClaw boards typically use a CH340 or CP210x chip. Install the corresponding driver:
CH340 / CH341: Install the official WCH driver
CP210x: Install the official Silicon Labs driver
After installation, open Device Manager and confirm that a new COM port appears under “Ports (COM & LPT)”.
Confirm you are using a data-capable cable
Some USB cables can only deliver power and cannot transfer data. Replace the cable with one that explicitly supports data transfer and try again.
Re-seat the USB connection
Unplug the USB cable, wait 3 seconds, plug it back in, and allow the operating system to finish loading the driver before retrying.
Grant serial port permission on Linux
sudo usermod -aG dialout $USER
Log out and log back in for the change to take effect.
Note
macOS users generally do not need to install a separate driver. If a CH340 device is not recognized, try installing the WCH macOS driver.
Flash Fails Midway
Symptom
The flash progress bar stops partway through. The page reports an error such as “write failed”, “verification error”, or “connection lost”.
Likely Causes
Loose USB connection or unstable power
Insufficient current from the USB port
The serial port is already in use by another application
The firmware file download was incomplete
Resolution Steps
Disconnect and reconnect the device
Close the current flash tool page, unplug the USB cable, wait 5 seconds, plug it back in, refresh the page, and start again.
Ensure no other application is using the serial port
Close all serial monitoring tools (serial assistants, minicom,
ameba.py monitor, etc.) before flashing. Only one application can hold the serial port at a time.Click “Start Flash” again
You do not need to re-download the firmware file. Simply click the flash button to retry.
Try a different USB cable and port
Prefer the USB 3.0 ports on the back panel of a desktop computer. Avoid USB hubs. Use a certified, high-quality data cable.
If failures persist, try a different computer
This rules out local environment issues such as driver incompatibilities or USB controller problems.
Warning
A failed mid-flash leaves the firmware in an incomplete state. The device may not boot normally. Re-flashing a complete firmware image will restore it.
Network Issues
Wi-Fi Connection Fails
Symptom
After entering the Wi-Fi SSID and password in the Web admin panel and saving, the device restarts but does not connect to the router. Serial logs show repeated connection failures or retry loops.
Likely Causes
The SSID or password was entered incorrectly (both are case-sensitive)
The router is broadcasting only on the 5 GHz band; AmebaClaw supports 2.4 GHz only
The router has “AP isolation” or “client isolation” enabled
Signal strength is too weak
Resolution Steps
Double-check the SSID and password
Wi-Fi credentials are case-sensitive. Verify the password is correct by connecting another device to the same network first, then re-enter the credentials in the Web admin panel.
Confirm the 2.4 GHz band is available
AmebaClaw only supports 2.4 GHz Wi-Fi. If the router uses a unified dual-band SSID, the device usually selects 2.4 GHz automatically. However, if the router provides only a 5 GHz network, the device cannot connect. Log in to the router admin page and confirm that the 2.4 GHz radio is enabled.
Disable AP isolation on the router
Some routers — especially those serving guest networks, corporate environments, or certain home router configurations — enable “AP isolation” or “wireless isolation”, which prevents devices on the same Wi-Fi network from communicating with each other. Disable this setting in the router admin page, or connect the device to a network that does not isolate clients.
Move the device closer to the router
Rule out signal strength as a factor before investigating further.
Read detailed error messages from serial output
python ameba.py monitor -p /dev/ttyUSB0 -b 1500000
Look for Wi-Fi connection error messages in the log for more specific failure information.
Clear saved Wi-Fi and reconfigure
If multiple attempts fail, clear the stored credentials before trying again:
AT+CLAW=wifi,clear
Connected to Wi-Fi but Cannot Open the Web Admin Panel
Symptom
Serial logs confirm that the device has joined the Wi-Fi network and received an IP address, but entering that IP address in a browser either times out or fails to load the admin panel.
Likely Causes
The computer and the device are not on the same local network
A firewall on the computer is blocking access
A browser cache issue
Incorrect URL or port
Resolution Steps
Confirm the computer is on the same local network as the device
The computer must be connected to the same Wi-Fi network as AmebaClaw. If the computer uses a wired connection, verify that both the wired and wireless networks are managed by the same router and share the same subnet.
Use the correct URL format
Enter the device IP address in the browser address bar. The default port is
80; no port number is needed:http://192.168.x.x
Do not use HTTPS (
https://) and do not append a port number unless the log explicitly states otherwise.Temporarily disable the computer firewall for testing
Windows Firewall or third-party security software may block access to devices on the local network. Temporarily disable the firewall and retry. If that fixes the issue, add an exception rule rather than leaving the firewall off.
Force-refresh the browser or use a private window
Press
Ctrl+Shift+R(Windows / Linux) orCmd+Shift+R(macOS) to bypass the cache, or open the URL in a private/incognito window.Ping the device to verify basic connectivity
ping 192.168.x.x
If the ping fails, there is a network-level connectivity problem. Return to step 1 and investigate network isolation.
Unknown Device IP Address
Symptom
The device has connected to Wi-Fi successfully, but you do not know the IP address assigned to it and cannot access the Web admin panel.
Resolution Steps
Read the IP address from the serial boot log
Connect via serial, restart the device, and look for a line similar to the following in the output:
[WIFI] IP address: 192.168.1.xxx
python ameba.py monitor -p /dev/ttyUSB0 -b 1500000
Query the current network configuration via AT command
In the serial terminal, send the following command to display the current Wi-Fi and IP information:
AT+CLAW=cfg
The response includes the connected SSID and the device IP address.
Check the router DHCP client list
Log in to the router admin page (typically
192.168.1.1or192.168.0.1) and find the DHCP client list. Look for a device name containing “Ameba” or “Realtek” and note its IP address.Use a network scanning tool
Use
nmapor a mobile app such as Fing to scan for active devices on the local network:nmap -sn 192.168.1.0/24
AI Conversation Issues
No Reply After Sending a Message, or Request Times Out
Symptom
After sending a message from the Web admin panel real-time chat page or through a messaging bot, no reply arrives for an extended period, or a “request timed out” error is displayed.
Likely Causes
The LLM service has not been configured, or the configuration is incorrect
The API key is wrong or has expired
The device’s network connection is unstable
The LLM provider’s API is temporarily unavailable
Resolution Steps
Review the LLM configuration
Go to Web Admin Panel → LLM Configuration and confirm that all of the following fields are filled in correctly:
API Base URL (the provider endpoint)
API Key
Model ID
Authentication method (must match the provider’s requirements)
Verify that the API key is valid
Test the key from your computer using curl:
curl -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ https://api.your-provider.com/v1/models
A successful response lists available models. An HTTP 401 response means the key is invalid or expired.
Confirm the device has network access
Check the device Wi-Fi connection status from the serial terminal or review network request logs in the Web admin panel.
Check the LLM provider status page
Visit the provider’s official status page to confirm there are no ongoing incidents. If there is a provider-side outage, wait for it to be resolved.
Check for network access restrictions
In some regions or network environments, certain LLM provider endpoints may not be reachable directly. Confirm that the device’s network can access the target API address.
Garbled Replies or Wrong Language
Symptom
AI replies are in an unexpected language (for example, English when Chinese is expected), or the reply text contains garbled characters.
Likely Causes
No preferred reply language has been specified for the Agent
The
USER.mdfile does not include a language preferenceThe model infers language from context
Resolution Steps
Tell the Agent your language preference directly in the conversation
The simplest approach is to instruct the Agent directly:
Please always reply to me in English.
The Agent will remember this preference and apply it for the rest of the conversation.
Set a language preference in USER.md
Go to Web Admin Panel → File Management and edit the
USER.mdfile. Add a language preference near the top:# User Preferences - Always reply in English. - Technical terms may remain in their original language, but explanations should be in English.
After saving, the Agent will load this file as context at the start of every new conversation.
Investigate garbled characters
If the issue is garbled text rather than a language mismatch, check the following:
Verify the Web admin panel page encoding is UTF-8 (view the page source in the browser to confirm)
Check whether the messaging platform (Telegram, WeChat, etc.) fully supports Unicode characters
“Model Not Found” or “Authentication Failed” Error
Symptom
AI conversations return errors such as model not found, invalid model, authentication failed, or unauthorized.
Likely Causes
The Model ID contains a typo (model IDs are case-sensitive)
A model name unsupported by the provider was entered
The authentication method does not match the provider’s requirements
The API key format is incorrect
Resolution Steps
Verify the Model ID
Model IDs are case-sensitive and the naming format varies by provider. Copy the exact Model ID from the provider’s official documentation. For reference:
Provider
Example Model IDs
Anthropic
claude-opus-4-5,claude-sonnet-4-5OpenAI
gpt-4o,gpt-4o-miniDeepSeek
deepseek-chat,deepseek-reasonerCheck the authentication method
Different providers use different authentication schemes:
Anthropic: Select the Anthropic authentication method in LLM Configuration, which uses the
x-api-keyheaderOpenAI-compatible endpoints: Use the standard Bearer Token authentication method
In Web Admin Panel → LLM Configuration, confirm that the selected authentication method matches the provider documentation.
Check the API key format
Make sure the key was copied in full with no leading or trailing spaces or newline characters. Provider key formats differ (for example, Anthropic keys start with
sk-ant-, while OpenAI keys start withsk-).Test API connectivity from your computer
Use the sample curl command from the provider’s documentation to test whether the key works, independently of the device.
Replies Are Truncated or Incomplete
Symptom
AI replies are visibly cut off mid-sentence, or long responses stop after only the first portion.
Likely Causes
The maximum token limit is set too low
The model has reached its maximum output length
Resolution Steps
Increase the maximum token limit
Go to Web Admin Panel → LLM Configuration → Advanced Settings and increase the “Max Tokens” value. A setting of
2048or4096is recommended for most tasks; the upper bound depends on the model in use.Check the model’s maximum output length
Consult the provider documentation for the
max_output_tokenslimit of the model you are using. Do not set Max Tokens above this value.Ask the Agent to continue in the conversation
If a reply is already truncated, send “Please continue” and the Agent will resume from where it left off.
Tip
Increasing Max Tokens raises the cost of each API call. For typical tasks, 1024 to 2048 is usually sufficient. Only increase the value when you regularly need longer responses.
Lua Skill Issues
Skill Execution Error: “module not found”
Symptom
When the Agent executes a Lua Skill, the response includes an error such as module not found or module 'xxx' not found, and the Skill fails.
Likely Causes
The Skill is attempting to
requirea hardware module that is only available in REPL modeCertain hardware modules (
wifi,spi,uart,pwm,ir,lcdc,adc,thermal,touch, and others) are intentionally excluded from the Skill sandbox for security and resource management reasons
Resolution Steps
Identify which modules the Skill is importing
Review the Lua Skill code and check whether it calls
requireon any of the following restricted modules:wifi, spi, uart, pwm, ir, lcdc, adc, thermal, touch
Switch to Lua REPL mode
For tasks that require hardware modules, use the Lua REPL mode via AT command instead:
AT+CLAW=lua
Once in REPL mode, you can
requirehardware modules and execute code interactively.Ask the Agent to use REPL mode
Tell the Agent to change the execution method directly:
Please re-run this Lua code using REPL mode instead.
The Agent will switch to the appropriate execution method automatically.
Note
Skill mode is designed for stateless tasks that do not depend on low-level hardware access (such as data processing, HTTP requests, and format conversion). For hardware control tasks, use REPL mode or encapsulate the hardware access behind a dedicated Skill interface.
GPIO Control Has No Effect / Wrong Pin
Symptom
The Lua code executed by the Agent performs GPIO operations, but the physical hardware (LED, relay, etc.) does not respond, or the wrong component is being controlled.
Likely Causes
The GPIO number in the code does not correspond to the correct physical pin
The actual pin assignment of the development board has not been verified
The target pin may already be in use by another function
Resolution Steps
Activate the board_hardware_info Skill to query pin information
Tell the Agent in the conversation:
Activate board_hardware_info to query available pins and their functions.
The Agent will call this Skill to retrieve the pin mapping table for the current board, including the functions supported by each pin (GPIO / ADC / PWM / SPI / I2C, etc.).
Correct the pin number based on the query result
After obtaining the pin information, instruct the Agent:
Which pin is the on-board LED connected to? Please rewrite the control code using the correct pin number.
Verify pin direction and initial level
Before controlling a GPIO pin, confirm that the code sets the correct pin direction (input or output) and initial logic level.
Check for pin conflicts
Some pins are reserved during system initialization for functions such as UART (serial logging) or SPI (Wi-Fi). Attempting to use these as general-purpose GPIO will have no effect. When querying pin information, look for pins marked “occupied” or “reserved”.
Skill Execution Times Out
Symptom
When the Agent executes a Lua Skill, the task is terminated with a timeout error before it completes. This typically occurs when the Skill contains delay loops, continuous monitoring logic, or long wait operations.
Likely Causes
lua_runmode enforces a 30-second timeoutThe Skill code contains long
sleeploops or blocking wait logic
Resolution Steps
Understand the execution mode timeout limits
lua_run: synchronous execution with a maximum of 30 seconds; suitable for short, one-shot taskslua_run_async: asynchronous execution; suitable for long-running background tasks
Ask the Agent to switch to async mode
Describe the requirement in the conversation and ask the Agent to rewrite the Skill:
This task needs to run continuously. Please rewrite the Skill as an async version using lua_run_async.
Refactor long-running tasks to use event-driven patterns
For periodic tasks, use a timer rather than a sleep loop to reduce resource usage:
-- Recommended: use a timer local timer = require("timer") timer.create(1000, function() -- executes every 1000 ms end) -- Not recommended: sleep loop inside lua_run (will time out) while true do do_something() os.sleep(1000) end
Tip
Long-running background tasks (such as continuous sensor monitoring or persistent message pushing) should always use lua_run_async. Reserve lua_run for one-off, short-lived tasks.
IM Bot Issues
Telegram Bot Does Not Respond
Symptom
Messages sent to the Telegram bot receive no reply, either for an extended period after first setup or following a period of normal operation.
Likely Causes
The Bot Token is configured incorrectly or has been revoked
The
/startcommand has not been sent to the bot (required for first use)The device’s network connection is down
The Telegram API is not reachable from the current network environment
Resolution Steps
Confirm the Bot Token is correct
Go to Web Admin Panel → Messaging Bot Configuration → Telegram and verify that the Bot Token is complete and contains no extra spaces. A valid Bot Token follows the format
1234567890:AAXXXXXX...(digits, a colon, then an alphanumeric string).Send the /start command to the bot
For first-time use, you must search for the bot by its username in Telegram, then tap “Start” or send the
/startcommand to open the conversation. Due to Telegram’s security model, a bot cannot send messages to a user who has not initiated a conversation with it.Check the device’s network connection
Review the serial logs to confirm that the device Wi-Fi is connected and that external network access is working.
Verify Telegram API accessibility from the device’s network
Some networks (corporate environments, or certain geographic regions) block access to the Telegram API (
api.telegram.org). Test reachability from your computer:curl https://api.telegram.org/bot<YOUR_TOKEN>/getMeIf this request fails, resolve the network access issue before proceeding.
Resave the configuration and restart
In the Web admin panel, resave the Telegram configuration, then restart the device (via the admin panel or by cycling power).
WeChat QR Code Scan Has No Effect
Symptom
After configuring the WeChat bot in the Web admin panel and scanning the displayed QR code with WeChat, the admin panel status remains “Not Connected” or “Waiting for Scan” with no change.
Likely Causes
The iLink URL is configured incorrectly
The QR code has expired or was not generated correctly
The configuration was not saved before scanning
The device is offline and cannot communicate with the iLink server
Resolution Steps
Confirm the iLink URL is correct
The WeChat bot connects through the iLink platform. Verify that the iLink URL entered in the admin panel is correct; it is typically:
https://ilinkai.weixin.qq.com
Make sure HTTPS is used, and that no trailing slash or extra path segment has been added.
Save the configuration, then regenerate the QR code
Click “Save” to commit the configuration first, then click “Regenerate QR Code” or refresh the page to get a fresh code before scanning.
Wait a moment after scanning
The status update can take 5 to 10 seconds after the scan. Wait patiently without refreshing the page.
Restart the device and retry
After saving the configuration, restart the device via the admin panel or by cycling power, wait for it to come back online, regenerate the QR code, and scan again:
AT+CLAW=reboot
Verify the device has network access
The device must be able to reach the iLink server to complete the WeChat bot authentication flow. Confirm that the Wi-Fi connection is up and that external network access is working.
Factory Reset
When the device has a problem that cannot be resolved through normal troubleshooting, or you need to start fresh from a clean state, follow these steps to restore the device to its factory defaults.
Reset Scope and AT Commands
What Is Reset |
AT Command |
Notes |
|---|---|---|
Wi-Fi configuration |
|
Device enters SoftAP hotspot mode on next boot |
All conversation history |
|
Clears all Agent dialogue records |
Long-term memory |
|
Clears accumulated user preference memory |
Complete Reset Procedure
Send AT commands via serial (use as needed)
AT+CLAW=wifi,clear AT+CLAW=session,clear,all AT+CLAW=memory,clear
Restore default system files via the Web admin panel
Go to Web Admin Panel → File Management and locate any system files that have been modified (such as
AGENTS.md,SOUL.md,USER.md, etc.). Click “Restore Default” to revert each file to its factory content.Re-flash the firmware (most thorough option)
If the steps above do not resolve the issue, or if you need to upgrade to the latest firmware, use the online flash tool to write a complete firmware image. This will erase all user data.
Warning
A factory reset permanently and irrecoverably erases all of the following:
Wi-Fi connection configuration
LLM API keys and model configuration
All Agent conversation history
Agent accumulated long-term memory
Custom Skills and configuration files
Before proceeding, make sure you have recorded all important configuration details, especially API keys.
Getting Help
When this document cannot resolve your issue, the following resources provide additional support.
Review device logs in real time
Serial logs are the most direct way to diagnose any problem. Nearly every abnormal condition leaves a record in the log:
python ameba.py monitor -p /dev/ttyUSB0 -b 1500000
Copy any error messages you observe. Having the exact log output makes it much easier to describe the problem accurately in a community forum or issue report.
Ask the Agent directly
The AmebaClaw Agent has self-diagnostic capability. In Web Admin Panel → Real-time Chat, you can ask the Agent questions such as:
Are there any errors in the recent logs?
Why did the Wi-Fi connection fail?
Please check whether my LLM configuration is correct.
The Agent will read the system state and logs to provide a diagnostic assessment.
GitHub Issues
Submit a bug report or search for solutions to known problems at:
https://github.com/Ameba-AIoT/ameba-claw
When opening an issue, include the following information:
Firmware version (visible in the Web admin panel or in the serial boot log)
A detailed description of the problem and steps to reproduce it
Relevant error messages from the serial log
Troubleshooting steps you have already attempted
Tip
Before opening a new issue, search the existing Issues list using relevant keywords. Another user may have encountered the same problem and already found a solution.