# Makerbase Robin Nano 3.1 won't flash

**URL:** <https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579>\
**Category:** General Discussion\
**Created:** [December 28, 2022, 1:12pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579 "2022-12-28T13:12:11Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [December 28, 2022, 1:12pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/1 "2022-12-28T13:12:11Z")

</div>

### Basic Information:

Printer Model: two trees SP-5, a corexy with marlin-2.1.3 installed via sd card,missconfigured, won’t run printer, can’t build new marlin, board is too new.  
this printer was supplied with a MKS Robin Nano 1.2 board and an older 1.x marlin which blew while undoiing a freezeup. I ordered another board, but amazon shipped a 3.1, a much newer board  
 MCU / Printerboard: is now an stm32 \*407  
 `klippy.log` doesn’t exist

_Fill out above information and in all cases attach your_ `klippy.log` _file. Pasting your_ `printer.cfg` _is **not** needed_

### Describe your issue: basicly dfu says error 255 using /dev/serial-by-id

This is my main box, the work is being done on a bpi5 ruiing armbian, aka debian testing.  
I have tried alll the brand:product ids suggested by the error with error 255 as the final results each time.  
My config uses the 3rd com choice, which I think dmesg says is .dev.ttyACM0

Never saw klipper till 2 hours ago. but a 22 year linux user. instalation on the bpi5 was totally normal.

Does dfu expect something else?

Thank you

Cheers all, Gene

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [December 28, 2022, 6:49pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/2 "2022-12-28T18:49:47Z")

</div>

I have now gone thru at least half of the multitude of com options in make menuconfig and have  
about reached the conclusion that the usb driver installed by the klipper install script cannot  
function with dfu.

Every option so far results in an error 255 for a make flash, and error 1 for a make serialflash.  
This is with the printers “printer style” usb cable plugged directly into a usb3 port on the  
bananna pi m5 that is building klipper.

Is there a procedure that will generate an sd card image that works like the marlin install?

That works flawlessly but installs the wrong marlin, probably for a bed slinger, not for a corexy.

octoprint talks to that marlin-2.1.3, can do the temperature stuff but not the motors, totally wrong kinematics.  
x moves diagonally and ignores the home switch, y might move a mm at a home try, z moves are limited, upside down and is not correctable via the configuration files directives to invert it.

I figure fixing dfu or using the sd is first on the agenda  
the flash\_device is:  
ene@bpi51:~/src/klipper$ ls /dev/serial/by-id/\*  
/dev/serial/by-id/usb-STMicroelectronics\_GENERICSTM32F407VGT6\_CDC\_in\_FS\_Mode\_207237875746-if00

make flash FLASH\_DEVICE=/dev/serial/by-id/usb-STMicroelectronics\_GENERICSTM32F407VGT6\_CDC\_in\_FS\_Mode\_207237875746-if00  
darned wordwrap, thats all one line, and get this response:

Flashing out/klipper.bin to /dev/serial/by-id/usb-STMicroelectronics\_GENERICSTM32F407VGT6\_CDC\_in\_FS\_Mode\_207237875746-if00  
Entering bootloader on /dev/serial/by-id/usb-STMicroelectronics\_GENERICSTM32F407VGT6\_CDC\_in\_FS\_Mode\_207237875746-if00  
Device reconnect on /sys/devices/platform/soc/ffe09000.usb/ff500000.usb/xhci-hcd.1.auto/usb1/1-1/1-1.1/1-1.1:1.0  
sudo dfu-util -p 1-1.1 -R -a 0 -s 0x800c000:leave -D out/klipper.bin

[sudo] password for gene:  
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.  
Copyright 2010-2016 Tormod Volden and Stefan Schmidt  
This program is Free Software and has ABSOLUTELY NO WARRANTY  
Please report bugs to [http://sourceforge.net/p/dfu-util/tickets/](http://sourceforge.net/p/dfu-util/tickets/)

dfu-util: Invalid DFU suffix signature  
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!  
dfu-util: No DFU capable USB device available

Failed to flash to /dev/serial/by-id/usb-STMicroelectronics\_GENERICSTM32F407VGT6\_CDC\_in\_FS\_Mode\_207237875746-if00: Error running dfu-util

If the device is already in bootloader mode it can be flashed with the  
following command:  
make flash FLASH\_DEVICE=0483:df11  
OR  
make flash FLASH\_DEVICE=1209:beba

If attempting to flash via 3.3V serial, then use:  
make serialflash FLASH\_DEVICE=/dev/serial/by-id/usb-STMicroelectronics\_GENERICSTM32F407VGT6\_CDC\_in\_FS\_Mode\_207237875746-if00

make: \*\*\* [src/stm32/Makefile:98: flash] Error 255

So how do I test the bpi5’s usb -3 port for dfu compliance?

Thanks all you klipper guru’s.

---

<div class="post-metadata">

**Author:** ![mykepredko](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/mykepredko/32/2085_2.png) [@mykepredko](https://klipper.discourse.group/u/mykepredko)\
**Post date:** [December 28, 2022, 7:48pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/3 "2022-12-28T19:48:10Z")

</div>

I work with MKS Robin Nano V3.1s in two of my printers without any issues.

You’re trying a pretty complex procedure; when I have Flashed Klipper on the Robin Nano V3.1, I’ve done it two ways. The first is building an image on an rPi (using instructions like [How to Install Klipper on FLSUN Super Racer: Config and Setup](https://3dprintbeginner.com/klipper-on-flsun-super-racer/) - scroll down to " MKS Robin Nano V3 Klipper Firmware Config" for the menuconfig which I suspect that you’re doing) and then copying it onto a Windows PC using NotePad++. The other way is to simply copy the MKS build version of Klipper on GitHub (from [Klipper-for-MKS-Boards/MKS Robin Nano V3.x/](https://github.com/makerbase-mks/Klipper-for-MKS-Boards/tree/main/MKS%20Robin%20Nano%20V3.x) - currently it’s [Robin\_nano\_v3 v0.10.0-557.bin](https://github.com/makerbase-mks/Klipper-for-MKS-Boards/blob/main/MKS%20Robin%20Nano%20V3.x/Robin_nano_v3%20v0.10.0-557.bin)).

To flash the Robin Nano V3.1, I use a freshly (Windows) formatted 16GB USB thumb drive (don’t forget to rename it to “Robin\_nano\_v3.bin”). I have never tried using an SD card.

Can I suggest that you load the pre-built Robin Nano V3.x Klipper image by MKS from the Github link above and copy it into a USB thumb drive and try again?

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [December 28, 2022, 8:50pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/4 "2022-12-28T20:50:32Z")

</div>

usb std socket is not available when card is installed, no cutout in printer base. its cut for a V1.2 card. Ditto the encoder and knob on the display, it has touch screen too which works so that has been nipped off and removed… So if it can be done with a small 4gb partition on a 32G u-sd, I’d appreciate a howto the web pages don’t appear to have.  
sudo dfu-util -lv only reports the version 0.9 and author credits, no dfu capable devices on the banana pi m5 running armbian in 64 bit debian testing flavor.

dfu-util bugs to be reported to sourceforge but ff has long forgotten my credentials so I can’t report the bug. But sourceforge knows me and will not allow a new account to be created. That is bs at its finest, but I can’t be any nicer.

If an u-sd card can be carved up to work I’d be pleased.

Octoprint works fine thru /dev/ttyACM0 on the bpi5, but the marlin-2.1.3 the about reports is apparently built for bed slingers, does not run a corexy except for temps. The board is too new and marlin won’t let me build it. klipper seems to be a lot more cooperative. I see by the ticket page that my version of dfu-utils is a bit decrepit,0.10 has been out for years but getting a new, bugfixed version out of debian by normal repo means is not possible.

What else can I do? I will raise the issue on debian-arm list too.

Thank you.

---

<div class="post-metadata">

**Author:** ![mykepredko](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/mykepredko/32/2085_2.png) [@mykepredko](https://klipper.discourse.group/u/mykepredko)\
**Post date:** [December 29, 2022, 3:06am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/5 "2022-12-29T03:06:08Z")

</div>

How hard would it be to pull the Robin Nano, attach it to a +12V/+24V supply and use a thumb drive to Flash your board?

I’m not being facetious. I think your first step needs to be see if the Robin Nano works with the Klipper firmware and if you’ve already replaced the board in the system once, you understand the what needs to be done.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [December 29, 2022, 3:32pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/6 "2022-12-29T15:32:40Z")

</div>

I have 3 of these boards, intending to restore 2 other printers I am in the process of rebuilding. But I’ll have to cannibalize a 24 volt supply to power them laying on the table. My supplies lined up to use are all 48 volt as I intend to get usable speeds out of the rebuilds. Not a huge problem as I’ve quite a houseful of dead printers and I am a CET.  
More of a pita than a problem. I also have a triplet of BTT’s octopus-pro’s, the high voltage motor version I hope to put klipper on at some point. However discovering that this board actually has the pins per axis, en,step,dir signals to drive industrial sized stepper/servo’s has changed my mind about a universal board. Now if marlin/klipper could be replaced with a ported LinuxCNC we’ed have one very capable CNC controller for machinery of considerable tonnage. This isn’t unusual for me, I’ve a lengthy list of BTDT’s in my 88 years.

What I’m trying o do in my dotage is be able to make a woodworkers vise screw assembly I’ve designed and wrote the gcode to make and do it in less than 2 or 3 weeks per screw. Something no one has done for woodworkers in around 100 years. Nice project to keep me out of the bars.

But to make it worth my time I have to be able to print the rest of it as fast as I can make the screw itself. The screw is about a day with the current tooling, printing the nuts and the rest of it is currently about 2 weeks a screw. So more, faster printers are needed. 4x faster for starters, 30x is within reach if money is available. So this is on my “bucket” list.  
If I can sell 10 of these screws, nice, 50 will be amazing.

Thank you all for the help.

Cheers, gene.

---

<div class="post-metadata">

**Author:** ![mykepredko](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/mykepredko/32/2085_2.png) [@mykepredko](https://klipper.discourse.group/u/mykepredko)\
**Post date:** [December 29, 2022, 4:10pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/7 "2022-12-29T16:10:33Z")

</div>

I’m not quite sure what your plan is here after this email. Are you changing the SP5s to the Robin Nano or Octopus Pro (to be able to use the 48V supply with, I presume TMC)?

What stepper drivers are you looking at using? 48V is pretty high and beyond the TMC5160. It also means you’re looking at around 350mm/s (assuming NEMA 17s) if I use the Trinimac spreadsheet for determining the maximum speed for the back EMF being produced.

What is a “woodworkers vise screw assembly”? I did a Google search on it and didn’t find anything that seemed that exotic or complex.

In any case, I was expecting that to program the Robin Nano’s, you’d put your printer on its side/top and pull out the controller enough that you can still power it from the printer’s supply when you load the Klipper firmware on them.

It sounds like an interesting project - keep us posted as to your progress.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [December 30, 2022, 4:04am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/8 "2022-12-30T04:04:37Z")

</div>

> [mykepredko] mykepredko [https://klipper.discourse.group/u/mykepredko](https://klipper.discourse.group/u/mykepredko)  
> December 29
> 
> I’m not quite sure what your plan is here after this email. Are you  
> changing the SP5s to the Robin Nano or Octopus Pro (to be able to use  
> the 48V supply with, I presume TMC)?
> 
> What stepper drivers are you looking at using? 48V is pretty high and  
> beyond the TMC5160. It also means you’re looking at around 350mm/s  
> (assuming NEMA 17s) if I use the Trinimac spreadsheet for determining  
> the maximum speed for the back EMF being produced.

There is a 60 volt version of the tmc5160, I have a dozen of them at  
$25/copy, and 3 of the high voltage octopus boards, I also have 3 of  
these robin nano 3.1 boards and displays. Buying them because they  
actually have headers that will drive bigger stepper drives on ton plus  
machinery.

I have already changed the y motor on an ender 5 plus to a side mounted  
3 phase stepper/servo in nema23 flavor. Replacing the double shaft motor  
in the middle of the back rail with a 25mm CF tube for as ultimate a  
sync between the belts as I can do. Its driver has a 50 volt top rating  
and I’ve had this series of motors up to around 3000 rpm on other  
machines running linuxcnc. They either get to where they are told to go,  
or issue a contact closure in about a millisecond, freezing linuxcnc in  
its tracks before the error shows in the cut. They also, in the servo  
process, modulate the motor currant according to the error, running 50C  
cooler than a normal 2 phase stepper. The use only enough power to get  
the job done.

These motors/controllers are their own PID’s and I’m feeding them  
step/dir commands straight from the TP in LinuxCNC. Unlike 2 phase  
steppers which can lose home w/o phoning home, these are magic.

I also have a 6 pack of the nema 17 42 series stepper/servos. aliexpress  
was having a $15/copy sale I couldn’t bypass, they come with a driver  
cable that plugs into a driver socket on either of these boards, but  
they are only about 30 volt rated. They too will get there or signal  
stop, I’m no longer homed. One of them will replace the x motor on the  
ender5+, and two of them will do the xy on a tronxy-400-plus, bringing  
it to 300mm/sec eventually. I have cf tubes and linear bearings for the  
x axis on both.

Pix of the vise screw I mentioned can be found on my web page in the sig  
below. The screw has been lengthened another 6", and the nuts simplified  
a bit putting two more threads in the nut/screw engagement. The threads  
are two start, so both half nuts are identical. 2 start means they are  
twice as fast, closing the vise at 12mm per turn. I wrote the g-code  
that carves that screw. OpenSCAD helped me design the rest of it.

> What is a “woodworkers vise screw assembly”? I did a Google search on it  
> and didn’t find anything that seemed that exotic or complex.

Chuckle, that tells me I’ve iptables rules that kill the bots.  
At one point 5 years ago when my web page had a lot more stuff, and I  
had a 10 meg hookup, they were mirroring my site several times daily and  
burning up all my upload bandwidth, people I wanted to serve couldn’t  
get a byte in sideways. I called a halt to that when my cable bill  
showed I had used 20g down and 750g up in a month.

> In any case, I was expecting that to program the Robin Nano’s, you’d put  
> your printer on its side/top and pull out the controller enough that you  
> can still power it from the printer’s supply when you load the Klipper  
> firmware on them.

The probability of a short blowing things up again rare’s its head. I’ve  
done it, but don’t care for it. Static grounds aren’t much good then either.

> It sounds like an interesting project - keep us posted as to your progress.

Take care, stay warm and well.

Cheers, Gene Heskett.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 5, 2023, 5:19am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/9 "2023-01-05T05:19:38Z")

</div>

So I bought 3 of the high voltage octopus, and w/o a working printer, I bought a Two Trees SP-5 Plus, big enough to make parts for the other dead but even bigger printers.

Background on those 2  
Ender 5 Plus:  
Failed the PETG test in a couple days, stock head isn’t able to stand the heat.  
Made a new carriage on a prusa, out of PETG+CF, but the E6 was doomed from the gitgo, factory installed heat break put in way too tight, stripping the hot block threads, so it leaked, I spent another $475 putting a new head kit from slice in it, but it only lasted a month before the Mosquito started leaking like a colander. But it let me make a new carriage for the ender5+ and it ran fine for about a moth with a new Creality Spider hot and and an orbiter2 on top of it. But the Spider fan kept picking up debris from the bad, eventually jamming the spider fan, which in turn let the heat telegraph up and destroyed my carriage.

So I bought a 2 trees Sapphire 5 plus. which with a bowden tube froze up daily, but worked well till I broke a wire off the x home switch while cleaning up a freeze-up. I plugged my $200 soldering station into the same ups the Sp-5 was on, but the static grounds must not be kosher as I blew the MKS\_Robin\_Nano\_1.2 board resoldering the switch.  
So I ordered what I thought was 3 of those boards from amazon, but they shipped me 3 of the nano\_v3.1 boards, same physical size but huge diffs between the 1.2 and the 3.1 boards.  
I’ve been playing with Marlin for a month trying to get a configuration that work with the newer board and its TMC2209 drivers but the closest I come to working is the use of random numbers under the default 16 for microstepping. So it moves too far, too fast, and 90% of the time not by COREXY rules.

tronxy-400-plus: came with a broken Marlin that despite what you set for z offset, insisted on spitting out plastic 5mm above the bed, so its never printed anything.

So now I’ve collected some carbon fiber tube and replaced the puny y motor that was always loosing home, with a  
1NM nema-23 3 phase stepper/servo driving the right rear end of a 25mm dia cf tube linking the two Y belts. Half the reason I bought 3 of the MKS boards was the fact they have separate headers for gnd,en,step,dir so I can plug them directly into the bigger, higher voltage stepper/servo’s which is what I intend to do on both the big Ender and the tronxy, after I put the X bars on a CF diet with linear bearings. The octopus higher voltage version does not have this pinout available so you have to remove the drivers and get those signals from the adaptor in the driver socket.

I have a years experience with 4 of those type motors as they move my 80 yo Sheldon 11x54 lathe, making it do tricks that weren’t even a footnote on the menu when it was shipped to the navy 80 years ago. Thats 2 of them, 2 more run the Z and B drive on a 6040 mill I threw away all the electronics of and made new stuff that Just Works. Those new drives are amazing, they will get to where they were asked to go, or shut down linuxcnc in about 1 millisecond.

So, without a working printer, I am dead in the water. So I bought a voron trident a week ago but it will be another 2 weeks or more getting here. Here in the states, Fedex is just about toast. Some plates for the prusa just spent 2 months in Fedex’s Memphis TN terminal.

Among other things it comes with klipper. I got klipper on one of the bpi5’s, replacing the outrageously priced rpi4b, and doing everything I’ve asked, except flash the nano boards which I find later have never been flashable with dfu.

So that’s where I’m at, and I need pointers to download the configs for this later, version 3.1 Robin Nano board which does not exist in your configs listing, nor does the high voltage octopus, so I need a regular XYZ for the ender, and COREXY for the tronxy, ideally for both boards. And hopefully Makefiles with a make u-sd image option the MKS boards use to update themselves. The BTT boards I assume can be updated with dfu.

I’m also a firm enforcer of TANSTAAFL, so success at restoring these printers will be rewarded with a nice donation.

Can you help with updated configs for these two boards?

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [January 5, 2023, 7:56am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/10 "2023-01-05T07:56:21Z")

</div>

Can you summarize in two sentences:

- What is the issue
- What is the error message
- Show console output
- Attach a klippy.log

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 5, 2023, 12:47pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/11 "2023-01-05T12:47:57Z")

</div>

> [Sineos] Sineos [https://klipper.discourse.group/u/sineos](https://klipper.discourse.group/u/sineos)  
> January 5
> 
> Can you summarize in two sentences:
> 
> - What is the issue

outdated card database, no example configs for an MKS\_Robin\_nano\_3.1  
whose pin file is different from the earlier V1.2 cards and no examples  
for the high voltage BTT\_octopus I also have no clue what board is in  
the tronxy’s but eventually it will have an octopus but I have to find a  
compatible display. What is it has their own part # in very very fine  
print and my camera won’t focus close enough to take a readable pix. So  
if I can find a display the works with the octopus, that is not a  
problem I cannot solve.

> - What is the error message

it doesn’t install, never will, none of the MKS\_Robin\_nano;s have ever  
been able to do a dfu install. They all need a specially named .bin  
file on an u-sd as they are powered up,

> - Show console output  
> gene@bpi51:~/src/klipper$ cat make.log  
> Creating symbolic link out/board  
> Building out/autoconf.h  
> Compiling out/src/sched.o  
> Compiling out/src/command.o  
> Compiling out/src/basecmd.o  
> Compiling out/src/debugcmds.o  
> Compiling out/src/initial\_pins.o  
> Compiling out/src/gpiocmds.o  
> Compiling out/src/stepper.o  
> Compiling out/src/endstop.o  
> Compiling out/src/trsync.o  
> Compiling out/src/adccmds.o  
> Compiling out/src/spicmds.o  
> Compiling out/src/thermocouple.o  
> Compiling out/src/i2ccmds.o  
> Compiling out/src/pwmcmds.o  
> Compiling out/src/spi\_software.o  
> Compiling out/src/sensor\_adxl345.o  
> Compiling out/src/sensor\_angle.o  
> Compiling out/src/sensor\_mpu9250.o  
> Compiling out/src/lcd\_st7920.o  
> Compiling out/src/lcd\_hd44780.o  
> Compiling out/src/buttons.o  
> Compiling out/src/tmcuart.o  
> Compiling out/src/neopixel.o  
> Compiling out/src/pulse\_counter.o  
> Compiling out/src/stm32/watchdog.o  
> Compiling out/src/stm32/gpio.o  
> Compiling out/src/stm32/clockline.o  
> Compiling out/src/stm32/dfu\_reboot.o  
> Compiling out/src/generic/crc16\_ccitt.o  
> Compiling out/src/generic/armcm\_boot.o  
> Compiling out/src/generic/armcm\_irq.o  
> Compiling out/src/generic/armcm\_reset.o  
> Compiling out/src/…/lib/stm32f4/system\_stm32f4xx.o  
> Compiling out/src/stm32/stm32f4.o  
> Compiling out/src/generic/armcm\_timer.o  
> Compiling out/src/stm32/gpioperiph.o  
> Compiling out/src/stm32/adc.o  
> Compiling out/src/stm32/i2c.o  
> Compiling out/src/stm32/spi.o  
> Compiling out/src/stm32/usbotg.o  
> Compiling out/src/stm32/chipid.o  
> Compiling out/src/generic/usb\_cdc.o  
> Compiling out/src/stm32/hard\_pwm.o  
> Building out/compile\_time\_request.o  
> Version: v0.11.0-41-g9b60daf6  
> Preprocessing out/src/generic/armcm\_link.ld  
> Linking out/klipper.elf  
> Creating hex file out/klipper.bin  
> gene@bpi51:~/src/klipper$

> - Attach a klippy.log

No klippy.log made, never ran on the bpi5, no install, no help to tell  
me how to run it on the pi, flash.log I created attached, no errors  
logged. It fails to talk to the board, and I found out later no  
Robin\_nano board can be updated with dfu. They need a file named  
Robin\_nano\_v3.bin on an u-sd card, insert card and power up. That works  
fine for marlin. So other than compiling it, I have no clue how to run  
it on the bananapi m5. No clues in a make --help.

Another fuss, all your docs are on the web page, and unprintable on a  
letter sized printer, the right 50 characters are clipped off in the  
printout. Your site is one of the few I can’t print the needed pages  
from. Some sites have a printer ready button that reformats the pages in  
printable form, some even skipping the commercials. Yours is not so equipt.

Take care & stay warm and well, Sineos.

Cheers, Gene Heskett.

(Attachment klipper-flash is missing)

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [January 5, 2023, 1:10pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/12 "2023-01-05T13:10:02Z")

</div>

```auto
# This file contains common pin mappings for MKS Robin Nano V3
# boards. To use this config, the firmware should be compiled for the
# stm32f407. When running "make menuconfig", select the 48KiB
# bootloader, and enable "USB for communication".
# The "make flash" command does not work on the MKS Robin. Instead,
# after running "make", copy the generated "out/klipper.bin" file to a
# file named "Robin_nano_v3.bin" on an SD card and then restart the
# MKS Robin with that SD card.

```

`make menuconfig`:

- stm32f407
- 48KiB bootloader
- Communication interface **USB**
- Rename `klipper.bin` to `Robin_nano_v3.bin`, copy to the SD card, reboot the board

See:

- [Klipper-for-MKS-Boards/generic-mks-robin-nano-v3.cfg at main · makerbase-mks/Klipper-for-MKS-Boards · GitHub](https://github.com/makerbase-mks/Klipper-for-MKS-Boards/blob/main/MKS%20Robin%20Nano%20V3.x/generic-mks-robin-nano-v3.cfg)
- [MKS-Robin-Nano-V3.X/MKS Robin Nano V3.1\_001 PIN.pdf at main · makerbase-mks/MKS-Robin-Nano-V3.X · GitHub](https://github.com/makerbase-mks/MKS-Robin-Nano-V3.X/blob/main/hardware/MKS%20Robin%20Nano%20V3.1_001/MKS%20Robin%20Nano%20V3.1_001%20PIN.pdf)

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 5, 2023, 5:51pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/13 "2023-01-05T17:51:58Z")

</div>

Got the latest although the page has no download button.  
Configured it, Built, Installed on the Sapphire 5 plus, but octoprint  
can’t communicate with it. Apparently does not support the MKS TS35  
display as it stuck on update completed.

Whats next? Obviously the bpi5 needs to be running something besides  
octoprint. Whatever runs on the rpi4, should run just fine on the bpi5  
except it has all 4 USB ports as usb-3’s. And its slightly faster,  
running the xfce4 branch of the latest armbian. 2 gigs of dram +emmc but  
no emmc installed.  
2 things I still need

first being the jumper settings under the TCM2209’s when on this V3.1  
board?.  
second, I found the docs which raises a question or 3.

1. dd as an imager isn’t available for arm stuff, replaced by ddpt, an  
improved version which from reading its man page, can be used like dd.
2. your build scripts seem to be rpi exclusive, will they build  
something from the armbian image or will it exit?
3. the images in the Octopi-devel.zip I will see if they run on the  
bpi5’s which I have 4 to run this 4 machine farm. That will answer #2,  
but I still have not found any TMC docs on the TMC-2209’s.

If you have a link, I’d appreciate it, a lot.

Thank you Sineos. take care, stay warm and well.

Cheers, Gene Heskett.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 6, 2023, 1:18am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/14 "2023-01-06T01:18:17Z")

</div>

I have now built the CustomOS following the directions you sent and put it on a u-sd card.  
The bpi5 does not recognize that the new card is plugged in on powerup. The old card still boots up normally.  
I even ran fdisk and set the unset boot flag. Again, no recognition of the card, no blink of the bright green led that I think is the drive activity led.

Next?

Thank you.

Cheers, Gene

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [January 6, 2023, 8:59am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/15 "2023-01-06T08:59:09Z")

</div>

Oh, wow. You really manage to confuse me to 120% with your posts. 🤯

My instruction above relate to building and flashing the firmware for a Robin Nano 3.1 and has absolutely nothing to do with BPi 5.

Can we agree to discuss only one issue per post and have this finished before switching to the next one?

Generally speaking:

- BPi 5 is fine
- Armbian is fine (the Klipper install scripts expect some Ubuntu / Debian like environment)
- Depending on the Linux flavor, the install scripts may not find one or the other apt package. Closely watch the output of the process for any errors. Try [install-debian.sh](https://github.com/Klipper3d/klipper/blob/master/scripts/install-debian.sh)
- XFCE or any other Desktop is not needed for Klipper. You can use it, if you feel more comfortable with a mouse than with the shell

> [@gene1934](#):
>
> first being the jumper settings under the TCM2209’s when on this V3.1  
> board?.

Check the backside of your board. Should look like this

 ![image](https://global.discourse-cdn.com/free1/uploads/klipper/original/2X/e/e2450a5ed40fa4fa5065e454d52768d7fd26f91f.jpeg)

For TMC2209 set the jumper of each driver slot according to the red marked setting.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 6, 2023, 1:17pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/16 "2023-01-06T13:17:49Z")

</div>

That is how its presently jumpered. The bpi5 comes into the picture  
because its running octoprint. I am also building klipper on the bpi5,  
running the latest armbian, preparing a u-sd card, which when installed  
in the printer, seem to go thru the erase, reprogram routine, shown on  
the printers display but the display is not being updated after that,  
not even cleared, but a power cycle blanks the display with nothing  
after that. No blinking leds as it inits the board, nothing.

Like the display driver is missing. motors are off, no other activity  
after the power cycle. So how do I verify kilpper is running? Display  
is an MKS TS35 V2.0 with the encoder clipped off so it mounts where the  
original mounts. No cutout for the encoder in the printers base.

The display is an MKS TS35 V2.0

Am I supposed to have a display? Some indication that its running would  
be nice.

I have also followed the recipe to build the CustompiOS, (but it uses  
raspian, not armbian) takes about an hour on the bpi5, and made a card  
with that image on it. but plugged into the bpi5 it does not boot. So  
the bpi5 is back running armbian.  
I’ve now got that card mounted as /dev/sdd1 and /dev/sdd2 on /mnt/sdd1  
and 2, looks like a good install to me. So I can give you anything from  
it you need. But it doesn’t boot the bpi5.

Cheers, Gene Heskett.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 6, 2023, 2:57pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/17 "2023-01-06T14:57:01Z")

</div>

Additional info: even though the printer is dark, no display, it does  
beep about 1/2 second after powerup, and an ls /dev/serial/by-id/\*  
produces this:

```auto
/dev/serial/by-id/usb-Klipper_stm32f407xx_56003F000450465731373320-if00
So I guess its running. Now, how do I talk to it? There is no
/home/me/printer.cfg, and there is a /tmp/klippy.log complaining about it:
Starting Klippy...
Args: ['/home/gene/src/klipper/klippy/klippy.py', 
'/home/gene/printer.cfg', '-l', '/tmp/klippy.log']
Git version: 'v0.11.0-41-g9b60daf6'
CPU: 4 core ARMv8 Processor rev 0 (v8l)
Python: '2.7.18 (default, Jul 14 2021, 08:11:37) \n[GCC 10.2.1 20210110]'
Start printer at Thu Jan 5 18:17:06 2023 (1672960626.9 13.8)
Unable to open config file /home/gene/printer.cfg
Traceback (most recent call last):
   File "/home/gene/src/klipper/klippy/configfile.py", line 154, in 
_read_config_file
     f = open(filename, 'r')
IOError: [Errno 2] No such file or directory: '/home/gene/printer.cfg'
Config error
Traceback (most recent call last):
   File "/home/gene/src/klipper/klippy/klippy.py", line 175, in _connect
     self._read_config()
   File "/home/gene/src/klipper/klippy/klippy.py", line 134, in _read_config
     config = pconfig.read_main_config()
   File "/home/gene/src/klipper/klippy/configfile.py", line 275, in 
read_main_config
     data = self._read_config_file(filename)
   File "/home/gene/src/klipper/klippy/configfile.py", line 160, in 
_read_config_file
     raise error(msg)
Error: Unable to open config file /home/gene/printer.cfg

```

Does this help?

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [January 6, 2023, 3:10pm UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/18 "2023-01-06T15:10:24Z")

</div>

First, please stop these senseless full quotes. Second, what would you think about about following [Installation - Klipper documentation](https://www.klipper3d.org/Installation.html)?  
I know, it’s kind of a radical concept but may help in fact.

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 7, 2023, 1:43am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/19 "2023-01-07T01:43:21Z")

</div>

I have now followed those instructs and although the printer has nothing on its display, klipper is now installed and running on the bpi5, /tmp/printer and octoprint have a connection octoprint says is operational. But the terminal in octoprint say it cannot talk to the the printer.

Where are you, so I can better synchronize our working times? I’m alone now, my wife passed 2 years ago, so I’m not disturbing anyone but me if I change my schedule.

I do not see an attach function using the discoarse web method, so here is the initiate connection to /tmp/printer at 250 kilobaud, and the octoprint log from that and a g28 command sent:

Changing monitoring state from “Opening serial connection” to “Connecting”  
Connected to: Serial\<id=0xffff8cd657c0, open=True\>(port=‘/tmp/printer’, baudrate=250000, bytesize=8, parity=‘N’, stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor  
Send: N0 M110 N0_125  
Recv: ok  
Send: N0 M110 N0_125  
Changing monitoring state from “Connecting” to “Operational”  
Recv: ok  
Send: N0 M110 N0_125  
Recv: ok  
Send: N1 M115_39  
Recv: ok FIRMWARE\_VERSION:v0.11.0-41-g9b60daf6 FIRMWARE\_NAME:Klipper  
Send: M21  
Recv: ok  
[…]  
Send: G28  
Recv: // mcu ‘mcu’: Unable to connect  
Recv: // Once the underlying issue is corrected, use the  
Recv: // “FIRMWARE\_RESTART” command to reset the firmware, reload the  
Recv: // config, and restart the host software.  
Recv: // Error configuring printer  
Recv: !! mcu ‘mcu’: Unable to connect  
Recv: ok

what can you determine from this?

Thank you, Sineos. Take care and stay well

---

<div class="post-metadata">

**Author:** ![gene1934](https://avatars.discourse-cdn.com/v4/letter/g/3d9bf3/32.png) [@gene1934](https://klipper.discourse.group/u/gene1934)\
**Post date:** [January 7, 2023, 2:25am UTC](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579/20 "2023-01-07T02:25:31Z")

</div>

I just found the first mitake, the serial number in the long by-id of the port as all zeros in the printer.cfg. I change that to match what an ls /dev/serial/by-id/\* showed me, and restarted klipper on the bpi5. Now a recoonect followed by the g28 still does nothing in the move a motor category, but responds now that a 'limit switch is still triggered after a clearance move. Wash, rinse repeat. G28 now moves x only about 5mm to right and still reports x endstop still triggered after retract.

That tells me the pin # is wrong, or the ! is wrong. Change it in printer.cfg. wash rinse restart klipper. Send a g28 x and it homed x just fine.

So now the same with y.  
Z2 i expect to be a problem as it is not defined in-printer.cfg, so I can overload driver #3 by moving the motor cable to the 4th connector which is paralleled with the 3rd motor connector on this 3.1 board, the 1.2 board, steals the ejector 1 socket to drive Z2. This one still does in Marlin, but z2 is not defined in this printer.cfg.  
Progress, maybe.

Take care and stay well Sineos, and thank you

[Next page](https://klipper.discourse.group/t/makerbase-robin-nano-3-1-wont-flash/5579.md?page=2)
