EBB2209 Communication issues resolved
- Dominant language
- No language data
- Stars
- 697
- Forks
- 130
- PR merge metrics
- No merged PRs in 30d
Description
I was having a lot of trouble getting my EBB2209 setup to work. Klipper was having trouble establishing communications over the CanBus. After 35 seconds (which is the timeout set), Klipper would shut down. My son and I spent weeks on this issue before discovering the root cause. I want to report it here as I suspect others will run into it. If you are having communication issues you might want to check to see if you have this condition in your setup. It turns out that this problem is easily fixed.
First, the problem manifests as randomly spaced communication errors. When I would run
`candump -ie can0,#FFFFFFFF`
We would see errors as
`ERRORFRAME
protocol-violation{{tx-dominant-bit-error}{}}
error-counter-tx-rx{{235}{0}}`
When we attached a logic analyzer, we would see mal-formed packets that would occur as a result of sporadic voltage anomalies between CAN Hi and CAN Lo.
When I would remove the daughter card (the card that sits in the Stealthburner shroud and attaches to the EBB2209), the errors would go away.
I'm using an LDO 5015 blower on my Stealthburner. That fan has a metal foil label. The daughter card has solder nibs that stick out the back of the card. These nibs make contact with the foil label. When I removed the label and reattached the daughter card and shroud, all of the errors disappeared.
I don't claim to have a full understanding of the mechanism at work, But I suspect that a static charge is building up on the label and once it reaches a certain threshold, the static discharges causing a voltage spike. If this is true, then it's also possible for a charge to develop on the plastic itself -- even without the foil label. I don't know what kind of plastic is used in these fans and I've not seen the issue since removing the foil label, but out of an abundance of caution, I think people should insulate the back of the daughter board.
The simple fix is to remove the label from the fan. But for an extra measure, I ground down the solder nips on the daughter card (just enough so that they are no longer sharp) and applied Kapton tape over them.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the EBB2209 hardware around the daughter card, EBB2209, and LDO 5015 fan, then reproduce the reported CAN errors with candump if the hardware is available. The issue names no source files or tests and does not define a concrete project change, so completion would require determining whether the suspected insulation or solder-nib condition is reproducible and what documented fix is appropriate.
Written by the indexing model from the issue text.
Assessment
- Domain
- embedded-iot, networking
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100