@@ -135,6 +135,7 @@ def __init__(self):
135135 self .listenerConfig .addButton (self .checkListenGoldshell , 5 )
136136 self .listenerConfig .addButton (self .checkListenSealminer , 6 )
137137 self .listenerConfig .addButton (self .checkListenElphapex , 7 )
138+ self .listenerConfig .addButton (self .checkListenDragonball , 8 )
138139 self .listenerConfig .buttonClicked .connect (self .restart_listen )
139140 # listener signals
140141 self .actionIPRStart .clicked .connect (self .start_listen )
@@ -337,6 +338,9 @@ def read_settings(self):
337338 self .checkListenElphapex .setChecked (
338339 self .config ["general" ]["listenFor" ]["additional" ]["elphapex" ]
339340 )
341+ self .checkListenDragonball .setChecked (
342+ self .config ["general" ]["listenFor" ]["additional" ]["dragonball" ]
343+ )
340344
341345 # api
342346 self .lineBitmainPasswd .setText (
@@ -425,6 +429,7 @@ def update_settings(self):
425429 "goldshell" : self .checkListenGoldshell .isChecked (),
426430 "sealminer" : self .checkListenSealminer .isChecked (),
427431 "elphapex" : self .checkListenElphapex .isChecked (),
432+ "dragonball" : self .checkListenDragonball .isChecked (),
428433 },
429434 },
430435 },
@@ -793,7 +798,7 @@ def post_process_result(self, result: List[str]):
793798 ip , mac , type , sn = result
794799 logger .debug (f"process_result : got { ip } ,{ mac } ,{ sn } ,{ type } from listener." )
795800 if type == "bitmain-common" :
796- bitmain_common_miners = [self .checkListenAntminer , self .checkListenVolcminer ]
801+ bitmain_common_miners = [self .checkListenAntminer , self .checkListenVolcminer , self . checkListenDragonball ]
797802 enabled_common_filter = [btn .text ().lower () for btn in bitmain_common_miners if btn .isChecked ()]
798803 for miner in bitmain_common_miners :
799804 match miner .text ().lower ():
@@ -811,6 +816,13 @@ def post_process_result(self, result: List[str]):
811816 type = "volcminer"
812817 self .api_client .close_client ()
813818 break
819+ case "dragonball" :
820+ self .api_client .create_dragonball_client (ip , None )
821+ if not self .api_client .client or not self .api_client .is_dragonball ():
822+ continue
823+ type = "dragonball"
824+ self .api_client .close_client ()
825+ break
814826 if type not in enabled_common_filter :
815827 logger .warning (f"process_result : recieved miner type { type } outside of filter: { enabled_common_filter } . Ignoring..." )
816828 self .iprStatus .showMessage (f"Status :: Got miner type: { type .capitalize ()} outside of listener configuration." , 8000 )
@@ -879,6 +891,11 @@ def locate_miner(self, row: int, col: int):
879891 "Status :: Failed to locate miner: VolcMiner is currently not supported." ,
880892 5000 ,
881893 )
894+ case "dragonball" :
895+ return self .iprStatus .showMessage (
896+ "Status :: Failed to locate miner: Dragonball is currently not supported." ,
897+ 5000
898+ )
882899 case "iceriver" :
883900 custom_auth = self .linePbfarmerKey .text ()
884901 case "whatsminer" :
0 commit comments