# When using a CAN module, Checksum needs to be recalculated. request_command = 0 def request_callback(request): global request_command request_command = request.command return request def reply_callback(reply): if(request_command != TMCL.COMMANDS["GET_FIRMWARE_VERSION"]): reply.calculate_checksum() return reply logger.info("Initializing interfaces ...") host = uart_tmcl_interface() module = can_tmcl_interface() bridge = TMCL_Bridge(host, [{"module":module, "request_callback":request_callback, "reply_callback":reply_callback}]) logger.info("Interfaces initialized.") while(not(bridge.process())): pass logger.info("Closing interfaces ...") host.close() module.close() logger.info("Interfaces closed.") logger.info("Bridge stopped.")
return request def reply_callback(reply): if (request_command != TMCL.COMMANDS["GET_FIRMWARE_VERSION"]): reply.calculate_checksum() return reply logger.info("Initializing interfaces ...") host = usb_vcp_tmcl_interface() module = can_tmcl_interface() bridge = TMCL_Bridge(host, [{ "module": module, "request_callback": request_callback, "reply_callback": reply_callback }]) logger.info("Interfaces initialized.") while (not (bridge.process(request_callback=request_callback, reply_callback=reply_callback))): #logger.debug("Processed request.") pass logger.info("Closing interfaces ...") host.close() module.close() logger.info("Interfaces closed.") logger.info("Bridge stopped.")