ZenXY FluidNC RMRRF 2024

OK. I’ve updated FluidNC on my “portable” ZenXY table. I’m on v3.7.15 now. I updated the index.html.gz from here: FluidNC/FluidNC/data/index.html.gz at main · bdring/FluidNC · GitHub

I have it connected in station mode, to my home wifi and I can connect and zip around.

I haven’t noticed much difference from what I remember it doing. My config is here:

name: "Table ZenXY"
board: "TMC2130 Pen/Laser"

stepping:
  engine: RMT
  idle_ms: 255
  dir_delay_us: 1
  pulse_us: 2
  disable_delay_us: 0

kinematics:
  corexy:

start:
  must_home: false

axes:
  shared_stepper_disable_pin: gpio.13:high

  x:
    steps_per_mm: 200
    max_rate_mm_per_min: 8000
    acceleration_mm_per_sec2: 300
    max_travel_mm: 405
    soft_limits: false
    homing:
      cycle: 2
      positive_direction: false
      mpos_mm: 25.00
      feed_mm_per_min: 500.000
      seek_mm_per_min: 1000.000
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: gpio.15:high
      pulloff_mm: 13.00
      tmc_2130:
        direction_pin: gpio.26
        step_pin: gpio.12
        cs_pin: gpio.17
        r_sense_ohms: 0.110
        run_amps: 0.250
        hold_amps: 0.250
        microsteps: 32
        toff_disable: 0
        toff_stealthchop: 5
        toff_coolstep: 3
        run_mode: StealthChop
        homing_mode: StealthChop
        use_enable: false

  y:
    steps_per_mm: 200
    max_rate_mm_per_min: 8000
    acceleration_mm_per_sec2: 300
    max_travel_mm: 335
    soft_limits: false
    homing:
      allow_single_axis: true
      cycle: 1
      positive_direction: false
      mpos_mm: 5.0
      feed_mm_per_min: 500.000
      seek_mm_per_min: 1000.000
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: gpio.4:high
      pulloff_mm: 3.00
      tmc_2130:
        direction_pin: gpio.25
        step_pin: gpio.14
        cs_pin: gpio.16
        r_sense_ohms: 0.110
        run_amps: 0.250
        hold_amps: 0.250
        microsteps: 32
        toff_disable: 0
        toff_stealthchop: 5
        toff_coolstep: 3
        run_mode: StealthChop
        homing_mode: StealthChop
        use_enable: false

spi:
  miso_pin: gpio.19
  mosi_pin: gpio.23
  sck_pin: gpio.18

sdcard:
  cs_pin: gpio.5
  card_detect_pin: NO_PIN

coolant:
  flood_pin: NO_PIN
  mist_pin:  NO_PIN

probe:
  pin: NO_PIN

I don’t have a jackpot board. It is one of the pen/laser boards with TMC2209s.

I have a home.g script that looks like this:

$HY
G1 Y0 F600
$HX
G1 X50 Y50 F60

This fails on $HX, because the machine isn’t “idle”. The $HY works, not sure why.

I tried uploading a file over wifi to the sd card and it panic’ed:

[MSG:VRB: Mount_sd]
[MSG:ERR: sdmmc_card_init failed code 0x107]
Guru Meditation Error: Core  0 panic'ed (InstrFetchProhibited). Exception was unhandled.

Core  0 register dump:
PC      : 0x00000000  PS      : 0x00060a30  A0      : 0x8015a586  A1      : 0x3ffe9150
A2      : 0x3fff0c48  A3      : 0x3ffe9170  A4      : 0x00000028  A5      : 0x3ffe91a0
A6      : 0x3ffcdec8  A7      : 0x00000002  A8      : 0x801f249d  A9      : 0x3ffe9140
A10     : 0x00000000  A11     : 0x3ffe9170  A12     : 0x8f4da575  A13     : 0xfffffffe
A14     : 0x000000cc  A15     : 0x00000000  SAR     : 0x00000020  EXCCAUSE: 0x00000014
EXCVADDR: 0x00000000  LBEG    : 0x4008b74c  LEND    : 0x4008b757  LCOUNT  : 0x00000000


