Firo - Getting Started

Getting Started

First step is to ensure you have the latest Firo wallet and you have already obtained your 1000 FIRO (preferably just a bit more to cover fees when you’re transferring around).

Step 1: Encrypt and Backup your wallet on your Desktop wallet

If you haven’t done so already, make sure you encrypt your wallet on your local desktop wallet (PC/Mac/Linux).

Go to Settings > Encrypt Wallet.

After you have encrypted your wallet, it is also recommended to do a backup via File > Backup Wallet. It is recommended to store this wallet on a separate physical drive or pen drive. The wallet.dat is encrypted so even if the wallet.dat is exposed, if your password is long enough, it will be secure.

Please don’t forget your password! No one can help you if you lose your password.

Step 2: collateral your 1000 FIRO on your Desktop wallet

Your collateral address is where you will be storing your 1000 FIRO.

You can create the collateral address in two ways: using the Receive tab, OR in the Debug Window

Receive tab:

Click on the Receive tab. Enter a label for your collateral address in the Label field and click on Request Payment. A window should pop up with a Firo address.

Debug Window:

Go to Help > Debug Window > Console and type in

getnewaddress

In one single transaction, send exactly 1000 FIRO into the masternode collateral address that you created. Do not send 500 and then another 500. It has to be in one single transaction. Do not tick subtract fee from amount.

It is not recommended to send it direct from an exchange as they might deduct certain withdrawal fees resulting in less than 1000 FIRO in that transfer.

Wait 1 confirmation for this transaction to be valid as your masternode collateral. When done correctly, the transaction id and transaction index will appear when you execute this command in the Debug Console:

evoznode outputs

Special Notes only for those who are creating more than one masternode:

If you are doing more than one masternode, special care is required to ensure that you are creating collateral properly. You do not want to break the previous 1000 FIRO collateral you just made by taking funds from that collateral.

To do this, on your local desktop wallet turn on coin control by going to Settings > Options > Wallet and click on Enable coin control features. This will enable control of which funds you are using when making your next 1000 FIRO collateral.

Then go to your Send tab, and you will see Coin Control Features. Click on Inputs. You should see your 1000 FIRO collateral there. Right click and click Lock Unspent. This means that when making your new collateral, your wallet will not touch these funds.

Once you have done this, you can make the next 1000 FIRO collateral for your next masternode. Repeat this everytime you have made a new masternode.

You can always verify you’re doing this correctly by going into Help > Debug Window and typing evoznode outputs which would display all masternode capable collaterals.

Step 3: Creating ownerAddress, payoutAddress, feeSourceAddress and operatorKey/operatorPubKey

a, b, and c can be generated through Receive tab or the Debug Window, just like the collateral address above.

a. ownerAddress

Proof that you own the masternode. Must be in the same wallet as collateral. DO NOT USE THE COLLATERAL ADDRESS AS OWNER ADDRESS.

DO NOT SEND COINS TO THE OWNER ADDRESS. DO NOT USE IT AS PAYOUT ADDRESS. DO NOT USE THIS ADDRESS FOR ANY OTHER PURPOSE.

b. payoutAddress

Address the masternode will pay out to. Can be inside the same wallet or an external address.

c. feeSourceAddress

An address with funds to pay the transaction fee for registering your masternode. To get a list of addresses with funds, enter the following command in the Debug Window:

listaddressbalances 0.01

If you do not have any, you can create an address and send some Firos there. You can then use the address as feeSourceAddress.

d. operatorKey/operatorPubKey

In Debug Console, enter bls generate. The output will be similar to this:

{
    "secret": "2e551176c4cd5a2e26f3a1c61f151487e013f7095ffbc0f62b5c2b251e7bd84c",
    "public": "89d395bc75e99527e80d3bbd408a5b41bbf37e7e1e26c5924da734008d1aa4a3f5e42a968bef541cb1c9a0899280d29b"
}

secret: This is your operatorKey (for protx) and is what you submit in the Node Orbit checkout page.

public: This is your operatorPubKey (for protx)

