# MetaMask Troubleshooting

If you're having any issues while connecting to MetaMask or even after you've connected, this article will help you resolve them. You should be able to find a solution for ALL MetaMask-related issues, but if nothing in this article works, please [**contact us**](https://gridplus.io/contact/).

#### **Common Issues**

* Transaction requests approved on Metamask no longer pop up on the Lattice screen
* Stuck at the "Looking for your Lattice..." screen on MetaMask
* "**Failed to get accounts. Please forget the device and try again. Make sure you do not have a locked SafeCard inserted.**" error is shown on MetaMask
* The screen is stuck spinning on the "Loading - Connecting..." Lattice Connector page

<figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2FXFj9q7AZKRvgrecg4WWJ%2F3%20(1).png?alt=media&#x26;token=3603bb6c-183b-4eb6-bc86-10f031243e4c" alt=""><figcaption></figcaption></figure>

### Step-By-Step Guide For Troubleshooting MetaMask

Going through all these steps won't be necessary for most MetaMask issues as most should be fixed by re-connecting - the guide tells you explicitly when to try connecting to MetaMask again.

### A. The Basics

#### 1. Internet Connection

If you can't get transaction requests to pop up on your Lattice screen despite approving them in MetaMask, the first thing to check is whether both your computer and your Lattice are connected to the internet. This can also be the cause of getting stuck on the **"Loading - Connecting..." page** on the Lattice Connector.

{% hint style="info" %}
You don't have to be connected to the same network, but both devices do have to be **online**. You can check your Lattice's connection status directly on the screen in the upper right corner (see the [**firmware reference article**](https://docs.gridplus.io/lattice1/lattice1-firmware-reference) to know what icons to look for).
{% endhint %}

If you're sure you're online, move on to step 2.

#### 2. Check Your MetaMask and Lattice Firmware Versions

The latest Lattice firmware version can always be found in [**this article**](https://docs.gridplus.io/lattice1/lattice1-firmware-reference). If you're not on the latest, just go to **System Preferences → Software Update**. If you cannot see an update available here, make sure your Lattice is [**online**](https://docs.gridplus.io/support/lattice1-wifi-troubleshooting).

To update your MetaMask extension, follow the guides below:

* **Chromium:** right-click on the MetaMask icon and select **Manage Extension**. Then enable **Developer mode** in the top right corner and after that, just click on **Update.**

<figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2FvJK45ZQDbjSjCXUuMACM%2Fmm21.png?alt=media&#x26;token=a248b723-13be-4fef-869d-2d4b5789ce1f" alt=""><figcaption></figcaption></figure>

* **Firefox:** right-click on the MetaMask icon and select **Manage Extension**. In the gear icon menu in the top right, click on **Check for Updates**. If there are any updates available, install them.

<figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2FjPT1xw2UQnYtTmdeW6zz%2Fmm22.png?alt=media&#x26;token=ebea7cc4-ee12-42c1-b852-26e369468d51" alt=""><figcaption></figcaption></figure>

#### 3. Unlock Your SafeCard

If you're trying to connect a SafeCard wallet to MetaMask, the inserted SafeCard has to be **unlocked** prior to initiating the connection - MetaMask cannot import addresses from a locked card.

Trying to connect with the locked card will result in the **"Failed to get accounts" error**. Unlock your card and try again. If you're not connecting with a card or your card is unlocked, move on to step 4.

#### 4. Incorrect Device ID And/Or Password

Make sure that you're typing in the **correct device ID** if you see the spinning wheel on the Lattice Connector page (this might also be caused by your Lattice being offline, but this part was written with the assumption that you made sure your Lattice indeed is online as per step 1.

{% hint style="success" %}
You get a new device ID every time you reset the Lattice network module, but you can always **find your active device ID** in the last menu item on the Lattice homescreen.
{% endhint %}

If you've already connected to MetaMask with your Lattice and you want to e.g. connect a SafeCard wallet or import more addresses from your Lattice wallet, you need to use the **same password** you've used when this connection was created. If you forgot the password, you can move on to step 5 and attempt re-connecting.

### B. Resetting the Connection

{% hint style="success" %}
**We recommend going through steps 5-7 in order.**&#x20;
{% endhint %}

#### 5. Re-Connect With Metamask

If your Lattice is online, your inserted SafeCard is unlocked (if you're using one) and you're sure you're typing in the correct device ID and password combination but you're still having issues, it's time to try removing the old connection and re-connecting to get a fresh one.

**5.1 Remove the MetaMask Permission**

Go to **Permissions** on your Lattice and if you see a MetaMask permission there, delete it.&#x20;

{% hint style="danger" %}
If you cannot access **Permissions** on your Lattice (the button will only visually react to being tapped on, but will not show you the Permissions menu), please [**reach out to us** ](https://gridplus.io/contact)before attempting anything else!\
\
This is extremely rare and you shouldn't ever see it, but if you do, get in touch.
{% endhint %}

**5.2 Remove Previously Linked Lattice Accounts from MetaMask**

Next, remove all accounts under the **Lattice group** in the list of accounts on MetaMask. You can do this by opening the accounts list, navigating to the Lattice group of accounts and then clicking on the **three dots** next to that account. Then you need to click on **Account details** and finally **Remove account**.

You need to do this for ALL Lattice accounts stored on MetaMask in order to reset the connection.

<figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2FNK50NbMT5dDQV3hKHW3Y%2Fmm23.png?alt=media&#x26;token=38a17095-35e6-4b1f-b758-68df210f26ea" alt=""><figcaption></figcaption></figure>

**5.3 Delete MetaMask Cache**

{% hint style="info" %}
If you're using a Chromium-based browser such as Chrome, Brave etc., you can delete only **hosted app data** without deleting your cookies or browser cache. On Firefox, you'd have to clear all cookies and cache, so we only recommend this step for Chromium users and we suggest Firefox users try the next steps of this guide **before** clearing cookies and cache.
{% endhint %}

* **Chrome** - copy this and paste it into the URL bar: `chrome://settings/clearBrowserData` And then select Advanced, All time in the Time range and only select Hosted App Data.
* **Brave** - the same, but the URL is slightly different: `brave://settings/clearBrowserData`
* **Firefox** - paste this into the URL bar: `about:preferences#privacy`\
  And then click on Clear Data under Cookies and Site Data.

#### 6. Reset Lattice Manager App State

Most MetaMask issues will be resolved by re-connecting as described above, but there can be edge cases where you'll have to remove the **MetaMask 3rd party connection** from the **Lattice Manager** and reset app state.&#x20;

Here's how:

* Go to the [**Lattice Manager**](https://lattice.gridplus.io/) URL and scroll down
* Click to **Settings** and scroll down
* Click on **Reset App State** and then **Update and Reload**

<figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2Fp7dxvFfcsslqELJZYJUf%2Fimage.png?alt=media&#x26;token=3b2471cf-0e19-4e23-be22-2257f89153c9" alt=""><figcaption></figcaption></figure>

#### 7. Delete Local Storage on the Lattice Manager

{% hint style="info" %}
We've seen some cases where resetting the app state didn't delete all previously stored connections from the Lattice Manager, so we're putting this here too. It's possible you will not see anything under the Application/Local Storage tab, so skip this if that's the case.
{% endhint %}

Before you delete local storage from your browser, make sure you have no MetaMask and Lattice Manager permissions on your Lattice and also go through steps 5 and 6 again.

Then, go to the Lattice Manager URL ([**https://lattice.gridplus.io/**](https://lattice.gridplus.io/)) and when there, do this:

* **Chrome**: Menu → More Tools → Developer tools → Application tab → Local Storage under the storage tab → lattice.gridplus.io → Clear all <img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2Fmr8l1ahRwm9FewuIFYrq%2Fno_entry-removebg-preview.png?alt=media&#x26;token=fcfc3e03-86e1-4a8e-bc25-e08921dcd809" alt="" data-size="line"><br>

  <figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2FvcMvgy2Rq8oSBZXUnywN%2Fmm24.png?alt=media&#x26;token=0062d0b7-31ca-48dc-825a-4682a586c05f" alt=""><figcaption></figcaption></figure>
* **Firefox**: Menu → More tools → Web Developer Tools → Storage → Local Storage → Right click the lattice.gridplus.io item → Delete All

  <figure><img src="https://268056579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MZJQypB4fk8YIsDKCl_%2Fuploads%2F7dMck9lpUfZeZ5BcT7jS%2Fff.png?alt=media&#x26;token=3a7d3e28-350a-437d-8e3a-475a880fb7fa" alt=""><figcaption></figcaption></figure>

You should then be able to go through the pairing process without any issues.

### C. Nuclear Options

#### 8. Reset Device ID

If you still cannot connect even after you delete all Lattice-linked accounts from MetaMask, remove the MetaMask permission from the Lattice and reset app state on the Lattice Manager, it's time to try connecting with a **new device ID**.

To get a new device ID, you will need to manually reset your device's router - which can be done in **System Preferences → Security & Privacy → Reset Router**. This can take a couple of minutes. After this reset is done, you will then need to **re-connect to your WiFi** **network** to have internet access (if you're using WiFi).

{% hint style="info" %}
It's possible to encounter a rare situation in which the **device ID will not be changed** after you reset the router. If this happens to you, powercycle your Lattice (unplug, plug back in), and try again. Confirm that your GCE version is 0.49.0. If you still can't get a new ID after updating the router and powercycling the device, [**please reach out to us**](https://gridplus.io/contact/).
{% endhint %}

After the device ID is reset, **DO NOT ATTEMPT TO RE-CONNECT** right away! First, you need to reset the app state and clear local storage on the Lattice Manager as described in steps 6 and 7 - then you can try connecting again.

#### 9. Reinstall MetaMask

If everything else fails and you still somehow get stuck on a particular error, there's also the "nuclear" option of getting a completely fresh MetaMask instance installed before attempting to connect again. You will first have to remove the old MetaMask from your browser completely.

{% hint style="danger" %}
You will **LOSE** all accounts/addresses that are not backed on hardware. This means the default MetaMask hot wallet Account 1 will get erased, as well as any hot accounts you imported from a private key.

Because of this, you should make sure that removing MetaMask will not result in any unwanted consequences very carefully!
{% endhint %}

Removing MetaMask is fairly simple - just right click the extension and select **"Remove from Chrome" or "Remove extension"** on Firefox. Before installing MetaMask again, make sure you removed the MetaMask permission from your Lattice and you can also reset app state and delete local storage on the Lattice Manager again - just to be sure.

After you're ready to connect, install MetaMask again:

{% embed url="<https://docs.gridplus.io/metamask/installing-metamask>" %}

And then obviously go through the [**connecting process**](https://docs.gridplus.io/metamask/connecting-to-metamask) again.

{% hint style="success" %}
If you still can't get this to work after going through all these steps, please [**create a ticket**](https://gridplus.io/contact/) or reach out to us [**on our Discord server**](https://discord.gg/gridplus) and we'll help you figure this out.
{% endhint %}