Backtrace: 0xfffffffd:0x3ffe9150 0x4015a583:0x3ffe9170 0x4015a68b:0x3ffe91c0 0x4015ace1:0x3ffe9210 0x4015945f:0x3ffe9240 0x400d54ef:0x3ffe9260 0x400dac6e:0x3ffe92a0 0x4010592f:0x3ffe9350 0x40105fc5:0x3ffe9400 0x401060ea:0x3ffe9470 0x401efb1d:0x3ffe9490 0x4011d59a:0x3ffe94b0 0x4011d5da:0x3ffe94d0 0x4011b64e:0x3ffe9510 0x4011c3cd:0x3ffe9610 0x4011d83d:0x3ffe9710 0x4010264d:0x3ffe9760 0x4010d8b6:0x3ffe9780 0x400f647b:0x3ffe97a0 0x400f3537:0x3ffe97c0




ELF file SHA256: 8509c03a42dda1bc

Rebooting...

Maybe the sd card is read only for some reason? IDK. The next thing I’ll do is pull the sd and make sure I can access it from my laptop. It is an 8GB card and reading the files seems fine. Only uploads are broken.

I would like some way for it to just boot and run on its own. Otherwise, I think fluid term is my best bet to get it running in the morning each day. WDYT?

1 Like

Maybe all in one line? Macros | Wiki.js This is one of the reasons my big table is not running fluid yet and why I have not put much time into the Zen kits. The new homing is not working for what I need.

What are you trying to do with that script, home Y before X and then move to the middle?
You can change the homing sequence in your config

That is completely new to me.

1 Like

I’m trying to home Y, then move away from the Y=0 position, so X can clear everything before homing X. The trouble (I think) is that homing X happens in a file, and the state while running a file is not idle.

If I run those commands independently, they work fine.

This one I think we can do.
Just like further down that page, just use startup_line0 to home, then line1 to run macro1

“macros:
startup_line0:
startup_line1:
macro0: G90&G53G0Z-1&G0X0Y0
macro1: $SD/Run=drill.nc”

1 Like

Okay you are trying to get around the new homing. I can’t figure that one out either.

Does homing Y first and setting the pulloff high enough work if you use a home all? As in does it home y, pull off then home X? I can pull out my mini Zen and give it a shot.

I can tell you my fix when I brought mine to OS last year was to trim and file the XY flags to the right dims and just home like normal.

Does anyone remember what the wifi password I used at RMRRF 2023 was? :slight_smile: I lost control of the WLED and I don’t want to attach a serial port (it is the painful pins on the board, not a USB).

I don’t remember exactly what the reasoning was for the multiple homes. I think it has to do with those tabs I’m using to hold the bottom glass up. They interfere with the mechanism. But it may just be due to the flag size.

I bet if I put them into two home files home_1 and home_2, I could do that. I will try that next.

If you get this I can finally update my big table (which is starting to act funny).

The other good alternative is to just have a computer with fluidterm attached and have a text file with all the commands needed to get it going.

I am sure it can be done with a macro or two to make it a lot easier.

Shoot, this might help as well. mpos_mm: this is better than the pulloff, but will it go to zero before the next homing step. I need to give it a shot. It says it can be negative.

I have mpos_mm set. I was so smart then and I need to learn stuff now. I have it set to 25mm on x and 5mm on Y.

I saw that I think we need a negative Y though. At least I do. My Y triggers beyond the ball travel.

On v3.7.15 with the Jackpot webui3 I had problems with the sd not working at all but on v3.7.14 it is working…

My bad opposite, the triggers happen early and I want my axis to travel further back, X much more than Y. So your config looks correct to me for mpos_mm. That also means it does not move to zero after a trigger and before the next trigger.

And pull off can not be negative. Maybe this is the one we ask Bart and Mitch to change. I am pretty sure the pulloff happens before the next axis homes.

Coincidentally, the 3.7.15 release notes say

" * Several improvements to how SD card errors are handled. This will make it more obvious when the problem it is a config file issue vs hardware or SD card issues."

I have definitely had SD issue with 3.7.15 & UIv3

I think that is why I have the G1 Y0 F600 in between Y and X.

Pull off primarily determines how far to back off when it is trying to clear the flag. We need a separate value. Something like, “Only home X if Y is at Y=yy.yyyy”. Sort of like safe Z homing in Marlin

I am not on uiv3. Should I be? Should I downgrade to 3.7.14?

Screenshot from 2024-04-02 11-27-33
Screenshot from 2024-04-02 11-28-34

It doesn’t seem to run startup_line1. The startup_line0 works (sometimes, although it did fail once). The second one doesn’t seem to run.