Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home
-
@Veti I'm not sure it was the speed, as the config I downloaded by default, and used in previous tests has Z180. When I tested bed movement today, and I executed....
G91
G1 H2 Z1The bed moved more than 1mm....a lot more, so could it have been to do with steps/mm or something?
That's why you'll see deviations between the config provided by the configurator, as I pasted back in my previous stepper configs.
-
@vistalert said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
So I can consider other options. What is a good quality alternative to the BL Touch?
I actually prefer this over the bltouch.
https://www.thingiverse.com/thing:3303618
Its cheaper
it uses an optical endstop, same (or even better) accuracy, but it gives a constant signal.
same form factor -
@vistalert said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
That's why you'll see deviations between the config provided by the configurator, as I pasted back in my previous stepper configs.
as far as i can see both have Z400 for steps/mm
-
That's a very smart solution with the optical endstop and easy to comprehend
-
@Phaedrux said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
M98 P"config.g"
OUTPUT - no errors just the heater warnings...
M98 P"config.g"
Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C
Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 318C
Warning: M307: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 937C -
@vistalert said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
The bed moved more than 1mm....a lot more, so could it have been to do with steps/mm or something?
If you send M92 by itself it will report the currently configured steps per mm for all axis. Are you sure 400 is correct?
Formula for calculating z steps per mm with lead screw (without gearing) is:
Z_steps_per_mm = (motor_steps_per_rev * driver_microstep) / screw_lead
-
I could not get my BL touch to work at all on ports IO6 and IO7. Only when plugged on IO5 did it work.
I'd try that first, easy swap.
-
@Thalios I have tried io5 yes, didn't work. Could you please share your relevant rows from config.g for anything to do with the BL Touch and endstops. Also your deploy/retract probe.
What version of the BL Touch do you have? Confirm you have a Duet3 with v3.1.1?
Thanks!
-
@Phaedrux - I have a lot to learn yet, so appreciate the input. I can't state with much confidence that anything about my configs is correct yet. I'm just in the commissioning phase of "getting things to move, or blink" and hoping that nothing goes "bang!"
Once I get through the BL Touch issue, I'll feel at least in control of the basic functions, and can then learn and refine as I start to do the calibration work.
-
Can you provide the results of M122 and M98 P"config.g"?
Are you using the Duet 3 in SBC mode?
; Endstops M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M950 S0 C"io5.out" ; create servo pin 0 for BLTouch M558 P9 C"^io5.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S20 ; define mesh grid
M280 P0 S10 ; deploy BLTouch M280 P0 S90 ; retract BLTouch
Have you seen the BLTouch 3.1 manual?
https://5020dafe-17d8-4c4c-bf3b-914a8fdd5140.filesusr.com/ugd/f5a1c8_d40d077cf5c24918bd25b6524f649f11.pdfOr seen this?
https://www.antclabs.com/logic -
OUTPUT FROM M122:
m122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.1.1 running on Duet 3 MB6HC v1.01 or later (SBC mode)
Board ID: 08DJM-956BA-NA3TJ-6J9DL-3S86J-9T9AT
Used output buffers: 1 of 40 (10 max)
=== RTOS ===
Static ram: 154604
Dynamic ram: 162760 of which 60 recycled
Exception stack ram used: 224
Never used ram: 75568
Tasks: NETWORK(ready,1972) HEAT(blocked,1188) CanReceiv(suspended,3820) CanSender(suspended,1488) CanClock(blocked,1436) TMC(blocked,204) MAIN(running,4952) IDLE(ready,76)
Owned mutexes:
=== Platform ===
Last reset 00:03:18 ago, cause: power up
Last software reset at 2020-10-21 11:50, reason: User, spinning module LinuxInterface, available RAM 75240 bytes (slot 2)
Software reset code 0x0010 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0444a000 BFAR 0x00000000 SP 0xffffffff Task MAIN
Error status: 0
MCU temperature: min 16.2, current 28.4, max 28.5
Supply voltage: min 27.9, current 29.4, max 29.5, 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 59066, writes 14 timeouts 0, SG min/max 0/0
Driver 1: standstill, reads 59066, writes 14 timeouts 0, SG min/max 0/0
Driver 2: standstill, reads 59067, writes 14 timeouts 0, SG min/max 0/0
Driver 3: standstill, reads 59067, writes 14 timeouts 0, SG min/max 0/0
Driver 4: standstill, reads 59068, writes 14 timeouts 0, SG min/max 0/0
Driver 5: standstill, reads 59068, writes 14 timeouts 0, SG min/max 0/0
Date/time: 2020-10-21 23:54:43
Slowest loop: 3.90ms; fastest: 0.14ms
=== Storage ===
Free file entries: 10
SD card 0 not detected, interface speed: 37.5MBytes/sec
SD card longest read time 0.0ms, write time 0.0ms, max retries 0
=== 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 CDDA state: -1
=== AuxDDARing ===
Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
=== Heat ===
Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP* is ready with "M122" in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is idle in state(s) 0
Trigger* is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
SBC is idle in state(s) 0
Daemon* is idle in state(s) 0
Aux2 is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 0.83ms; fastest: 0.01ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions
HTTP sessions: 0 of 8- Ethernet -
State: disabled
Error counts: 0 0 0 0 0
Socket states: 0 0 0 0 0 0 0 0
=== CAN ===
Messages sent 723, longest wait 0ms for type 0
=== Linux interface ===
State: 0, failed transfers: 0
Last transfer: 18ms ago
RX/TX seq numbers: 5844/5845
SPI underruns 0, overruns 0
Number of disconnects: 0
Buffer RX/TX: 0/0-0
=== Duet Control Server ===
Duet Control Server v3.1.1
Code buffer space: 4096
Configured SPI speed: 8000000 Hz
Full transfers per second: 0.13
- Ethernet -
-
OUTPUT FROM M98 P"config.g"
10/22/2020, 6:55:46 AM M98 P"config.g"?
Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C
Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 318C
Warning: M307: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 937C -
Yes, running with SBC - Pi4. Done all the apt-get update/upgrade stuff. Upgraded firmware on D3 to 3.1.1, validated that the Pi has all the relevant components versioned at 3.1.1 too.
-
If you're absolutely positive that the wiring is correct, I would suggest trying to setup the Duet3 in standalone mode just to take the Pi and DSF out of the equation entirely.
The easiest way to do this is to create a new SD card with the usual folder structure.
https://duet3d.dozuki.com/Wiki/SD_Card#Section_Creating_the_file_structureMake sure the /www folder has the contents of the DWC 3.1.1 files.
https://github.com/Duet3D/RepRapFirmware/releases/download/3.1.1/DuetWebControl-SD-3.1.1.zipDownload your current config files from DWC by clicking the check box to select all files, right click and save as zip. Then extract that zip file into the /sys folder on your new SD card.
Place that SD card in the Duet 3 and disconnect the Pi ribbon cable.
Then test the BLtouch as described here.
https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe -
With respect to the following - I have seen the documents, but without being told anything is necessary, short of being instructed to do so, I've not done anything other than setup the config.g
Phaedrux Have you seen the BLTouch 3.1 manual?
https://5020dafe-17d8-4c4c-bf3b-914a8fdd5140.filesusr.com/ugd/f5a1c8_d40d077cf5c24918bd25b6524f649f11.pdfvistalert: Yes - I note with interest the text "Z trigger with adaptable width: "
Do you feel it's advisable to do something in this context? Has anybody had to do this with a D3, BL Touch 3.1?Do you guys have a D3 and BL Touch 3.1? I think I saw some posts previously that mentions you have tested this.
Or seen this?
https://www.antclabs.com/logicvistalert: Yes I have - Does the Duet3 fall into this category? "A board with a large capacity capacitor in the end-stop input circuit, such as the Melzi"
Being connected to io7 and +5v means that might BL touch out of the box should be good to go, no?
The only thing I can think of from the above documents is the pulse width comment.
I'd like to do any further changes on this premise, if possible:
- Has the Duet team tested BL Touch 3.1 with Duet3 and firmware 3.1.1?
- If yes, and it's working, what do I need to do to get to the same level of success?
- Given my wiring appears to be fine, either the BL touch may be faulty, or there is a comms / timing issue, as indicated by the PWM comment in the 3.1 documentation.
Does the above sound sensible?
I don't want to randomly go off trying stuff, as you guys lose control of the troubleshooting flow, and I may have or leave the device(s) in a dysfunctional or unknown state.
Happy to work step by step with "If you do this, what does M???? report" or "try this, expect this...."
Thanks.
-
No you're not the first to have some issues with the BLTouch 3.1. There were some issues when connected to the tool board that we are now aware of, but there have also been some cases with it not working as expected with the Duet3. It's also been reported to work fine, so further investigation is necessary.
The reason I bring up the manuals, etc is just to give us all the relevant information while we investigate.
It is certainly possible that the BLtouch is faulty. It wouldn't be the first time. Your config is correct, and you have checked the wiring, so either the BLTouch is faulty or there are some firmware issues with the 3.1 specifically. Both are possible.
I don't have further things to try other than my description of testing standalone mode and testing a new BLTouch. I've brought it to DC42s attention as well, so he may have some things to test soon.
-
Sounds good, and again, thank you. I actually run a tech support team myself, so I truly appreciate how difficult and challenging this is. I'm also willing to do what ever I can to assist...as my first message said, this is an awesome product, and I can't imagine trying to do this stuff if we had to keep flashing firmware. With RR, it's easy to quickly spin a config and diagnose.
I have actually ordered a second BL Touch. It may be here in a couple of days, fingers crossed. Just FYI, my dad (I'm 56, he's 80!) is a micro-electronics guru, and even he grilled me about the risk of bad wiring / crimping. He pointed out, even with continuity, it's possible to have too much resistance, as well as other issues. So we did carefully go through the connector pins and add some solder too to ensure a guaranteed solid connection. Just worth noting, as my initial confidence based on "continuity" isn't necessarily proof that there's nothing wrong with the cabling.
I don't feel inclined to do anything about logical level, as clearly the D3 supplies 5V, and the BLT3.1 seems to work that way by default.
I'm definitely interested in the PWM width comment.
Given I have a D3, and Pi 4, there's two high performing pieces of kit here. If the timing is out at all in the communications via the BLT OUT -> io7.in then there is something worth investigating there.
-
@Phaedrux and possibly for @dc42 to consider. I have a good collection of various Arduino / ESP and teensy boards here.
If you had a sketch (or link to) that might validate the BL Touch perhaps that would be a good troubleshooting / diagnostic step? I have Wemos D1 mini, which is 5V capable.
Just a thought.
-
@vistalert said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
I don't feel inclined to do anything about logical level, as clearly the D3 supplies 5V, and the BLT3.1 seems to work that way by default.
Well the reason I brought it us is just to assess whether it may have been changed at some point or if the 3.1 is behaving different to the previous versions. More for DC42 to answer since he has a 3.1 probe to actually test with.
@vistalert said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
Given I have a D3, and Pi 4, there's two high performing pieces of kit here.
That's part of the complication actually since it introduces another layer of software and hardware. Hence why I asked if it would be possible for you to switch temporarily to standalone mode to test since it would help isolate the problem if it is firmware related. It's also really handy to be able to switch back and forth for cases like this. Once the SD card is prepared it's as easy to switch between standalone and SBC mode as pulling the SD card and connecting the Pi again.
@vistalert said in Duet3 BLTOUCH3.1 Probe deploys but doesn't trigger on Z Home:
Just FYI, my dad (I'm 56, he's 80!) is a micro-electronics guru, and even he grilled me about the risk of bad wiring / crimping.
You're quite lucky to have that in your back pocket. I myself feel quite lucky to have my father (86 and a master mechanic, electrician, and carpenter. Wealth of knowledge.)
-
@Phaedrux We are indeed very lucky. And it's remarkable how diverse our thinking and skills are. So I know we'll get there.
Totally understand about the comms/timing.
Ah I misunderstood / skipped the standalone comment. I get your point. How would I go about that. I don't have a screen, which may be an issue in terms of user interface?
Before we try that, is there some GCODE I can execute which we think would give us an adjustment to the pulse width, or should we wait for dc42 to come back? Happy to do that.