OctoPrint with OEM Hardware Tutorial (FlashNGo)

So you want to run octoprint on your zim, and get your zim working without ZeePro’s cloud slicer that’s gone?

This guide uses all the OEM hardware, no tools needed other than a screwdriver and a microSD card, and takes about 15 minutes end to end. No activation, no setup, just flash n’ go.

What it does

  • Latest octoprint!
  • No more need for activation, or any reliance on a defunct company. No lockdowns or limitations whatsoever.
  • Can use aftermarket filament, and can bypass the bottom feeders (you could do this anyway)

Warning
This software is provided as-is. Use at your own risk. This is still an early version, and some problems may occur. Using a raspberry pi and removing the USB port plug on the back is a more supported way of doing this. You can flash back to the stock 1.8.4 firmware.

Download
1.8.6 - https://drive.google.com/open?id=0B18Pfa0uHUrMVTdlWUdmaFlwWDQ
1.8.5 - https://drive.google.com/open?id=0B18Pfa0uHUrMemdxbS0yaWdLREE
1.8.4.4 - https://drive.google.com/open?id=0B18Pfa0uHUrMN0RxV1VKa0RPcXM
1.8.4.3 - https://drive.google.com/open?id=0B18Pfa0uHUrMdXlqNzZJOGQzQWM
1.8.4.2 - https://drive.google.com/open?id=0B18Pfa0uHUrMbW5uU05MVnFlc3M
1.8.4.1 - https://drive.google.com/open?id=0B18Pfa0uHUrMZkFCZVZiUVBLVWM
‘empty’ zim image - https://1drv.ms/u/s!AmYbjLvkPqWymDPdQoEUHunphQDn

Features
1.8.6

  • added slicer, so you can print direct from an STL. This isn’t recommended, you should upload gcode to octoprint from your own slicer, but it’s a start.
  • Fixed wifi timeout issues
  • latest version of octoprint, and now should be updatable if you go rw mode
  • removed more Zim Phone Home garbage.
  • Automatic shutdown plugin now works, and you can turn off zim from system commands.
  • removed a bunch more cruft so you have more free space
  • installed nano

1.8.5

  • temp graphs good again for both extruders
  • no more hanging prints (i hope!)
  • Requires manual RAMPS firmware update (for now). This is optional, but if you want temp graphs working, should probably do it.

1.8.4.4

  • Fixed intermittent timeout issue
  • Made wifi setup a bit more consistent
  • turned off zim’s attempts to phone home
  • turned off slic3r
  • temp graphs now broken :confused:

1.8.4.3

  • simplified WiFi setup more!
  • bypassed old checks in webpage
  • custom zimshare logo
  • fixed m84 timeout
  • other default scripts fixing
  • fixed time-lapse

1.8.4.2

  • updated the zim UI to link to octoprint and remove unnecessary cruft
  • installed ntp if zim loses time
  • updated octoprint config

1.8.4.1

  • Octoprint 1.2.17
  • jpods 1.1.0.20 Marlin firmware installed automatically
  • No more activation!
  • Custom Control plugin with leveling and spool loading macros setup
  • Printerstats plugin
  • Cost plugin
  • Camera works out of the box
  • zeepro logo in temp BG image
  • Zim printer profile set up
  • Light turns on automatically on print, and other common gcodes set up

Known Issues

  • The default cura slicer settings may not be optimal.

Instructions

  1. Turn off the printer

  2. Remove the black cover at the rear. It’s connected by 2 philips screws.

  3. Remove the small microSD card in the rear lefthand board, and set it aside.

  4. Taking a different microSD card (4GB+), insert it into your computer

  5. Flash the EZ image onto the card. It will erase all existing files.
    Windows Users:
    http://sourceforge.net/projects/win32diskimager/files/latest/download
    Mac users:
    http://www.tweaking4all.com/hardware/raspberry-pi/macosx-apple-pi-baker/

  6. Put the card into your zim.

  7. Turn it on, wait until the flashing stops. This takes about 7 minutes or so.

  8. Turn off printer.

  9. Remove the card, and put the old card back in.

  10. Boot it up

