Just a little lost re: upgrading to 3.0 firmware.



  • I want to try out the new firmware, but upon reading the release note stuff, I see there are many different changes in Syntax. For some, the notes might be sufficient, but for me, I'm just now comfy in 2.5. I don't totally follow the 3.0 notes. is there a short laundry list of things I'd need to really concern myself with, or is it a pretty complicated process?

    I'm running the stock RailCore II ZL build, and if anyone here has already converted to 3.0, and wouldn't mind sharing your config, that would be awesome! I realize that I'll have to make changes based on my machine, but my last 2 attempts to do it on my own, were not so pretty.

    I want to understand, and not just have it done for me, but I'm a visual learner. Being able to do a "compare" with Notepad++, will help me understand exactly what changed, and make notes as they apply to myself, and My machines.

    Thanks so much!

    If there is a more comprehensive guide anywhere, for those of us who don't speak fluent RepRap quite yet, I'm all ears, as well!



  • I also see something about a Firmware configuration wizard or something like that? is that set up for 3.0 yet? Knowing all of my parameters from 2.5, that should theoretically be an easy swap over, yes? I'll back up and try it tonight.



  • @Steve-Lynch said in Just a little lost re: upgrading to 3.0 firmware.:

    is that set up for 3.0 yet

    sure, but its not designed for every possible combination, but rather meant for the common designs and as a general starting point. bear that in mind https://configtool.reprapfirmware.org/



  • Hi Steve maybe post your config.g here?
    I am sure there are people here willing to help to do the conversion to RRF3 🙂



  • Anyway, you can read this guide, that's what I did when I migrated to RRF3.
    In the end I didn't have to change much in my specific case.



  • Thanks guys! I've been up all night trying everything I can think of.. Writing down what I tried, to try to avoid duplicating my efforts..

    Everything is working as it should, except for the following:

    Magnetic filament sensor
    BLTouch
    Heaters are all showing 20000 degrees.

    Here's My Config.G. I think my biggest hangup is the pin naming.... I've read the setup guide about 100 times, but It doesn't specify what the names actually are... So then I found another startup guide, that lists all the pin names, but the GPIO ports I'm using all have several aliases. In one example, it shows Quotes, and all the names, and then in another, it's still referencing the old "P" values. The startup guide assumes you know more than it tells you outright.. so I have 3 monitors going with 3 different guides. None are extremely specific in the syntax format. If you guys could help me understand that part, I think I can fix everything.

    My BL Touch is in the "z probe in" port, as it always was. BLTouch 3.1...... the other cable (orange, red, brown) is in PWM5 on the duex5 as it's always been. If I manually unplug and plug it in, it does the little self test cycle, then sits at the ready. I cannot get it to deploy or anything else however.. If I manually pull the pin, the value on screen changes.

    when assigning it to the GPIO Port, Do I put exp.heater7, exp.31, !duex.e6heat, !duex.pwm5 as the value? Or do I add the Cand quotation marks like so? "exp.heater7, exp.31, !duex.e6heat, !duex.pwm5"? I've tried all of the pin names separately, etc... The command to test it, as in the startup guide, references the G Code M280 P0 S10, yields the error "Invalid servo index" I thought I had just read that we're not calling it by the old P value anymore?

    If you can help me get sorted on my config.g, then I should be able to set up my deploy / retract stuff no problem. My heaters are not making any sense to me either.

    Here it is: I used the reprap configure tool, but even though I chose BL Touch, It set me up with no probe. So this is all my handy work if it's horribly wrong! I tried to add in my z leadscrew positions for the auto true level as well.

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Mon Jun 08 2020 03:57:32 GMT-0400 (Eastern Daylight Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"RailCore II ZL" ; set printer name
    M669 K1 ; select CoreXY mode

    ; Network
    M552 S1 ; enable network
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ;Filament Sensor
    M591 D0 P3 C3 S1 R70:130 L24.8 E3.0; Duet3D rotating magnet sensor for extruder drive 0 is connected to E0 endstop input, enabled, sensitivity 24.8mm.rev, 70% to 130% tolerance, 3mm detection length

    M591 D0 ; display filament sensor parameters for extruder drive 0

    ;Leadscrew locations
    M671 X-16.22:-16.22:290 Y23:274:150 S7.5 ;Front left,(-10,22.5) Rear Left (-10.,227.5) , Right (333,160) S7.5 is the max correction - measure your own offsets, to the bolt for the yoke of each leadscrew

    ; Drives
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P1 S1 ; physical drive 1 goes backwards
    M569 P2 S0 ; physical drive 2 goes forwards
    M569 P3 S1 ; physical drive 3 goes backwards
    M584 X0 Y1 Z5:6:7 E3 ; set drive mapping
    M350 ; configure microstepping without interpolation
    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X201.50 Y201.50 Z800.00 E415.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X3000.00 Y3000.00 Z500.00 E1200.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S1 ; set axis minima
    M208 X300 Y300 Z280 S0 ; set axis maxima

    ; Endstops
    M574 X1 S1 P"xstop" ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S1 P"ystop" ; configure active-low endstop for low end on Y via pin ystop

    ; BLTouch
    M558 P9 C"^zprobe.in" H5 F100 T2000 ; define probe type (P9 for BLTouch)

    M950 S0 C"duex.pwm5" ; define GPIO/Servo Pin

    M280 P0 S80 ; set 80deg servo position on GPIO port 0G31 X20 Y0 Z3.3 P25 ; define BLTouch offsets

    M557 X4:300 Y27:300 S20 ; define mesh grid

    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B3988 ;B3988 ; configure sensor 0 as thermistor on pin bedtemp
    M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
    M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
    M140 H0 ; map heated bed to heater 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C
    M308 S1 P"e0temp" Y"thermistor" T100000 B3988 ; configure sensor 1 as thermistor on pin e0temp
    M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
    M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit

    ; Fans
    M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
    M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
    M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on
    M950 F2 C"fan1" Q500 ; create fan 2 on pin fan1 and set its frequency
    M106 P2 S1 H1 T45 ; set fan 2 value. Thermostatic control is turned on

    ; Tools
    M563 P0 S"Extruder" D0 H1 F0 ; define tool 0
    G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
    G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C

    ; Custom settings are not defined

    ; Miscellaneous
    T0 ; select first tool



  • I'm using standard E3d heater, and thermistor, on the hotend.. thye bed is uaing a standard glass bead thermistor as it always has as well.

    Thanks so much for your assistance!



  • in the M950 line for the BLTouch you have defined a pin on a DUEX expansion board is that correct?



  • Yes the guide is indeed a bit unclear at times.
    the examples are using underscores in the pinnames but the list does not use underscores (ie e0heat vs e0_heat).
    I don't have access to my printers now so I don't know what naming convention I ended up using...



  • @Dougal1957

    yes, I have, or at least I have attempted to, if you see my config above. I'm using the PWM 5 port on the Duex 5. but what to call it? does it need the Exclamation point before it? Does it need the Letter C before it? What does the C mean? "I've been trying to figure that out. I'm also trying to figure out if this new system simplifies the situation by using it's actual name, instead of the "always 1 or 2 off" manner of the old naming convention (example, Pwm 5 on the duex was actually referred to as PWM 7 in the total count).

    So for the name of the port, do I have to include all of the aliases? or just the port I'm using? Is duex pwm5 really pwm5? or Heater7? (it says in the list they're shared....

    This is where my head wants to explode! I see why this change was made, and I embrace it! I just want so desperately to understand the nomenclature, so I can have that light bulb go on over my head and i can say "I Understand Now!" lol



  • @Steve-Lynch try changing the BLTouch pin name in the M950 to C"expheater7"

    I am not promising but the description of the M950 suggests that.
    https://duet3d.dozuki.com/Wiki/Gcode#Section_M950_Create_heater_fan_or_GPIO_servo_pin



  • But having said all this I am sure you can use the Mod pin on the Probe connector to drive it but I am not a BLTouch user so not 100% on that


  • administrators

    @Steve-Lynch said in Just a little lost re: upgrading to 3.0 firmware.:

    M950 S0 C"duex.pwm5" ; define GPIO/Servo Pin

    That's correct if you have connected the PWM servo input of the BLTouch to output PWM5 on the DueX.

    Do the M401 and M402 command deploy and retract the pin?



  • No, they do not. I am definitely in PWM5 on the duex, with the orange on the left, red in the center, and brown on the right, as seen in the instructions. My white and black leads are plugged into the "probe" port, to the left of the 50 pin duex ribbon. I'm in the first two pinsfrom left to right. white, then black. the same way It's been set up in 2.5.



  • I was a little sketchy on the whole servo pin angle entry below it as well. does that look ok?


  • administrators

    What do you have in your deployprobe.g and retractprobe.g files?



  • this is deploy:

    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Tue Jun 09 2020 01:46:51 GMT-0400 (Eastern Daylight Time)
    M280 P0 C"duex.pwm5" S10 ; deploy BLTouch

    this is retract:

    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Tue Jun 09 2020 01:46:51 GMT-0400 (Eastern Daylight Time)
    M280 P0 C"duex.pwm5" S90 ; retract BLTouch

    I tried reaching out to the railcore group, and as it turns out, there are 8 guys who couldn't get it to work, so they went back to 2.5, and one guy who says he can share his config with me, but he doesn't use a BL Touch.

    I went back to 2.5 last night so I could print, everything was fine, then I did the configurator again this morning. Still no Joy, though this time, it did add the BL Touch Info.

    So I guess I have to stick with this for everyone else, once we get mine right, I'll share the info.

    Does anyone have a CoreXY running E3D heater / thermistors, and BL Touch?

    If I can at least look at how it's set up, I can model mine after that.

    Thanks so much!


  • Moderator

    @Steve-Lynch said in Just a little lost re: upgrading to 3.0 firmware.:

    C"duex.pwm5"

    Remove that from your M280.

    The M950 in your config.g creates the servo pin. M280 P0 targets that servo pin.


  • Moderator

    ; Z-Probe
    M950 S0 C"duex.pwm5"                           ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.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
    
    ; deployprobe.g
    ; called to deploy a physical Z probe
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Tue Jun 09 2020 12:35:40 GMT-0600 (Central Standard Time)
    M280 P0 S10 ; deploy BLTouch
    
    ; retractprobe.g
    ; called to retract a physical Z probe
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Tue Jun 09 2020 12:36:12 GMT-0600 (Central Standard Time)
    M280 P0 S90 ; retract BLTouch
    

    That's right out of the configurator.



  • @Phaedrux
    I had it set up just like you just posted, and this is the error I get every time.

    "Invalid servo index 0 in M280 Command."

    I'm in the port labeled PWM5 on the duex board. This really is PWM5, correct? PWM5 isn't really PWM7 or something like that, right? I'm just trying to figure out why I cannot deploy the probe. Everything try yields some error or another when I try the M401...


  • administrators

    @Phaedrux said in Just a little lost re: upgrading to 3.0 firmware.:

    M950 S0 C"duex.pwm5"

    That looks correct to me. If you send that command from the console, what response do you get?

    Please verify using M115 that you are running firmware 3.1.1.



  • @dc42
    6/9/2020, 3:40:31 PM M401
    Error: M280: Invalid servo index 0 in M280 command
    6/9/2020, 3:40:11 PM Upload of config.g successful after 0s
    6/9/2020, 3:37:03 PM M401
    Error: M280: Invalid servo index 0 in M280 command
    6/9/2020, 3:36:49 PM M401
    Error: M280: Invalid servo index 0 in M280 command

    Two tries, then cleared out, saved, re-opened blank deploy and retract g codes, and made them from scratch.. still same thing..



  • ; deployprobe.g
    ; called to deploy a physical Z probe
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.1 on Tue Jun 09 2020 01:46:51 GMT-0400 (Eastern Daylight Time)

    M280 P0 S10 ; deploy BLTouch

    That's my deploy.....


  • Moderator

    And you have this exactly in config.g?

    M950 S0 C"duex.pwm5"                           ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F120 T6000            ; set Z probe type to bltouch and the dive height + speeds
    

  • administrators

    @Steve-Lynch said in Just a little lost re: upgrading to 3.0 firmware.:

    @dc42
    6/9/2020, 3:40:31 PM M401
    Error: M280: Invalid servo index 0 in M280 command
    6/9/2020, 3:40:11 PM Upload of config.g successful after 0s
    6/9/2020, 3:37:03 PM M401
    Error: M280: Invalid servo index 0 in M280 command
    6/9/2020, 3:36:49 PM M401
    Error: M280: Invalid servo index 0 in M280 command

    Two tries, then cleared out, saved, re-opened blank deploy and retract g codes, and made them from scratch.. still same thing..

    The command I wanted you to send from the console was the M950 command that I quoted.


Log in to reply