Binary upload to Rambo, MiniRambo, and Ramps

I was reading a topic today concerning someone struggling with platformIO. I was thinking it was too bad it wasn’t like the SKR Pro where a binary file can be tossed on a SD card and the board powered up. Then I remembered several years ago I directly uploaded a binary file to the Arduino. The recipe was a bit convoluted, but it was doable. I then search around and found XLoader. It supports the Arduino Mega, so it should work for the Rambo, MiniRambo, and Ramps. And there may be other tools out there that do the same thing. I’m guessing that any machine that has not had an Arduino development environment of some sort would also need to install a device driver.

So this is just and idea for Jeff and Ryan to consider. I’m not asking for any kind of response. The ZIP release of the Rambo, MiniRambo, and Ramps builds would need to have the binary files included, and some documentation written. There may be issues I’ve not considered, or may not be worth the effort to make it happen for the few times people need/want a simpler upload pathway. And it is a Windows only solution.

1 Like

There is a firmware.hex file. I was expecting that to work with the firmware flasher plugin for octoprint. But I don’t have a rambo or mini rambo to try it on.

If Xloader works, we should definitely encourage people to use it. Having to compile the firmware isn’t hard if it goes right, but stepping off of the yellow brick road can lead to confusing errors mean for coders.

Maybe someone can help out @vicious1 by trying it out on their rambo or mini rambo?

1 Like

I’m just gonna paste this image here. This looks stupid easy:


I don’t know what the board support package does for the rambo. I am not sure if that is needed for flashing ot just for compiling. And I would not expect it to be supported on anything but windows 10.

1 Like

I just tested it on my Rambo board, and it worked fine The screen updated to 509D (I was running an earlier version). I also pulled out a Arduino Mega board, and the upload was successful. Baud rate had to be 115200. Note that I installed the Arduino IDE on my laptop, so the device driver for the MEGA board was already installed. This might not be true for other people. There are a number of links that proport to provide the Mega device driver, but I’m I was a bit uncomfortable with some of them. They would need to be vetted to find a good one.


What steps did it take? Can you post a screenshot of the Xloader? Does it need to be installed or is it a “portable app”? Sorry if these questions are stupid, I don’t have windows.

1 Like

What steps did it take?

No install. It is downloaded as a zip file. In the Zip is a single folder. That folder contains the following:


So basically you unzip the folder to your computer, navigate into the folder, and double click XLoader.

Can you post a screenshot of the Xloader?

You already did above. That is the whole interface. Fill in the boxes and hit upload.


No freaking way. Well shoot I need to try this out.

I was hoping for a screenshot with the V1 stuff entered. Does it still say Uno? I think we should put this in the docs and try pointing a few people at it.

Here is an interface shot:


The bar at the bottom says “Uploading…” during the upload. No progress bar. If there is a problem, a terse message is displayed on the bar at the bottom. It takes 30 second to do the upload.

1 Like

So I think the best way for me to try this is find a computer I have never flashed with and see if any drivers or anything are needed. I think I can get a laptop I have never touched this evening.


Well that is nuts.

Grabbed the a fresh laptop, used xloader, plugged in a mini (w/power), selected the only com port available, mega2560, and it uploaded just fine. Tried it a second time, no problem, tried to change to 250000, no go.

Just have to be careful to clarify in teh instructions the firmware connects to things at 250000, the xloader uses the default 115200 no matter the firmware.



No driver. Very cool. Along with this, you might consider changing the default bed size in the firmware to something larger than a reasonable machine. I may be mistaken, but the only value I see in bed size for the MPCNC is if I were to enable soft stops, but in that case I would need to compile anyway. Right now it is not a big deal to have to change the bed size since I need to compile anyway, but with a no compile solution…

No drivers that I can tell. I don’t have a Rambo here to test with right now but I think the mini is the same in those terms.

Jeff already changed it. I thought most people would be within 8 inches and would not need to touch the defaults, wrong again.

Yeah. It is 600 mm in v510, which is about 24".

I made a draft doc for xloader in the docs. It is in my latest PR.

This really wouldn’t be that exciting, but combined with the MB releases, it is hopefully going to make a lot of people a lot less stressed.

There is an xloader in github, but I couldn’t tell if that was the source or a copy.

1 Like

We are a fickle people and reason does not always meet our perception of need no matter the actual need or use