At this point, if you have an ethernet cable connected to your zim, that should be it! try going to http://zim.local.

If you want to have the zim use wifi, please unplug any ethernet cables, and look for a wifi access point called “Zim_Initialization_XXXX” and connect to it.

  1. Go to http://10.0.0.1

  2. Click on ‘Set Wifi’ (it may automatically take you to the wifi page)

  3. Follow the instructions to setup your wifi.

  4. When the page refreshes (it will disconnect you from the zim_init wifi point, and back on normal network, if not, connect to local network and try zim.local. If you get errors, try refreshing manually after giving it a minute), click ‘Octoprint’

  5. user= “zim” password = “zim”

Update Firmware
As of 1.8.5, you’ll need to manually trigger Marlin/RAMPs firmware update. Maybe soon I’ll fix it, but its a pain.
If you’re on windows, get PuTTY, its free, else if OSX/linux, just use the terminal. If your temps aren’t showing correctly, or your prints pause mid print, do this step!
To verify which firmware you’re on, run gcode M1400 (the latest is 1.1.0.22)

  1. ssh to the box (ssh root@zim.local, user: root, pass: Longgang2014)
  2. Make sure octoprint is disconnected!
  3. run “/usr/bin/fw-upgraded.sh”
  4. That’s it! It’ll blink and stuff, and should say successful! Verify with Octoprint, run M1400, it should say 1.1.0.22

You should be good to go!

Troubleshooting & Tips

  • If octoprint has issues, wait 1 minute and refresh the page. It is sometimes slow to startup.
  • If you do see any weird network errors, try using ‘Reset Networking’ and reconnect to the Zim_Initialization wifi and try again. The zim can be flakey.
  • In the future, access octoprint directly http://zim.local:5000
  • you can ssh to the box with root/Longgang2014 if you wish.
  • I’d advise changing the passwords for octoprint as well.
  • if you do need to install plugins or update octoprint, the zim defaults to RO filesystem for safety. SSH into the zim, and run “rw”, and then try updating octoprint or installing plugins. In the future, we’ll get this working from the ‘system’ dropdown.

Next Steps
After you’ve printed a few things, there’s some common mods to address other shortcomings of the zim.

  • By default the zim’s fan can be a little too aggressive, and mess up the temp settings. This is a known issue no matter which way you go to set it up. Change the fans, or do some of the other mods around the forum.
  • Top feeding of filament and disabling the bottom steppers for better feeding and more elegant use of normal filament spools. Remember if you disconnect bottom steppers, you’ll need to adjust the DRV8825 voltage, or just leave them connected, but not moving filament.
  • Changing of the blower fans for reduced noise and more appropriate cooling, or taping off the left/right blowers
  • TMC2100 drivers will quiet down the stepper noise, but require soldering ability and updated firmware. You can get the zim very quiet.

Check around on the forum for these and other good tips.

Thanks to
@jpod
@Jaesin
@scientsit434
@BDub
@driph
and others! All the folks who gave feedback while this was still teething, I appreciate it!

5 Likes

But with raspberry pi u can have filament sensor https://github.com/MoonshineSG/OctoPrint-Filament plus you can access it remotely. I do think raspberry is still better.

Not sure what you mean? There’s nothing special about a pi that enables it to be accessed remotely. The cubie board has GPIO if you want to install other accessories, which should make that plugin work. I haven’t tried it yet, but thanks for the link!

if you think its worth it to go the pi route, that’s cool!, I’m just presenting another option. The pi may well be better for your usecase. This one just happens to be free and doesn’t require removing the USB plug.

Thanks for posting this, really solid write up, If I can find the time I’ll give this a shot and let you know how it goes.

Thanks @waffles I’ll give a try soon. What you mean with the step 13? Connect the printer via cable lan? Also the Marlin firmware is installed in the zip motherboard or the A10? Thanks again for the work.