You cannot regenerate the same pair of keys, but you can generate the public key from the secret key if you lose the public key.

Step 7: Registering your masternode

The registration process must be done on your local wallet

Your node will take a few hours to sync with the blockchain. Once you have done all the above, you can now register your masternode with the following command:

protx register collateralHash collateralIndex ipAndPort ownerAddress operatorPubKey votingAddress operatorReward payoutAddress feeSourceAddress

where

collateralHash: transaction ID of your 1000 FIRO collateral (from "evoznode outputs")
collateralIndex: transaction index of your 1000 FIRO collateral (from "evoznode outputs")
ipAndPort: the IP address and port of your masternode
ownerAddress: the ownerAddress, generated in Step 3
operatorPubKey: the "public" part of the "bls generate" output, generated in Step 3
votingAddress: "" (defaults to ownerAddress)
operatorReward: 0
payoutAddress: A valid Firo address for your masternode payouts, generated in Step 3
feeSourceAddress: A valid Firo address with funds in it to fund the masternode registration, from Step 3

Before you are able to enter the command, you must first unlock your wallet:

walletpassphrase YOURPASSWORD 60

This command will unlock your wallet for 60 seconds and returns a (null) message when successfully executed.

If everything is correct, you should get a transaction ID.

Example

protx register 4950f88867b69760d3cd7c1f53531340f6723eb8f7d7f00730abfa12c5fe10e0 0 207.148.122.12:8168 TRVDAxJwaZYFfmti4aTeKCByz1jbMq8Jy4 995b3e1e2a65ce960a8cc7d305c5914b7f60e888c338c1f3317efbdcac58e82ecc110315ce03f49d9d387ff35c2796ad "" 0 TEZ8M8Fgp8h4HvUjXtjz3krYraRtySiXdw TQGmCxUQHK2xKGYNyeqGdSYQqfEAB2hjtd` 

Details:

collateralHash: 4950f88867b69760d3cd7c1f53531340f6723eb8f7d7f00730abfa12c5fe10e0 
collateralIndex: 0 
ipAndPort: 207.148.122.12:8168 
ownerAddress: TRVDAxJwaZYFfmti4aTeKCByz1jbMq8Jy4 
operatorPubKey: 995b3e1e2a65ce960a8cc7d305c5914b7f60e888c338c1f3317efbdcac58e82ecc110315ce03f49d9d387ff35c2796ad 
votingAddress: "" 
operatorReward: 0 
payoutAddress: TEZ8M8Fgp8h4HvUjXtjz3krYraRtySiXdw 
feeSourceAddress: TQGmCxUQHK2xKGYNyeqGdSYQqfEAB2hjtd

Registration is successful once the transaction containing your registration is mined and is included in a block. To check, copy the transaction ID and enter it here: explorer.firo.org

Once the transaction is mined, the nodes you just registered should appear in the masternodes tab in the wallet.

At this point, you should see the Status "Ready" on the Node Orbit dashboard.

Unbanning your masternode

The unbanning process must be done on your local wallet

Your masternode is banned if it has the POSE_BANNED status. You can unban your masternode by entering this command in your local wallet’s Debug Console:protx update_service proTxHash ipAndPort operatorKey operatorPayoutAddress feeSourceAddress

Details:

proTxHash: the proTxHash of your masternode. In the Masternodes tab on your local wallet, right-click on the banned node and choose 'Copy Protx hash'
ipAndPort: ipAndPort of banned masternode
operatorKey: znodeblsprivkey of the masternode, usually inside firo.conf on the masternode. This is different than the operatorPubKey!
operatorPayoutAddress: "" , if you set your operatorReward to 0 during registration
feeSourceAddress: an address in the local wallet that has FIRO to fund the transaction. Can be obtained with the listaddressbalances command

Please ensure that you have fixed the problem that caused the ban before unbanning your masternode otherwise it will get banned again. A more detailed guide is here.

After unbanning, ensure that you check the status of the masternode in both the wallet and the masternode itself.

Last updated