Poll the destination chain until the bridged NFT arrives
Bridging is mainnet only. LayerZero V2 has no DVN routes between agung and Base, so bridge calls on testnet won’t relay end-to-end. Test the round trip on peaq mainnet ↔ Base mainnet.
Both directions need the LayerZero ONFT contracts wired into peaq_robot.yaml:
peaq_os: contracts: machine_nft_adapter: "0x9AD5408702EC204441A88589B99ADfC2514AFAE6" # peaq mainnet # Pass the Base counterpart per call (see base_nft_address below) or # leave it blank to fall back to the SDK default.
Equivalent env override: MACHINE_NFT_ADAPTER_ADDRESS. Base side reference contract: 0xee8A521eA434b11F956E2402beC5eBfa753Babfa (MachineNFTBase).
Same service shape, swapped source / destination. The signer must hold the Machine NFT on Base and enough Base ETH to cover gas plus the LayerZero fee — the bridge can’t bootstrap funding for you.
Record pre/post balances on both chains for any production bridge test.
The reverse direction (Base → peaq) is the failure mode most people hit: a fresh Base has no ETH, so the bridge tx on insufficient funds. Fund Base first.
For a deeper protocol view (LayerZero peers, ONFT contracts, supported chains) see the Activate function and the SDK JS / SDK Python bridge methods, which this node mirrors 1:1.