bug: handle for some weird edge cases with boards plugged into the wrong slots on X19.

This commit is contained in:
Upstream Data
2023-09-05 17:22:02 -06:00
parent 8c5503d002
commit d0432ed1aa

View File

@@ -235,7 +235,17 @@ class BMMiner(BaseMiner):
if board_offset == -1: if board_offset == -1:
board_offset = 1 board_offset = 1
for i in range(board_offset, board_offset + self.ideal_hashboards): real_slots = []
for i in range(board_offset, board_offset + 4):
key = f'chain_acs{i}'
if boards[1][key] != '':
real_slots.append(i)
if len(real_slots) < 3:
real_slots = list(range(board_offset, board_offset + self.ideal_hashboards))
for i in real_slots:
hashboard = HashBoard( hashboard = HashBoard(
slot=i - board_offset, expected_chips=self.nominal_chips slot=i - board_offset, expected_chips=self.nominal_chips
) )
@@ -259,7 +269,7 @@ class BMMiner(BaseMiner):
if (not chips) or (not chips > 0): if (not chips) or (not chips > 0):
hashboard.missing = True hashboard.missing = True
hashboards.append(hashboard) hashboards.append(hashboard)
except (IndexError, KeyError, ValueError, TypeError): except (LookupError, ValueError, TypeError):
pass pass
return hashboards return hashboards