8.9 KiB
MetaMask Troubleshooting Guide - ChainID 138
Date: $(date)
Network: SMOM-DBIS-138 (ChainID 138)
🔍 Common Issues & Solutions
1. Network Connection Issues
Issue: "Network Error" or "Failed to Connect"
Symptoms:
- MetaMask shows "Network Error"
- Can't fetch balance
- Transactions fail immediately
Solutions:
-
Verify RPC URL
Correct: https://rpc-core.d-bis.org Incorrect: http://rpc-core.d-bis.org (missing 's') -
Check Chain ID
- Must be exactly
138(decimal) - Not
0x8a(that's hex, but MetaMask expects decimal in manual entry) - Verify in network settings
- Must be exactly
-
Remove and Re-add Network
- Settings → Networks → Remove "SMOM-DBIS-138"
- Add network again with correct settings
- See Quick Start Guide
-
Clear MetaMask Cache
- Settings → Advanced → Reset Account (if needed)
- Or clear browser cache and reload MetaMask
-
Check RPC Endpoint Status
curl -X POST https://rpc-core.d-bis.org \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
2. Token Display Issues
Issue: "6,000,000,000.0T WETH" Instead of "6 WETH"
Root Cause: WETH9 contract's decimals() returns 0 instead of 18
Solution:
-
Remove Token
- Find WETH9 in token list
- Click token → "Hide token" or remove
-
Re-import with Correct Decimals
- Import tokens → Custom token
- Address:
0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 - Symbol:
WETH - Decimals:
18⚠️ Critical: Must be 18
-
Verify Display
- Should now show: "6 WETH" or "6.0 WETH"
- Not: "6,000,000,000.0T WETH"
See: WETH9 Display Fix Instructions
Issue: Token Not Showing Balance
Symptoms:
- Token imported but shows 0 balance
- Token doesn't appear in list
Solutions:
-
Check Token Address
- WETH9:
0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 - WETH10:
0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f - Verify address is correct (case-sensitive)
- WETH9:
-
Verify You Have Tokens
cast call 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 \ "balanceOf(address)" <YOUR_ADDRESS> \ --rpc-url https://rpc-core.d-bis.org -
Refresh Token List
- Click "Import tokens" → Refresh
- Or remove and re-add token
-
Check Network
- Ensure you're on ChainID 138
- Tokens are chain-specific
3. Transaction Issues
Issue: Transaction Stuck or Pending Forever
Symptoms:
- Transaction shows "Pending" for extended time
- No confirmation after hours
Solutions:
-
Check Network Status
- Verify RPC endpoint is responding
- Check block explorer for recent blocks
-
Check Gas Price
- May need to increase gas price
- Network may be congested
-
Replace Transaction (Same Nonce)
- Create new transaction with same nonce
- Higher gas price
- This cancels the old transaction
-
Reset Nonce (Last Resort)
- Settings → Advanced → Reset Account
- ⚠️ This clears transaction history
Issue: "Insufficient Funds for Gas"
Symptoms:
- Transaction fails immediately
- Error: "insufficient funds"
Solutions:
-
Check ETH Balance
- Need ETH for gas fees
- Gas costs vary (typically 0.001-0.01 ETH)
-
Reduce Gas Limit (If too high)
- MetaMask may estimate too high
- Try manual gas limit
-
Get More ETH
- Request from network administrators
- Bridge from another chain
- Use faucet (if available)
Issue: Transaction Reverted
Symptoms:
- Transaction confirmed but reverted
- Error in transaction details
Solutions:
-
Check Transaction Details
- View on block explorer
- Look for revert reason
-
Common Revert Reasons:
- Insufficient allowance (for token transfers)
- Contract logic error
- Invalid parameters
- Out of gas (rare, usually fails before)
-
Verify Contract State
- Check if contract is paused
- Verify you have permissions
- Check contract requirements
4. Price Feed Issues
Issue: Price Not Updating
Symptoms:
- Oracle price seems stale
- Price doesn't change
Solutions:
-
Check Oracle Contract
cast call 0x3304b747e565a97ec8ac220b0b6a1f6ffdb837e6 \ "latestRoundData()" \ --rpc-url https://rpc-core.d-bis.org -
Verify
updatedAtTimestamp- Should update every 60 seconds
- If > 5 minutes old, Oracle Publisher may be down
-
Check Oracle Publisher Service
- Service should be running (VMID 3500)
- Check service logs for errors
-
Manual Price Query
- Use Web3.js or Ethers.js to query directly
- See Oracle Integration Guide
Issue: Price Returns Zero or Error
Symptoms:
latestRoundData()returns 0- Contract call fails
Solutions:
-
Verify Contract Address
- Oracle Proxy:
0x3304b747e565a97ec8ac220b0b6a1f6ffdb837e6 - Ensure correct address
- Oracle Proxy:
-
Check Contract Deployment
- Verify contract exists on ChainID 138
- Check block explorer
-
Verify Network
- Must be on ChainID 138
- Price feeds are chain-specific
5. Network Switching Issues
Issue: Can't Switch to ChainID 138
Symptoms:
- Network doesn't appear in list
- Switch fails
Solutions:
-
Add Network Manually
- See Quick Start Guide
- Ensure all fields are correct
-
Programmatic Addition (For dApps)
try { await window.ethereum.request({ method: 'wallet_switchEthereumChain', params: [{ chainId: '0x8a' }], // 138 in hex }); } catch (switchError) { // Network doesn't exist, add it if (switchError.code === 4902) { await window.ethereum.request({ method: 'wallet_addEthereumChain', params: [networkConfig], }); } } -
Clear Network Cache
- Remove network
- Re-add with correct settings
6. Account Issues
Issue: Wrong Account Connected
Symptoms:
- Different address than expected
- Can't see expected balance
Solutions:
-
Switch Account in MetaMask
- Click account icon
- Select correct account
-
Import Account (If needed)
- Settings → Import Account
- Use private key or seed phrase
-
Verify Address
- Check address matches expected
- Addresses are case-insensitive but verify format
Issue: Account Not Showing Balance
Symptoms:
- Account connected but balance is 0
- Expected to have ETH/tokens
Solutions:
-
Verify Network
- Must be on ChainID 138
- Balances are chain-specific
-
Check Address
- Verify correct address
- Check on block explorer
-
Refresh Balance
- Click refresh icon in MetaMask
- Or switch networks and switch back
🔧 Advanced Troubleshooting
Enable Debug Mode
MetaMask Settings:
- Settings → Advanced
- Enable "Show Hex Data"
- Enable "Enhanced Gas Fee UI"
- Check browser console for errors
Check Browser Console
Open Console:
- Chrome/Edge: F12 → Console
- Firefox: F12 → Console
- Safari: Cmd+Option+I → Console
Look For:
- RPC errors
- Network errors
- JavaScript errors
- MetaMask-specific errors
Verify RPC Response
Test RPC Endpoint:
curl -X POST https://rpc-core.d-bis.org \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_blockNumber",
"params": [],
"id": 1
}'
Expected Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": "0x..."
}
📞 Getting Help
Resources
-
Documentation:
-
Block Explorer:
https://explorer.d-bis.org- Check transactions, contracts, addresses
-
Network Status:
- RPC:
https://rpc-core.d-bis.org - Verify endpoint is responding
- RPC:
Information to Provide When Reporting Issues
- MetaMask Version: Settings → About
- Browser: Chrome/Firefox/Safari + version
- Network: ChainID 138
- Error Message: Exact error text
- Steps to Reproduce: What you did before error
- Console Errors: Any JavaScript errors
- Transaction Hash: If transaction-related
✅ Quick Diagnostic Checklist
Run through this checklist when troubleshooting:
- Network is "SMOM-DBIS-138" (ChainID 138)
- RPC URL is
https://rpc-core.d-bis.org - Chain ID is
138(decimal, not hex) - Account is connected and correct
- Sufficient ETH for gas fees
- Token decimals are correct (18 for WETH)
- Browser console shows no errors
- RPC endpoint is responding
- Block explorer shows recent blocks
Last Updated: $(date)