Duet2 Wifi+Duex5 and SBC
-
systemctl status duetcontrolserver.service ● duetcontrolserver.service - Duet Control Server Loaded: loaded (/lib/systemd/system/duetcontrolserver.service; enabled; vendo Active: activating (start) since Fri 2021-02-05 17:23:47 CET; 1s ago Main PID: 4023 (DuetControlServ) Tasks: 9 (limit: 2063) CGroup: /system.slice/duetcontrolserver.service └─4023 /opt/dsf/bin/DuetControlServer Feb 05 17:23:47 duet3 systemd[1]: Starting Duet Control Server... Feb 05 17:23:48 duet3 DuetControlServer[4023]: Duet Control Server v3.2.0 Feb 05 17:23:48 duet3 DuetControlServer[4023]: Written by Christian Hammacher fo Feb 05 17:23:48 duet3 DuetControlServer[4023]: Licensed under the terms of the G
so there is not a lot of info ...
-
@taconite said in Duet2 Wifi+Duex5 and SBC:
Feb 05 17:24:04 duet3 DuetControlServer[4086]: [fatal] Could not connect to Duet (Timeout while waiting for transfer ready pin)
this suggest the trf_rdy pin isn't wired/working correctly.
(also please put three backticks (
```
) over and under long text like that to preserve formatting next time, or use the code formatting button on the toolbar (between strikeout and link)) -
So I rechecked the wiring and the board itself - didn't find any issues. Reflashed the SBC firmware to the Duet and it seems that now I get a connection even though it is not really stable. BTW the Duex5 is not connected right now
Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Restarting transfer because the number of maximum retries has been exceeded Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Restarting transfer because the number of maximum retries has been exceeded Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Restarting transfer because the number of maximum retries has been exceeded Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Restarting transfer because the number of maximum retries has been exceeded Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] RepRapFirmware got a bad header checksum Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Restarting transfer because the number of maximum retries has been exceeded Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Bad header CRC32 (expected 0x00000000, got 0x59923eca) Feb 06 13:54:07 duet3 DuetControlServer[5480]: [warn] Note: RepRapFirmware didn't receive valid data either (code 0x00000000) Feb 06 13:54:07 duet3 DuetControlServer[5480]: [info] Connection to Duet established Feb 06 13:54:08 duet3 DuetControlServer[5480]: [warn] Lost connection to Duet (Board is not available (no header))
EDIT: So it's more like a "connection" I can reach it over the network and I uploaded a valid config but its not responsive at all
-
Can you provide a photo of the wiring between the Duet and the Pi?
-
Verify RRF and DSF versions are compatible, if they are, odds are the connection is the issue given the checksum/crc issues.
How is the common ground between the duet and sbc?
Have you tried lowering the SPI frequency? (Edit there is a json config file under /opt/dsf on the sbc
-
@bearer
I got DuetPI (With GUI form here):
https://duet3d.dozuki.com/Wiki/SBC_Setup_for_Duet_3
RRF is 3.2.0I will provide Pictures of the common ground and the wiring in a minute. (maybe I should increase the gauge of the common ground)
No I didn't change the SPI speed but I could try to
@dc42
EDIT: The black single cable is the common ground
-
The little pcb has a pad labeled gnd1, this also carries a common ground from the duet to the sbc?
and the shield is grounded at both ends? if the shield is the ground connection thats not optimal either, ground the shield at one end and use a conductor for signal ground
the cable also seems a bit long in the tooth, reducing the spi frequency might help if the length is the issue.
/opt/dsf/conf/config.conf
and reduce the"SpiFrequency": 8000000,
to maybe 2mhz or even less -
Yes the GND1 of the little PCB from @deadwood83 has a connection to the GND of the Duet and the SBC
So what I did:
- Removed the Shield from one side
- connected the GND1 pin of the little PCB with an extra cable to the GND of the SBC
- reduced the spifrequency to 2 MHz.
--> same thing as before
What do you mean with "bit long in the tooth"
-
The Duet to Pi cable is way too long. Also, as it is a round cable, it will have higher capacitance and more crosstalk than a ribbon cable would. You should replace it by a short (150mm or less) ribbon cable.
-
Changed to a short ribbon cable - nothing changed - still "no header" fault message
-
maybe I should try the duetpi-lite?
-
@dc42 Sorry for bothering you again. Do you any other ideas?
-
Sorry for not getting back to you earlier. DuetPi-lite won't make a difference.
Can you please run
DuetControlServer
from command-line with-l debug
to usedebug
log level and post the output? Former output posted here did not contain enough information. -
@wilriker said in Duet2 Wifi+Duex5 and SBC:
Sorry for not getting back to you earlier. DuetPi-lite won't make a difference.
Can you please run
DuetControlServer
from command-line with-l debug
to usedebug
log level and post the output? Former output posted here did not contain enough information.No problem at all! Don't feel sorry - every help is appreciated!
With what command line exacly? Sorry I am a bit of a noob with RPi and Shell
-
@taconite What I meant was a command-line shell, i.e. login via SSH or in case you have keyboard and screen connected to the RPi open a shell there (in UI look for Terminal or Shell). Basically the location where you also ran
systemctl status ...
orjournalctl
. -
@wilriker said in Duet2 Wifi+Duex5 and SBC:
@taconite What I meant was a command-line shell, i.e. login via SSH or in case you have keyboard and screen connected to the RPi open a shell there (in UI look for Terminal or Shell). Basically the location where you also ran
systemctl status ...
orjournalctl
.I guess we had a misunderstanding. I understood you that the command line needs to be in SSH or on the pi command itself. I was wondering about the command that I should issue To phrase it differently I don't know which command I should run.
pi@duet3:~ $ systemctl status duetcontrolserver.service -l debug Unit debug.service could not be found. ● duetcontrolserver.service - Duet Control Server Loaded: loaded (/lib/systemd/system/duetcontrolserver.service; enabled; vendo Active: activating (start) since Thu 2021-02-11 20:28:52 CET; 1s ago Main PID: 1596 (DuetControlServ) Tasks: 9 (limit: 2062) CGroup: /system.slice/duetcontrolserver.service └─1596 /opt/dsf/bin/DuetControlServer Feb 11 20:28:52 duet3 systemd[1]: Starting Duet Control Server... Feb 11 20:28:53 duet3 DuetControlServer[1596]: Duet Control Server v3.2.0 Feb 11 20:28:53 duet3 DuetControlServer[1596]: Written by Christian Hammacher fo Feb 11 20:28:53 duet3 DuetControlServer[1596]: Licensed under the terms of the G lines 1-13/13 (END)...skipping... Unit debug.service could not be found. ● duetcontrolserver.service - Duet Control Server Loaded: loaded (/lib/systemd/system/duetcontrolserver.service; enabled; vendor preset: enabled) Active: activating (start) since Thu 2021-02-11 20:28:52 CET; 1s ago Main PID: 1596 (DuetControlServ) Tasks: 9 (limit: 2062) CGroup: /system.slice/duetcontrolserver.service └─1596 /opt/dsf/bin/DuetControlServer Feb 11 20:28:52 duet3 systemd[1]: Starting Duet Control Server... Feb 11 20:28:53 duet3 DuetControlServer[1596]: Duet Control Server v3.2.0 Feb 11 20:28:53 duet3 DuetControlServer[1596]: Written by Christian Hammacher for Duet3D Feb 11 20:28:53 duet3 DuetControlServer[1596]: Licensed under the terms of the GNU Public License Version 3 ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ lines 1-13/13 (END)
pi@duet3:~ $ journalctl -xeu duetcontrolserver.service -l debug Failed to add match 'debug': Das Argument ist ungültig pi@duet3:~ $ journalctl -xeu -l debug duetcontrolserver.service Failed to add match 'debug': Das Argument ist ungültig pi@duet3:~ $ journalctl -l debug duetcontrolserver.service Failed to add match 'debug': Das Argument ist ungültig pi@duet3:~ $ journalctl -l duetcontrolserver.service Failed to add match 'duetcontrolserver.service': Das Argument ist ungültig pi@duet3:~ $
-
@taconite Sorry, I haven't been clear. So a more step-by-step instruction set.
First make sure to stop the duetcontrolserver service:sudo systemctl stop duetcontrolserver
then run DuetControlServer manually with debug logging enabled:
sudo su - dsf -c "/opt/dsf/bin/DuetControlServer -l debug"
This will output everything directly to the console with logging in debug level.
-
This is the output
pi@duet3:~ $ sudo systemctl stop duetcontrolserver pi@duet3:~ $ sudo su - dsf -c "/opt/dsf/bin/DuetControlServer -l debug" This account is currently not available. pi@duet3:~ $
-
-
@wilriker said in Duet2 Wifi+Duex5 and SBC:
sudo /opt/dsf/bin/DuetControlServer -l debug
pi@duet3:~ $ sudo systemctl stop duetcontrolserver pi@duet3:~ $ sudo /opt/dsf/bin/DuetControlServer -l debug Duet Control Server v3.2.0 Written by Christian Hammacher for Duet3D Licensed under the terms of the GNU Public License Version 3 [info] Settings loaded [info] Environment initialized [fatal] Could not connect to Duet (Board is not available (no header)) [debug] System.OperationCanceledException: Board is not available (no header) at DuetControlServer.SPI.DataTransfer.ExchangeHeader() in /home/christian/Due t3D/DuetSoftwareFramework/src/DuetControlServer/SPI/DataTransfer.cs:line 1170 at DuetControlServer.SPI.DataTransfer.PerformFullTransfer(Boolean connecting) in /home/christian/Duet3D/DuetSoftwareFramework/src/DuetControlServer/SPI/DataT ransfer.cs:line 162 at DuetControlServer.SPI.DataTransfer.Init() in /home/christian/Duet3D/DuetSo ftwareFramework/src/DuetControlServer/SPI/DataTransfer.cs:line 104 at DuetControlServer.Program.Main(String[] args) in /home/christian/Duet3D/Du etSoftwareFramework/src/DuetControlServer/Program.cs:line 113
again "no header" but I checked the wiring multiple times. Maybe there is something wrong with the small pcb (btw. I already checked for lifted pads and measured the connections)