Configuration.h Table Size

Made a 15’ table. Would like to adjust the configuration.h to allow the lcd to accomodate positive numbers beyond 3276.7mm. How do I do this? I changed the bed size in the firmware with no effect.

Thanks

Does your LowRider work with a 15’ table even though the display does not present the correct values? What control board and LCD are you using?

My educated guess is that this is a limitation or a bug in either Marlin or the display code. In a 16-bit integer, the range of values is -32768 to 32767. I’m guessing that somewhere in the code there is an 16-bit integer that is storing 1/10mm values. Extending the range of values would require recoding the offending software to use 32-bit integers.

1 Like

I really like this guess. I can easily imagine them thinking that there would never be a 15’ cnc running Marlin. I would guess this would be interesting to the devs of Marlin. You might have set a record. They may be able to help you out. Hopefully, it is just in the LCD code and not in the main code.

Just ran a trace program for a 12’ piece. Everything worked fine. The LCD registered locations correctly when running the program. I just can’t freely jog the gantry while maintaining accurate positional data.

What controller and LCD do you use? You may get around the problem by executing a G92 X0 Y0 before you hit 3,276.7.

15 feet? That’s amazing. May I ask what you’ll be using it for?

Full Rambo, no endstops with the LCD from V1. I suspect you’re right about executing G92.

Getting started on the boat from Dan Lee’s site Dan Lee Boats

Full Rambo, no endstops with the LCD from V1.

I can take a quick look to see if I can track down the problem in Marlin, but I need to understand when the problem occurs. In particular, how are you moving the axes when you get the overflow? From the LCD display? From Repetier-Host?

Getting started on the boat from Dan Lee’s site Dan Lee Boats

Cool!

From the LCD while manually jogging to position. I haven’t tried Repetier Host.

Thanks, but don’t stress about it. I was mostly concerned that the machining program wouldn’t run correctly as a result, However, that is not the case. The machining programs run just fine.

There’s hope that it is just an int16_t that can easily be a int32_t.

HighProbability: So what happens when you exceed 3,276.7? Does the machine move in the right direction but the display shows the wrong values, or something more drastic?

Jeffeb3: I took a look at the manual motion code. I didn’t chase down all the data types, but everything appeared to be 32-bit int or a float. I suspect the issue is in the code that writes to the display.

The machine moves, from what I can tell visually, normally. After the zaph ding bat freak out displayed on screen, 10mm positive appears to be 10mm positive. The odd aspect afterward is that the screen displays negative 276… goes to zero, then starts positive again only to jump around from say negative 50 to a positive integer then back negative.

It was enough of a moment for me to make this post, however. Every program I’ve run so far seems to be immune to the issue.