mirror of
https://github.com/andreili/katapult.git
synced 2025-08-24 03:44:06 +02:00
flash_can: update to reference Katapult
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This commit is contained in:
parent
35a9bde44a
commit
540b4159d9
@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# Script to upload software via Can Bootloader
|
# Script to upload software via Katapult
|
||||||
#
|
#
|
||||||
# Copyright (C) 2022 Eric Callahan <arksine.code@gmail.com>
|
# Copyright (C) 2022 Eric Callahan <arksine.code@gmail.com>
|
||||||
#
|
#
|
||||||
@ -38,7 +38,7 @@ logging.basicConfig(level=logging.INFO)
|
|||||||
CAN_FMT = "<IB3x8s"
|
CAN_FMT = "<IB3x8s"
|
||||||
CAN_READER_LIMIT = 1024 * 1024
|
CAN_READER_LIMIT = 1024 * 1024
|
||||||
|
|
||||||
# Canboot Defs
|
# Katapult Defs
|
||||||
CMD_HEADER = b'\x01\x88'
|
CMD_HEADER = b'\x01\x88'
|
||||||
CMD_TRAILER = b'\x99\x03'
|
CMD_TRAILER = b'\x99\x03'
|
||||||
BOOTLOADER_CMDS = {
|
BOOTLOADER_CMDS = {
|
||||||
@ -98,7 +98,7 @@ class CanFlasher:
|
|||||||
mcu_type = mcu_type[:-1]
|
mcu_type = mcu_type[:-1]
|
||||||
mcu_type = mcu_type.decode()
|
mcu_type = mcu_type.decode()
|
||||||
output_line(
|
output_line(
|
||||||
f"CanBoot Connected\nProtocol Version: {proto_version}\n"
|
f"Katapult Connected\nProtocol Version: {proto_version}\n"
|
||||||
f"Block Size: {self.block_size} bytes\n"
|
f"Block Size: {self.block_size} bytes\n"
|
||||||
f"Application Start: 0x{self.app_start_addr:4X}\n"
|
f"Application Start: 0x{self.app_start_addr:4X}\n"
|
||||||
f"MCU type: {mcu_type}"
|
f"MCU type: {mcu_type}"
|
||||||
@ -401,7 +401,7 @@ class CanSocket:
|
|||||||
self.send(KLIPPER_ADMIN_ID, bytes(plist))
|
self.send(KLIPPER_ADMIN_ID, bytes(plist))
|
||||||
|
|
||||||
async def _query_uuids(self) -> List[int]:
|
async def _query_uuids(self) -> List[int]:
|
||||||
output_line("Checking for canboot nodes...")
|
output_line("Checking for Katapult nodes...")
|
||||||
payload = bytes([CANBUS_CMD_QUERY_UNASSIGNED])
|
payload = bytes([CANBUS_CMD_QUERY_UNASSIGNED])
|
||||||
self.admin_node.write(payload)
|
self.admin_node.write(payload)
|
||||||
curtime = self._loop.time()
|
curtime = self._loop.time()
|
||||||
@ -419,7 +419,7 @@ class CanSocket:
|
|||||||
continue
|
continue
|
||||||
app_names = {
|
app_names = {
|
||||||
KLIPPER_SET_NODE_CMD: "Klipper",
|
KLIPPER_SET_NODE_CMD: "Klipper",
|
||||||
CANBUS_CMD_SET_NODEID: "CanBoot"
|
CANBUS_CMD_SET_NODEID: "Katapult"
|
||||||
}
|
}
|
||||||
app = "Unknown"
|
app = "Unknown"
|
||||||
if len(resp) > 7:
|
if len(resp) > 7:
|
||||||
@ -427,7 +427,7 @@ class CanSocket:
|
|||||||
data = resp[1:7]
|
data = resp[1:7]
|
||||||
output_line(f"Detected UUID: {data.hex()}, Application: {app}")
|
output_line(f"Detected UUID: {data.hex()}, Application: {app}")
|
||||||
uuid = sum([v << ((5 - i) * 8) for i, v in enumerate(data)])
|
uuid = sum([v << ((5 - i) * 8) for i, v in enumerate(data)])
|
||||||
if uuid not in self.uuids and app == "CanBoot":
|
if uuid not in self.uuids and app == "Katapult":
|
||||||
self.uuids.append(uuid)
|
self.uuids.append(uuid)
|
||||||
return self.uuids
|
return self.uuids
|
||||||
|
|
||||||
@ -571,7 +571,7 @@ class SerialSocket:
|
|||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description="Can Bootloader Flash Utility")
|
description="Katapult Flash Tool")
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
"-d", "--device", metavar='<serial device>',
|
"-d", "--device", metavar='<serial device>',
|
||||||
help="Serial Device"
|
help="Serial Device"
|
||||||
@ -634,7 +634,7 @@ def main():
|
|||||||
sock = SerialSocket(loop)
|
sock = SerialSocket(loop)
|
||||||
loop.run_until_complete(sock.run(args.device, args.baud, fpath))
|
loop.run_until_complete(sock.run(args.device, args.baud, fpath))
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.exception("Can Flash Error")
|
logging.exception("Flash Error")
|
||||||
sys.exit(-1)
|
sys.exit(-1)
|
||||||
finally:
|
finally:
|
||||||
if sock is not None:
|
if sock is not None:
|
||||||
@ -642,7 +642,7 @@ def main():
|
|||||||
if args.query:
|
if args.query:
|
||||||
output_line("Query Complete")
|
output_line("Query Complete")
|
||||||
else:
|
else:
|
||||||
output_line("CAN Flash Success")
|
output_line("Flash Success")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
Loading…
x
Reference in New Issue
Block a user