I had the same problem, it doesn't show it's mining.
However on activating the mining, CPU and disks start going crazy, and it shows in the logs in
C:\Users\Username\AppData\Roaming\Ethereum Wallet\node.log
INFO [07-14|11:52:05] Updated mining threads threads=1
INFO [07-14|11:52:05] Transaction pool price threshold updated price=18000000000
INFO [07-14|11:52:05] Starting mining operation
INFO [07-14|11:52:05] Commit new mining work number=1296848 txs=0 uncles=0 elapsed=500.9µs
INFO [07-14|11:52:23] Imported new chain segment blocks=1 txs=1 mgas=0.088 elapsed=5.513ms mgasps=16.047 number=1296848 hash=cf3536…d18c42
INFO [07-14|11:52:23] Commit new mining work number=1296849 txs=1 uncles=0 elapsed=1.002ms
INFO [07-14|11:52:37] Imported new chain segment blocks=1 txs=1 mgas=0.044 elapsed=7.017ms mgasps=6.257 number=1296849 hash=d87334…51fb17
INFO [07-14|11:52:37] Commit new mining work number=1296850 txs=0 uncles=0 elapsed=1.503ms
...
You can check in your logs that indeed mining starts.
However the problem is that I can't stop the mining unless I exit the program.
Is your node fully synced? I guess this is the main reason why your eth balance is 0. The balance will be zero unless you sync to the block in which you received test ethers.
In order to deploy the contract, you could use MyEtherWallet and Remix. Steps for the same are quite simple.
- Compile your code from remix online solidity compiler. Copy the bytecode from here.
- Open my ether wallet. Go to Contracts--> Deploy contract.
- Choose the network to Ropsten from top-right corner.
- Paste the bytecode and unlock you wallet using any of the provided methods and deploy the contract.
Else you can also use Remix with Metamask for the same. Import your account to metamask and deploy contract directly from remix.
Update:
How to know if your blockchain is synced ?
You can check whether your node is syncing by:
eth.syncing
If your node is not syncing eth.syncing
returns false
. Else it returns output like
{ currentBlock: 10000, highestBlock: 1822434, knownStates: 1, pulledStates: 0, startingBlock: 90 }
This means you have downloaded 10000 blocks where total blocks are 1822434.
You can check the block in which you received the ether balance by the transactionHash
. If you have transaction hash you can use eth.getTransactionReceipt(txHash)
to check the block in which your transaction was included. If you have downloaded the blockchain upto that block then your balance will appear.
Note: If you are using fast sync, you may have to wait till complete node is in sync to see your balance not only syncing till the block in which your transaction was included.
Best Answer
Here's a list of a couple worth trying, since some might get some downtime or experience high demand depending on when you try:
Some of these allow to donate your testnet ETH, so please do once you're done using it so it doesn't become lost forever!