Peera.

Newest

Stay updated with the latest posts.

Posts

2184
  • article banner.
    Owen.Peera.
    Owen486
    ForSuiJul 23, 2025
    Article

    Unable to Connect My Ledger Device to Send My SUI Tokens – My Solution

    If you’ve ever tried to send SUI tokens using your Ledger hardware wallet and been met with the frustrating message “Connect your Ledger device and try again,” you’re not alone. This issue has left many SUI holders puzzled, especially when their Ledger device is clearly plugged in, unlocked, and functioning perfectly with other cryptocurrencies like Bitcoin or Ethereum. Let’s dive into the problem, the solution that worked for countless users, and how to ensure your SUI tokens remain accessible even after firmware updates. The Problem: A Sudden Disconnect Imagine this: You’ve successfully sent and received SUI tokens for months using your Ledger device. One day, you attempt to send a transaction, and instead of proceeding, your Sui Wallet extension displays: “Connect your Ledger device and try again.” You double-check the obvious: The Ledger is plugged in. The SUI app is open on the device. Your computer recognizes the hardware wallet. Other crypto transactions via Ledger Live work flawlessly. Yet, the error persists. This scenario has affected users across platforms, often following a firmware update to the Ledger Nano S or Nano X (e.g., firmware versions 1.3 or 2.4.0). The root cause lies in how the Sui Wallet extension interacts with the Ledger’s updated software. Even though your funds are safe, the broken connection prevents you from managing your SUI tokens. The Solution: Remove and Re-Add Your Ledger Account After hours of troubleshooting, users discovered a reliable fix: removing and re-adding the Ledger-linked account in the Sui Wallet extension. This process forces the wallet to re-establish a secure connection with your hardware device, resolving the communication glitch caused by firmware changes. Here’s how to do it safely: Step 1: Remove the Account Open the Sui Wallet browser extension (Chrome or Edge). Click the hamburger menu (☰) in the top-left corner to access Settings. Navigate to Accounts. Select the problematic Ledger-linked SUI account. Click Remove Account and confirm the action. Note: Removing the account only deletes its reference in the wallet interface. Your private keys and funds remain securely stored on the Ledger device. Step 2: Re-Add the Ledger Account Ensure your Ledger device is connected and unlocked. Open the SUI app on your Ledger by navigating to it and pressing both buttons to launch it. In the Sui Wallet extension, go to Settings > Accounts. Click Connect Ledger Wallet, then Continue. Select your Ledger device and click Connect. Choose the SUI account you previously used (it will regenerate using your seed phrase). Click Unlock. Your SUI balance should now appear, and you’ll regain the ability to send tokens without errors. Why This Works: Firmware Updates and Wallet Compatibility Hardware wallets like Ledger rely on firmware updates to enhance security and functionality. However, these updates can sometimes disrupt how third-party wallets (e.g., Sui Wallet) interact with the device. For example: Ledger Nano S firmware 1.3* and *Nano X firmware 2.4.0** altered how the SUI app is recognized. Cached account data in the Sui Wallet extension became outdated, leading to connection failures. By removing and re-adding the account, you: Clear corrupted or outdated connection data. Force the wallet to sync with the updated firmware. Re-validate the SUI app session on your Ledger. This is akin to a “soft reset” for your Ledger integration, resolving compatibility issues without compromising security.

    • Sui
    • Transaction Processing
    0
  • article banner.
    Owen.Peera.
    Owen486
    ForSuiJul 23, 2025
    Article

    Unrecognized Coins in my Crypto Wallet - What Does it Mean?

    If you've ever opened your cryptocurrency wallet and noticed unfamiliar tokens or coins that you don't remember purchasing or receiving, you're not alone. This common phenomenon, known as "unrecognized coins" or "airdrops," can be confusing and sometimes concerning for both new and experienced crypto users. Understanding what these unrecognized assets mean and how to handle them is crucial for maintaining your wallet's security and making informed decisions about your digital assets. What Are Unrecognized Coins? Unrecognized coins are cryptocurrency tokens or coins that appear in your wallet without your explicit knowledge or action. These can include various types of digital assets: Airdrops : Free tokens distributed by projects to existing wallet holders Forked coins : New cryptocurrencies created from existing blockchain splits Scam tokens : Fraudulent tokens designed to trick users Legitimate project tokens : Genuine tokens from projects you may have interacted with Dust tokens : Extremely small amounts of various cryptocurrencies Unrecognized Sui Tokens In the case of Sui, the native token is SUI , which lives in a specific module (typically 0x2) on the Sui blockchain. However, anyone can create custom tokens using the Sui Move language, and these tokens might resemble SUI in name or symbol—but they are not the real thing. Why Would Fake SUI Tokens Appear in My Wallet? There are several reasons why you might receive unrecognized tokens: Token Spam (Common on Sui and Ethereum) Developers or scammers can create fake tokens and send tiny amounts (or larger ones) to thousands of wallets. This is often done to: Promote a new project Test token distribution Trick users into interacting with malicious smart contracts In this case, someone likely deployed a fake “SUI” token and sent it to multiple addresses, including the user’s. Airdrop Testing or Marketing Some projects use fake tokens as part of a test or marketing campaign. However, these tokens usually have no value and are not tradable. Phishing Attempts Fake tokens can be part of a scam. The goal is to make you curious, click on a link, visit a fake website, or interact with a malicious dApp—potentially leading to the loss of your real funds. How to Verify the Real SUI Token? To confirm whether a token is genuine SUI, check the following: Module Address : The official SUI token is defined in 0x2::sui::SUI. Any token from a different module (e.g., 0x4ca8...) is not real SUI. Token Type : Real SUI is a system-level gas token used to pay for transaction fees. Wallet Recognition : Trusted wallets like Sui Wallet, Ethos, or Backpack will only display real SUI from the correct module. Blockchain Explorers : Use Sui Explorer to look up your address and inspect the token details. You’ll see the full type, including the module and contract.

    • Sui
    • Security Protocols
    0
  • article banner.
    Meaning.Sui.Peera.
    ForSuiJul 23, 2025
    Article

    This article aims to learn and understand the #UTXO model from $BTC to $SUI

    This article aims to learn and understand the UTXO model. It uses an easy-to-understand way to simply sort out the UTXO models and implementation methods from $BTC to $SUI. I will provides a comprehensive overview, which we expand here for clarity and depth, ensuring a professional and thorough analysis. As one of the core design principles of Bitcoin, the UTXO model has become an important technical paradigm in the blockchain field since its birth. It plays an important role in ensuring transaction security and traceability, and provides another path besides the traditional account balance model. As blockchain technology has been continuously updated and iterated in recent years, the UTXO model itself has also been constantly evolving and expanding. Introduction to UTXO and Its Origins The UTXO model, or Unspent Transaction Output, is a fundamental concept in Bitcoin, where each transaction output that hasn’t been spent is tracked as a UTXO. This model treats transactions like cash, where spending involves selecting specific UTXOs to cover the amount, as opposed to modifying a single balance. The example: Alice and Bob each start with 5 dollars. In the account model, if Bob robs Alice of 2 dollars, Alice’s balance becomes 3, and Bob’s becomes 7. In the UTXO model, Alice’s 5-dollar UTXO is spent to create two new UTXOs: 2 dollars to Bob and 3 dollars back to Alice, with Bob now holding his original 5-dollar UTXO and the new 2-dollar one, totaling 7 dollars. Comparison with Account/Balance Model The account/balance model, common in banking, maintains a single balance per account, updated with each transaction Its simplicity but notes state contention issues when multiple transactions modify the same account, often requiring locks and causing performance bottlenecks, especially under high transaction volumes. In contrast, the UTXO model, as explained in Exploring the UTXO Model: What Sets It Apart in the Blockchain World?, avoids this by processing transactions on independent UTXOs, enabling parallel execution without locks, thus improving throughput and concurrency. Privacy is another advantage, with crypto wallets generating new addresses per transaction, making it harder to link to individuals, unlike the account model’s fixed addresses, which are more susceptible to correlation analysis. However, the UTXO’s limitations in handling complex business logic, such as multi-stage contracts, which led to Ethereum’s account-based model, as mentioned in What is a UTXO? Unspent Transaction Output Explained . SUI’s Object Model: Bridging UTXO and Account Models SUI, as detailed in the X post and supported by Object Model | Sui Documentation, centers storage around objects, not accounts, with two key types: OwnedObject (address-owned) and SharedObject. The OwnedObject enhanced UTXO, where only the owner can operate, and each version is spent once, aligning with UTXO’s principles. For instance, an address-owned object can only be modified by its owner, similar to spending a UTXO. SharedObject, conversely, is accessible to everyone, akin to the account model, but requires consensus to order reads and writes, addressing state contention, as noted in Sui Components | Sui Documentation. This is managed through special processing like local sorting. The Sui's Object-Oriented Approach highlights how SUI’s model impacts scalability, security, and user experience.

    • Sui
    0
  • article banner.
    Meaning.Sui.Peera.
    ForSuiJul 23, 2025
    Article

    Developing a Dice Game Contract in Sui Move

    In this tutorial, I’ll guide you through the process of creating a dice game smart contract using Sui Move. This contract enables players to bet on the outcome of a dice roll, with an admin managing the prize pool. By the end, you'll have a fully functional contract and a solid understanding of several key Sui Move concepts. Introduction The dice game contract we'll build allows for the following functionalities: Initialization: The contract creator sets up the game. Admin Management: An admin can deposit tokens into the prize pool and withdraw them as needed. Player Interaction: Players participate by guessing the dice roll outcome and placing bets. This tutorial assumes you have a basic understanding of Sui Move and focuses on introducing new concepts through practical implementation. Before dive into the code, let’s explore the key concepts you’ll encounter: 1.1 Adding Dependencies: To use tokens from another contract (e.g., a faucet token contract), you need to add it as a dependency in your project. This is done by updating the Move.toml file of your contract: 1.2 Using Assertions Assertions ensure that certain conditions are met during contract execution. The assert! macro checks a condition and, if it fails, throws an error and halts execution. This is useful for preventing invalid states, such as betting more than a player’s balance. 1.3 Generating Random Numbers Fairness in the dice game relies on random number generation. Sui Move provides the random module for this purpose. You’ll create a RandomGenerator object and use it to generate a random number between 1 and 6, simulating a dice roll. 1.4 Working with Coin and Balance In Sui Move, tokens are managed using the coin and balance modules: Coin: A wrapper around Balance, used for transferring tokens. Balance: Represents the actual token amount, allowing operations like splitting and merging. /// Game: Dice rolling. Players bet and guess the number. If correct, they win an amount equal to their bet; if incorrect, the bet goes to the game pool. module game_duck:game_duck; use sui::balance::{Self, Balance}; use sui::coin::{Self, Coin}; use sui::random::{Random, new_generator, generate_u8_in_range}; use coin_duck::duckfaucet::DUCKFAUCET; const ErrorUserInsufficient: u64 = 0x101; const ErrorGameInsufficient: u64 = 0x102; public struct Game has key { id: UID, pool_amount: Balance, } public struct Admin has key { id: UID, } fun init(ctx: &mut TxContext) { let game = Game { id: object::new(ctx), pool_amount: balance::zero() }; transfer::share_object(game); let admin = Admin { id: object::new(ctx) }; transfer::transfer(admin, ctx.sender()); } public entry fun addCoinToGamePool(game: &mut Game, in_coin: &mut Coin, amount: u64, _: &mut TxContext) { let value = coin::value(in_coin); assert!(amount = amount, ErrorGameInsufficient); let coin = coin::take(&mut game.pool_amount, amount, ctx); transfer::public_transfer(coin, ctx.sender()); } entry fun play(game: &mut Game, random: &Random, guess_num: u8, in_coin: &mut Coin, amount: u64, ctx: &mut TxContext) { assert!(game.pool_amount.value() >= (amount * 3), ErrorGameInsufficient); assert!(in_coin.balance().value() >= amount, ErrorUserInsufficient); let mut g = new_generator(random, ctx); let win_num = generate_u8_in_range(&mut g, 1, 6); if (win_num == guess_num) { let reward_coin = coin::take(&mut game.pool_amount, amount, ctx); in_coin.join(reward_coin); } else { addCoinToGamePool(game, in_coin, amount, ctx); } } Code Breakdown structure Game: A shared object with a unique id and a pool_amount (Balance) to store the prize pool. Admin: A key object owned by the admin for Initialization (init)managing the pool.

    • Sui
    • Architecture
    0
  • Meaning.Sui.Peera.
    ForSuiJul 23, 2025
    Discussion

    Upgrade cap to 0x0

    If I want to make a package immutable, can I send the upgrade cap to 0x0 upon deployment? Will this cause any issues down the line? for a coin. let upgrade_cap = sui::package::claim_upgrade_cap(ctx); transfer::public_transfer(upgrade_cap, @0x0);

    • Sui
    0
    1
  • Meaning.Sui.Peera.
    ForSuiJul 23, 2025
    Discussion

    Zklogin for old sui wallet

    I had the old sui wallet with the zklogin prior to the slush merger. Have not used it in a few months and now I cannot log into my wallet with google login. How do you load that account to the new wallets or how can I transfer my funds to another wallet?

    • Sui
    0
    1
  • harry phan.Peera.
    ForSuiJul 23, 2025
    Expert Q&A

    How many fully on-chain games are currently active or in development on Sui?

    How many fully on-chain games are currently active or in development on Sui?

    • Sui
    0
    2
  • harry phan.Peera.
    ForSuiJul 23, 2025
    Expert Q&A

    Anyone knows why my contract spending a lot gas?

    Amount: 0.007884925 Total Gas Fee: 0.280440472 (280,440,472 MIST https://testnet.suivision.xyz/txblock/36xEd687D9eUaBZCJLioyxks4rEUrSdFoePYHdXKgamM?tab=Overview Should i modify contract or is it about network?

    • Sui
    0
    3
  • harry phan.Peera.
    ForSuiJul 23, 2025
    Expert Q&A

    what is pyth oracle?

    I know Pyth is an a oracle that gives price feeds. but does anybody here worked with Pyth in Move contracts?

    • Sui
    • Architecture
    0
    3
  • shamueely.Peera.
    ForSuiJul 22, 2025
    Discussion

    The Sui Stack: Building A Future Where We Don’t Have to Trust, We Can Verify

    Sui’s recent post featuring Evan Cheng, Co-Founder & CEO of Mysten Labs, is more than just another project update—it’s a deliberate reveal of how far the Sui Stack has matured and how it’s setting the standard for Layer 1 blockchain infrastructure. What Evan articulates in the video is a clear expression of what many of us building in crypto already understand: that performance, scalability, and developer accessibility aren’t just features they’re requirements for real world blockchain adoption. And Sui has built those into its core from the ground up. The Sui Stack stands out because it solves foundational pain points. Move, the language powering Sui, isn’t just secure it’s asset-native. This changes the game for tokenization, identity, and ownership. Every asset on Sui is treated as a first-class citizen, making composability, modularity, and verifiability more intuitive and robust. From an architectural standpoint, Sui introduces a powerful data model that avoids the bottlenecks of account-based chains. Objects are separate from accounts, meaning parallel execution can happen at scale, without compromising security or decentralization. This unlocks true horizontal scaling a crucial advantage when you’re talking about global, user-facing applications like games, social networks, and digital commerce. What I appreciate most about this update is how Mysten Labs continues to push for transparency. This isn’t just a roadmap or a PR stunt it’s a builder focused breakdown of where the tech is and where it’s headed. For developers, you get a framework built around object-centric programming. For enterprise and protocol teams, you get predictable throughput, finality under 2 seconds, and lower gas volatility this makes designing user first experiences on-chain much more viable. The video underscores why Sui is leading in innovation: zkLogin integration, verifiable off-chain computation, dynamic fields, and programmable transaction blocks these aren’t surface level features. They’re part of a long-term vision for chain utility and flexibility. And with Mysten Labs’ background in systems engineering and their involvement in Diem (formerly Libra), you know this vision is backed by some of the sharpest minds in blockchain R\&D. If you’re serious about building in Web3 whether infrastructure, consumer apps, or modular tooling, Sui gives you a complete foundation to build with purpose, scale with confidence, and deploy with clarity. I’ve followed Sui’s evolution from testnet to mainnet, and this update validates what many of us have known for a while: this chain isn’t just ready it’s redefining what readiness looks like in blockchain. Let’s keep the conversation going check https://x.com/SuiNetwork/status/1945910251720720794 for more. what parts of the Sui Stack are you most excited to build with next?

    • Sui
    • SDKs and Developer Tools
    • Security Protocols
    0
    0