Comments (9)
Your can interface device is having trouble receiving data. Is it a U2C v2?
from katapult.
It is Waveshare RS485 CAN HAT
from katapult.
Make sure your device is configured with the correct settings for its crystal. You may also want to try reducing your can speed (this will require a rebuild and reflash of CanBoot).
The CAN Hats have a tendency to drop can frames when the throughput is high. The gs_usb based devices (Canable, U2C, Klipper running USB-CAN bridge) are the most reliable.
from katapult.
I ran at 500 000 I will reduce it to 250 000. crystal shall be ok at 12MHz
from katapult.
I changed the speed to 250k.
Flashing is a succes, but still getting errors on the way:
Sending bootloader jump command...
Resetting all bootloader node IDs...
Checking for canboot nodes...
Detected UUID: 558da1510eb7, Application: CanBoot
Attempting to connect to bootloader
CanBoot Connected
Protocol Version: 1.0.0
Block Size: 64 bytes
Application Start: 0x8002000
MCU type: stm32g0b1xx
Verifying canbus connection
Flashing '/home/lukics/klipper/out/klipper.bin'...
[##################################################]
Write complete: 13 pages
Verifying (block count = 414)...
[########ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
###ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
#########ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
########ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
###ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
##ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
###ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
#########ERROR:root:Can Read Error
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil
await self._wait_for_data('readuntil')
File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data
await self._waiter
asyncio.exceptions.CancelledError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/lukics/CanBoot/scripts/flash_can.py", line 137, in send_command
ret = await self.node.readuntil()
File "/home/lukics/CanBoot/scripts/flash_can.py", line 287, in readuntil
return await asyncio.wait_for(self._reader.readuntil(sep), timeout)
File "/usr/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
#####]
Verification Complete: SHA = 6CEB3ABB6F9B2D4D99FD3457D9239C56CDBFFBF2
CAN Flash Success
from katapult.
That is because the hat is still dropping frames, however it isn't doing it on 5 consecutive attempts (which is the maximum number of tries the flash_can
script will attempt to send a command). Its good enough to work, but be aware that it could also drop frames while running Klipper.
from katapult.
In the future, I plan to use the can interface of octopus 1.1.
What speed is sufficient for klipper?
from katapult.
I don't really have a good answer for that, 250000 should be sufficient for one node. There is also the issue of the max speed you reach, when depends on the length of your wiring. You might get better answers on the Klipper Discourse or perhaps the Discord.
from katapult.
Thanks
from katapult.
Related Issues (20)
- Flashing over "pure" serial connection (Creality 4.2.7 board)? HOT 11
- can't flash over canboot manta E3EZ
- Cannot make menuconfig HOT 2
- How to change Katapult baud rate (reflashing) HOT 1
- Issue with make, and Error 127 HOT 1
- flash_can.py not going into boot loader mode
- MKS SKIPR goes not in DFU Mode after canboot HOT 1
- BTT Pi
- Supported STM32 models HOT 2
- [Help needed] - cause of "CONNECT timed out"on btt-mmb HOT 15
- Compiler error BTT EBB36 V1.0
- Reflashing rp2040
- EBB42 1.2 cannot flash klipper or canboot update via CAN HOT 3
- Can't get this to work on Fly ERCF or BTT Manta M8P HOT 4
- Compile Error Mellow SB2040 V1 HOT 1
- STM32407 SKR PRO Can katapult be loaded and function correctly
- Failure to manuconfig for Katapult Pi 5 HOT 1
- Error 127 HOT 1
- STM32F407 not installing firmware after katapult HOT 4
- EBB SB2209 CAN RP2040 - No RP2040 Option in Katapult Configuration HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from katapult.