Step 13 is just like the original setup.
https://zeeproks.freshdesk.com/support/solutions/articles/5000050243-how-to-connect-zim-to
You’re just setting up the wifi, so it can connect to your wifi. until then, it creates its own hotspot that you connect to.

The marlin firmware installs to the board in the right side. The A10 connects to it and updates it for you, since its already connected to it.

Ok, great. Did you include the load an unload filament add on that jpods made? Also, I am having problems loading the filament and I don’t know what is happening. With your installation the bottom loading steppers work?

Yes the load/unload from jpod are there. If you are running from bottom, you do have to run it 3/4 times to feed it the long distance. And the bpttom steppers still work. If theres any helpful controls im missing, please let me know!

I did notice that the reboot/shutdown commands from octoprint don’t work, but no real problem… Next version.

@waffles I’ve tried your solution, twice. I’m unable to see the zim_initialization wifi point in my list of networks to connect to. So, steps 14, 15, and 16 are inaccessible. typing “http://zim.local” results in the ZeeProShare unexpected error occurred web page. Pressing “Back to Homepage” give me an “Error loading Page” message.

Typing “http://zim.local:5000” results in the Octoprint page coming up, but I’m unable to login. Also, there are no menu items for Settings or System. There doesn’t appear to be camera support either (no “Timelapse” tab).

@waffles Yesterday I use your software and it works great. Well, I am a noob so now I having trouble loading the filament and I think I made a huge mistake. I am thinking in modding the filament part so I can fill it on the top. What will happen with the bottom steppers ones I disconnect them or can I leave them connected so I don’t have to mod the motherboard voltages like jpods suggest?

Thanks for the great work.

@jmrobert48 - Sorry to hear you had trouble with it. I see now that sometimes the zim does remember your wifi connection so steps 14-16 need updating. I’ll update them now.

If you go to zim.local:5000, and see octoprint, then it was successful. You will only see settings/system if you log in for security reasons. The camera shows up on the ‘control’ tab. It sounds like there’s another camera view. I did not set up ffmpeg for recording video, as its not a feature I used, but I can see how it’d be useful. I’ll add that to list of stuff for v2 in upcoming days. Thanks for the feedback!

So, you said that you cannot log in with user=zim pass=zim ? What is the error? Please try refreshing the page, octoprint takes awhile to load up sometimes, and when its in process of loading, sometimes you get garbled pages (this will happen on any octoprint install if you hit it at the wrong time)

I will get this sorted out, it is a first edition, so some things are expected. I hope it hasn’t caused too much grief.

@maxx - Glad it worked for you at least. You should consider modifying the filament. If you disconnect them, you will need to change the pots for voltage per jpod, but if you leave them connected, it’s fine without mod.

The filament loading helper is under Control | Filament, there’s load/unload in there. If you are feeding from bottom, you may have to run it 3/4 times, since its a long path, and the button was made for top loading. I can probably add toploading and bottomloading buttons so its more clear.

if you hear the steppers going when you hit that button, it’s likely working, just slowing moving up to the top.

@waffles Thanks for your suggestions. I shutdown for awhile, then booted. At that point everything seems to be working except WIFI. Any suggestion for that? I never see zim_initialiaztion_??? in my list of networks. Should I edit the /etc/network/interfaces file, or the /config/local/net/interfaces, or …? Thanks so much for your help and for sharing your work. I really appreciate it!

@jmrobert48 - glad it works!

Can you describe your setup? Are you using an ethernet cable to the zim right now?

The zim_initialization is a wifi point just so you can setup your zim’s wifi connection.

When I flashed my zim, I had it connected to nothing, flashed it, rebooted it, and when it starts up, I see the zim_init…
then i connect to it and tell it my regular wifi name and password, then it connects to my home wifi and the zim_initialization goes away.

This is the same steps as mentioned in the manual if you still have that kicking around.

