Browse Source

Merge pull request #848 from btchip/firmwareupdate

Firmwareupdate
283
ThomasV 11 years ago
parent
commit
7dd7918a30
  1. 17
      plugins/btchipwallet.py

17
plugins/btchipwallet.py

@ -27,6 +27,7 @@ try:
from btchip.btchipUtils import compress_public_key,format_transaction, get_regular_input_script from btchip.btchipUtils import compress_public_key,format_transaction, get_regular_input_script
from btchip.bitcoinTransaction import bitcoinTransaction from btchip.bitcoinTransaction import bitcoinTransaction
from btchip.btchipPersoWizard import StartBTChipPersoDialog from btchip.btchipPersoWizard import StartBTChipPersoDialog
from btchip.btchipFirmwareWizard import checkFirmware, updateFirmware
from btchip.btchipException import BTChipException from btchip.btchipException import BTChipException
BTCHIP = True BTCHIP = True
BTCHIP_DEBUG = False BTCHIP_DEBUG = False
@ -143,12 +144,16 @@ class BTChipWallet(NewWallet):
d.setWaitImpl(DongleWaitQT(d)) d.setWaitImpl(DongleWaitQT(d))
self.client = btchip(d) self.client = btchip(d)
firmware = self.client.getFirmwareVersion()['version'].split(".") firmware = self.client.getFirmwareVersion()['version'].split(".")
if int(firmware[0]) <> 1 or int(firmware[1]) <> 4: if (not checkFirmware(firmware)) or (int(firmware[0]) <> 1) or (int(firmware[1]) <> 4) or (int(firmware[2]) < 9):
aborted = True d.close()
raise Exception("Unsupported firmware version") try:
if int(firmware[2]) < 9: updateFirmware()
except Exception, e:
aborted = True aborted = True
raise Exception("Please update your firmware - 1.4.9 or higher is necessary") raise e
d = getDongle(BTCHIP_DEBUG)
d.setWaitImpl(DongleWaitQT(d))
self.client = btchip(d)
try: try:
self.client.getOperationMode() self.client.getOperationMode()
except BTChipException, e: except BTChipException, e:
@ -194,7 +199,7 @@ class BTChipWallet(NewWallet):
pass pass
self.client = None self.client = None
if not aborted: if not aborted:
raise Exception("Could not connect to your BTChip dongle. Please verify access permissions or PIN") raise Exception("Could not connect to your BTChip dongle. Please verify access permissions, PIN, or unplug the dongle and plug it again")
else: else:
raise e raise e
self.client.bad = False self.client.bad = False

Loading…
Cancel
Save