|
46 | 46 | unpack_pnp_id, |
47 | 47 | ) |
48 | 48 | from pybricksdev.compile import compile_file |
49 | | -from pybricksdev.connections.lego import REPLHub |
50 | 49 | from pybricksdev.dfu import flash_dfu |
51 | 50 | from pybricksdev.firmware import create_firmware_blob |
52 | 51 | from pybricksdev.flash import BootloaderConnection |
@@ -439,42 +438,7 @@ async def flash_firmware(firmware_zip: BinaryIO, new_name: Optional[str]) -> Non |
439 | 438 | hub_kind = HubKind(metadata["device-id"]) |
440 | 439 |
|
441 | 440 | if hub_kind in (HubKind.TECHNIC_SMALL, HubKind.TECHNIC_LARGE): |
442 | | - try: |
443 | | - # Connect to the hub and exit the runtime. |
444 | | - hub = REPLHub() |
445 | | - await hub.connect() |
446 | | - await hub.reset_hub() |
447 | | - |
448 | | - # Upload installation script. |
449 | | - archive = zipfile.ZipFile(firmware_zip) |
450 | | - await hub.exec_line("import uos; uos.mkdir('_firmware')") |
451 | | - await hub.upload_file( |
452 | | - "_firmware/install_pybricks.py", |
453 | | - bytearray(archive.open("install_pybricks.py").read()), |
454 | | - ) |
455 | | - |
456 | | - extended_metadata = metadata.copy() |
457 | | - |
458 | | - # Add extended metadata needed by install_pybricks.py |
459 | | - extended_metadata["firmware-sha256"] = hashlib.sha256(firmware).hexdigest() |
460 | | - |
461 | | - # Upload metadata. |
462 | | - await hub.upload_file( |
463 | | - "_firmware/firmware.metadata.json", |
464 | | - json.dumps(extended_metadata, indent=4).encode(), |
465 | | - ) |
466 | | - |
467 | | - # Upload Pybricks firmware |
468 | | - await hub.upload_file("_firmware/firmware.bin", firmware) |
469 | | - |
470 | | - # Run installation script |
471 | | - print("Installing firmware") |
472 | | - await hub.exec_line("from _firmware.install_pybricks import install") |
473 | | - await hub.exec_paste_mode("install()") |
474 | | - |
475 | | - except OSError: |
476 | | - print("Could not find hub in standard firmware mode. Trying DFU.") |
477 | | - flash_dfu(firmware, metadata) |
| 441 | + flash_dfu(firmware, metadata) |
478 | 442 | elif hub_kind in [HubKind.BOOST, HubKind.CITY, HubKind.TECHNIC]: |
479 | 443 | await flash_ble(hub_kind, firmware, metadata) |
480 | 444 | elif hub_kind == HubKind.NXT: |
|
0 commit comments