If the zim is connected via a cable, I am not sure what it does. It might just see that it can connect to your network, and ignore setting up wifi.

@waffles Thanks again. Yes, I’m connected via ethernet cable. I disconnected the cable, and the zim_initialization network showed up. I connected to that network and received the page requesting my essid, followed by the password page. After entering the required data, and rebooting, I’m still not connected via WIFI (zim.local doesn’t get me to Octoprint). I get “Server not found” message, I do however get the web page with “Models by Zeepro”, “Import a Model”, etc.

Sounds like its working better. remember that http://zim.Local is the zim page and http://zim.local:5000 is octoprint.

They run on different ports. I can make it a bit more integrated and add link between them. One thing i noticed. If you find zim.local has errors, make sure you disconnect from octoprint. They interfere on the socket i think. Ideally id shut off the normal webpage, but id have to add wifi setup to octoprint.

Ok, so I finally printed my first object… the feeling is amazing no matter if the test went wrong :slight_smile: So I printed the cube test (20mm cube) but I have 2 problems. The final cube is doesn’t measure 20mm x 20mm but 20mm x 18mm and I don’t know why. I am using Simplify3D with no change in scale. Also I had a problem with the temperature, It “dropped” for a few seconds and the print stop and then it started again. Why? I don’t know.

@maxx - as for dimensional accuracy, I’ll leave that to others, that’s weird.

For the pausing issue. It could be one of a few things. I’ve seen it happen once or twice on large prints, but not on small ones. The printer pauses for 60 seconds, the fan goes off, then 30 sec after that, printing resumes? These are exact numbers.

My theory is that its either something in the firmware/octoprint times out, and I’ve seen later marlin has patches for that
or, its something to do with the extra timeout I set in the
; M84 S600 ; extend out the inactivity timeout
in gcode scripts in octoprint
Or, the existing Zim software is waking up every so often and messes with the serial connection.

I’m aware of the issue (if that matches what you’re seeing) and I’m trying to isolate it. However, it’s fairly benign, it does always eventually restart, and seldom causes dripping/oozing. Hopefully it didnt happen in your print where i can see the 2 zits and skipped row? I think the pausing issue is my fault somewhere in configuration, rather than a cubie board issue.

When pausing occurs on mine, the temp doesn’t drop out like your pic. Are you using one of the simplify profiles from this forum? Maybe start another thread and post your simplify settings so folks more knowledgable can diagnose.

But, congrats on your first print! I do note that your setup is setting both hot ends to hit temp, and it should just be the active one, so i’d check that first.

@waffles I have 2 different scenarios.
Without ethernet cable:
zim_initialization shows up in the wireless networks
I’m able to connect to it and go to 10.0.0.1
My network ssid is displayed, I select it and get the password page.
I put in the password for my network and get the “Models by Zeepro”, “Import a Model”, etc page.
Using Advanced IP Scanner, the zim IP isn’t displayed.
Can’t go to zim.local:5000 (Octoprint)

With ethernet cable:
zim_initialization doesn’t show up.
Can’t setup WIFI.
Can connect to zim.local:5000 (Ocotprint)

Really would like WIFI as the location I have planned for the zim isn’t near an ethernet port.

@jmrobert48 - Ah. Ok,
seems like the wifi connection is being dumb.
Can you try http://10.0.0.1:5000 when you are doing the wireless thing? (just to verify)

After you put in your network password, it’s supposed to say ‘the zim is rebooting’ but it sounds like it is not doing that, so it may still be on the adhoc network.

This old zim webpage is annoying. Since the only reason we need it right now is for the wifi setup, it might be easier to just get that setup available in octoprint, as long as when you are on the zim_init wifi that the http://10.0.0.1:5000 is available. Thanks for helping me make this better for otherrs! I appreciate the help.

Connecting to zim_initialization, then to 10.0.0.1:5000 gets me to the Octoprint page. However the login (zim/zim) doesn’t log me in.

Thanks for all Your effort. I wouldn’t be this close without your effort and sharing.