Duet3/pi DCS is unavailable after wiring 24V
-
@bearer
my bad, instructions uncear. that would be a windows command, as we'd want to clear the arp cache on the host running wireshark. (but its moot point, no doubt about which host the pi is, and seems to be no firewall issue)
thanks for clarifying; I can try the arp command again if that capture doesn't work
thats a problem between the pi and the Duet over the spi bus. can you do ls -l /dev/spi* on the pi?
Sure here's what I get; I did remember very clearly enabling SPI during the setup process
pi@duet3:~ $ ls -l /dev/spi* crw-rw---- 1 root spi 153, 0 Apr 12 15:45 /dev/spidev0.0 crw-rw---- 1 root spi 153, 1 Apr 12 15:45 /dev/spidev0.1
i might be paranoid, but i'd get Peter Griffins volcano insurance just in case.
Lol what do you mean?
And thank you again for all the support; looking forward to hear what you see in that capture
Cheers
-
@fractalengineer said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
thanks for clarifying; I can try the arp command again if that capture doesn't work
No need, and capture looks about as expected, computer connects to Pi they switch to websockets and everyone is happy as far as I can tell.
Problem likely lies in that DuetWebControl which runs on the pi and cannot connect to DuetControlServer because its cannot find the Duet on the SPI bus and doesn't start.
@fractalengineer said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
Sure here's what I get; I did remember very clearly enabling SPI during the setup process
You're not using the image from here? https://duet3d.dozuki.com/Wiki/SBC_Setup_for_Duet_3 (it should have SPI and other stuff ready to go)
In any case I don't think I can pinpoint problems any further than its beetween DCS and the Duet3 board. Maybe dropping the SPI speed could be worth a try, if no one beats me to it I'll see if I can't post some instructions later.
-
@bearer
You're not using the image from here? https://duet3d.dozuki.com/Wiki/SBC_Setup_for_Duet_3 (it should have SPI and other stuff ready to go)
Seems to be the same as the one linked in the "get started" guide, so I'd say yes
I have no clue how to do the spi speed thing so I'll be on the lookup; thanks
-
@fractalengineer said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
I have no clue how to do the spi speed thing so I'll be on the lookup; thanks
neither did I..
and a few quick searches didn't bear fruits, however https://forum.duet3d.com/post/109561
the config.json file would be
/opt/dsf/conf/config.json
-
Oh, do make a note of what the speed was before reducing it.
grep "SpiFrequency" /opt/dsf/conf/config.json sed -i 's/^ "SpiFrequency": [0-9]*,/ "SpiFrequency": '500000',/' /opt/dsf/conf/config.json grep "SpiFrequency" /opt/dsf/conf/config.json
should give you
pi@duet3:~ $ grep "SpiFrequency" /opt/dsf/conf/config.json "SpiFrequency": 8000000, pi@duet3:~ $ sed -i 's/^ "SpiFrequency": [0-9]*,/ "SpiFrequency": '500000',/' /opt/dsf/conf/config.json pi@duet3:~ $ grep "SpiFrequency" /opt/dsf/conf/config.json "SpiFrequency": 500000, pi@duet3:~ $
showing it changed from 8mhz to 500khz - if it works try increasing it until it stops working and back off say 1mhz.
if not, verify the board still does respond to
M122
on the serial terminal, no sd card in the duet (should be clear from M122 output as well) and call in the cavalry. -
@bearer Hi,
Ok so today I tried on another RPi 4. Had to power the Duet back on VIN to supply enough juice for both the Duet and Pi, but still no luck. Even on the HDMI screen, shows DCS unavailable.
Spi Freq was:
pi@duet3:~ $ grep "SpiFrequency" /opt/dsf/conf/config.json "SpiFrequency": 2000000,
Changed it to 500kHz
Still no luck.
Here's the M122 result.
M122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC v0.6 or 1.0 version 3.0 running on Duet 3 MB6HC Board ID: 08DJM-956L2-G43S4-6J9F6-3S86T-KA5LD Used output buffers: 1 of 32 (12 max) === RTOS === Static ram: 152720 Dynamic ram: 148548 of which 0 recycled Exception stack ram used: 308 Never used ram: 91640 Tasks: NETWORK(ready,1984) HEAT(blocked,1416) CanReceiv(suspended,3808) CanSender(suspended,1476) CanClock(blocked,1424) TMC(blocked,212) MAIN(running,3652) IDLE(ready,160) Owned mutexes: === Platform === Last reset 00:11:35 ago, cause: power up Last software reset at 2020-04-04 15:59, reason: User, spinning module LinuxInterface, available RAM 79620 bytes (slot 0) Software reset code 0x0010 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0440f000 BFAR 0x00000000 SP 0xffffffff Task 0x4e49414d Error status: 0 Free file entries: 10 SD card 0 not detected, interface speed: 37.5MBytes/sec SD card longest block write time: 0.0ms, max retries 0 MCU temperature: min 43.9, current 44.2, max 44.3 Supply voltage: min 24.1, current 24.1, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.1, current 12.2, max 12.2, under voltage events: 0 Driver 0: standstill, reads 12938, writes 0 timeouts 0, SG min/max not available Driver 1: standstill, reads 12938, writes 0 timeouts 0, SG min/max not available Driver 2: standstill, reads 12938, writes 0 timeouts 0, SG min/max not available Driver 3: standstill, reads 12938, writes 0 timeouts 0, SG min/max not available Driver 4: standstill, reads 12938, writes 0 timeouts 0, SG min/max not available Driver 5: standstill, reads 12938, writes 0 timeouts 0, SG min/max not available Date/time: 1970-01-01 00:00:00 Slowest loop: 0.28ms; fastest: 0.09ms === Move === Hiccups: 0(0), FreeDm: 375, MinFreeDm: 375, MaxWait: 0ms Bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 === AuxDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 === Heat === Bed heaters = -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1 === GCodes === Segments left: 0 Stack records: 1 allocated, 1 in use Movement lock held by null http is idle in state(s) 0 telnet is idle in state(s) 0 file is idle in state(s) 0 serial is ready with "M122" in state(s) 0 aux is idle in state(s) 0 daemon* is idle in state(s) 0 0, running macro queue is idle in state(s) 0 lcd is idle in state(s) 0 spi is idle in state(s) 0 autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 0.28ms; fastest: 0.01ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0) HTTP sessions: 0 of 8 - Ethernet - State: 0 Error counts: 0 0 0 0 0 Socket states: 0 0 0 0 0 0 0 0 === CAN === Messages sent 0, longest wait 0ms for type 0 === Linux interface === State: 0, failed transfers: 0 Last transfer: 695578ms ago RX/TX seq numbers: 0/1 SPI underruns 0, overruns 0 Number of disconnects: 0 Buffer RX/TX: 0/0-0 ok
Something must be wrong with the board; it worked fine until I first powered it through VIN; I never shorted it either the fuses are mint.
-
Maybe @dc42 can share some insight?
-
We hope to have new RRF 3.01RC7+DSF+DWC released later today, so probably best to wait for those.
-
@fractalengineer said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
Changed it to 500kHz
I think mine was 8mhz, in any case when the update is published, be it to the stable or unstable list you'll get a prompt similar to, simplest approach would be to install the package maintainer's version and when that still doesn't work maybe try lowering the rate again (this way you find the new default without dealing with diffs and merging)
Configuration file '/opt/dsf/conf/config.json' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** config.json (Y/I/N/O/D/Z) [default=N] ?
-
@dc42 @bearer
But shouldn't it work anyway on the stable release? RRF 3.0 is known to be working fine on raspberry Pi isn't it?
-
@fractalengineer Yes it should but in any case that will require a working SPI link between the Duet 3 and your SBC. From the RRF diagnostics I can see that this is not the case.
To be sure: You must not have a SD card in the Duet 3 to use the SBC interface. Are you sure there is none in the Duet?
-
@chrishamm said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
You must not have a SD card in the Duet 3 to use the SBC interface. Are you sure there is none in the Duet?
thats why I asked him to add the M122 output that shows no sd card.
-
No SD card in the duet 100%; only have one so itβs in the pi
-
anyways, update is live on the unstable package feed; so switch to that and update - fingers crossed
-
I rather suspect that you have a broken cable or a misconfigured SPI device - you should be seeing at least a few transfers from DSF in the RRF diagnostics. I'll get back to this.
Are you using DuetPi or the stock Raspbian image?
-
The output does indeed look identical to a (correctly configured) Pi without a Duet3 attached. (And yeah, DuetPi image confirmed)
-
@fractalengineer, we suspect a problem with either the Duet or the ribbon cable. However we would like you to try with the latest firmware first. @chrishamm is building a new firmware image, and will post to this thread when it is ready.
-
@dc42 said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
@fractalengineer, we suspect a problem with either the Duet or the ribbon cable. However we would like you to try with the latest firmware first. @chrishamm is building a new firmware image, and will post to this thread when it is ready.
Got it; will try the image, thanks to you both for your answer.
I will check continuity on the ribbon in the meantime
Edit: All strands of the ribbon show continuity from one side to the other (tested by probing the sockets pins on the pi and duet) -
@fractalengineer said in Duet3/pi flashing Diag LED after wiring 24V DCS is unavailable:
I will check continuity on the ribbon in the meantime
measuring could provide enough pressure on pins to make a connection if poorly terminated connector, but still probaly a worth while test given shipping delays everywhere i suppose.
if you have some supplies you can roll your own; i wanted other stuff in there on the pi, but still a single connector on the Duet3 and the power grouped so mine is a little untraditional perhaps. Still 5 signals + 4 power is all you really need, 1:1 straight connection.
(can use a bunch of single wire female-female jumpers as well) -
@fractalengineer Please flash RRF 3.01-RC7 using bossa and this image on your SD card using Win32DiskImage or Etcher: https://pkg.duet3d.com/testing/image_2020-04-14-DuetPi.zip When you are done, please start the Pi, connect to it via SSH or open a terminal from an attached monitor, and send
sudo journalctl -u duetcontrolserver -e
. Once done, please post the output here.