LedgerHQ/ledgerjs

Mumbai Polygon not working

marlondevacc opened this issue · 0 comments

Hey guys,

it seems the testnet of Polygon (Mumbai, chainid 80001) seems not to work while trying to interact with contracts. The problems seems to be:

Error: 
    at new CustomError (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ledgerhq\errors\dist\index.cjs.js:19:22)
    at remapTransactionRelatedErrors (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ledgerhq\hw-app-eth\src\Eth.js:37:12)
    at C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ledgerhq\hw-app-eth\src\Eth.js:225:15 {
  name: 'EthAppPleaseEnableContractData',
  message: 'Please enable Contract data on the Ethereum app Settings'
}

So far I checked the following:
If I use the Polygon App on the Ledger the above error will occur. (And yes, I enabled blind signing, debug info, nonce info).
If I use the Ethereum App on the Ledger, the error below will be shown (after signing and approving the transaction):

Error: transaction.chainId/signature.v mismatch (argument="signature", value={"v":37,"r":"0xe4199eb4a7088a2dd191e9be48e3bd0896cdc6f967404e2a99a34cef558ed082","s":"0x2e80ae6230833b1f99fcf1e30260a9a812d206137f2d6534ae924c775112cb23"}, code=INVALID_ARGUMENT, version=transactions/5.6.0)
    at Logger.makeError (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\logger\src.ts\index.ts:261:28)
    at Logger.throwError (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\logger\src.ts\index.ts:273:20)
    at Logger.throwArgumentError (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\logger\src.ts\index.ts:277:21)
    at _serialize (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\transactions\src.ts\index.ts:292:21)
    at Object.serialize (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\transactions\src.ts\index.ts:311:16)
    at LedgerSigner.<anonymous> (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\hardware-wallets\src.ts\ledger.ts:111:29)
    at step (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\hardware-wallets\lib\ledger.js:48:23)
    at Object.next (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\hardware-wallets\lib\ledger.js:29:53)
    at fulfilled (C:\Users\death\workspace\metavio\contracts\scripts\node_modules\@ethersproject\hardware-wallets\lib\ledger.js:20:58) {
  reason: 'transaction.chainId/signature.v mismatch',
  code: 'INVALID_ARGUMENT',
  argument: 'signature',
  value: {
    v: 37,
    r: '0xe4199eb4a7088a2dd191e9be48e3bd0896cdc6f967404e2a99a34cef558ed082',
    s: '0x2e80ae6230833b1f99fcf1e30260a9a812d206137f2d6534ae924c775112cb23'
  }
}

The error also makes sense, because it is signed against a different chainId as it was used with the ethereum app and not the polygon app.

So yeah, surely the Polygon app should work, but unfortunately it seems to always give back the status code 0x6a80, which returns the EthAppPleaseEnableContractData error.