I'd try using Repetier Host first. It's free and easy to setup to control the MPSM. I use it to pass GCode commands to them during tuning and repairs, but I still use Cura for slicing. You can download Repetier Host [HERE]
I have a tiny MicroSD>USB adapter that I include when sending out repaired/renewed MPSMs... happy to send you one (free for you) if you're in the US. Just message me your name and mailing info!
The app that I use for setting the IP address is by Malyan and works great. You can grab it from my shared folder [HERE]
-David
Try repetier host for control. You'll use Cuts for producing gcode and repetier for sending the print. https://www.repetier.com/
Or you can get a Raspberry Pi and Octopi. Much more convenient, but might be a bit more technical in getting set up.
The Repetier Firmware Configuration Tool has served me well in the past: https://www.repetier.com/firmware/v092/
Yes
Yes, I've built system that run even bigger hybrid NEMA34 steppers off of a RUMBA. Motor size is inconsequential with the right driver. (http://www.leadshineusa.com/productdetail.aspx?type=products&category=easy-servo-products&producttype=easy-servo-motors&series=ES-MH&series=ES-MH&model=ES-MH23480)
Yes, see above
I'm of the opinion that any step size gains from a geared head would be lost in the imprecision of the remainder of the axis motion system. That said, gearing would allow you to retain higher feedrates at similar precision to an un-geared system, as you could avoid the diminishing returns found in microstepping.
You can do better. 8-bit control systems are starting to show their age at this point, so if you're building something from scratch this would be a good time to learn a new platform, either by building to a 32-bit platform or offloading the motion control and path planning to a heftier CPU and letting the RAMPS just do pulses and timing.
> I downloaded the Arduino IDE and added the Sanguino/ATMega1284 (not sure if that’s the exact name, I’m away from my computer) board which is supposed to be able to communicate with a Melzi.
Sounds good so far.
>I downloaded the supposed default wanhao i3 repetitier firmware and tried compiling it in the IDE but I’m getting error messages saying that the code is too big to compile, pretty late in to the compiling process.
What did you download? There isn't an official Wanhao i3 firmware release, and if you download one made for the RAMPS or any other board upgrade that people generally do, you do have to disable some features as the Melzi (ATMega1284) doesn't have much storage space compared to the RAMPS (ATMega2560), which is why ArduinoIDE will give you an error at the end. After it's done compiling when it checks that the filesize is too big for the processor. I like to disable arc support since I don't know any slicer that really uses that.
>I was hesitant to generate a whole brand new Repetier firmware because I don’t think I know enough about what each setting means or should look like
https://www.repetier.com/firmware/v100/index.php the configurator does have pretty good descriptions on things.
>I’m also unsure about this process if I decide to swap to Marlin, even though marlin seems better documented.
I haven't even picked which one I like more yet. I've got a printer on Marlin, and printer on Repetier.
Repetier has pretty good documentation on how to autolevel Delta printers with a probe. Some commands may be different, but the workflow should be mostly identical:
https://www.repetier.com/documentation/repetier-firmware/z-probing/
Delta radius is not the radius of your bed. Here's an illustration showing where to measure delta radius: https://www.repetier.com/firmware/v092/images/deltacolumnnames2.png . The cupping effect is most likely a combination of incorrect delta radius and rod length. Changing it will help, but I recommend entering your exact rod length in repetier host and then using the calculator with the options I suggested. It will give you the exact Delta radius you need, along with endstop corrections and z-height, which you can then input to Repetier host. After that, you'll be good to go.
> I accidentally connected two pins on an endstop with one of the probes, frying my third arduino
Of course I meant checking with the power off (or checking the switches unplugged), otherwise you risk blowing up your microcrontroller. Sorry man, I thought it was obvious. :-/
You seem to be using Repetier, is there any reason you are not using the online configurator?
From what I can gather with the image, you should do something similar to this:
#define MIN_HARDWARE_ENDSTOP_X true #define MIN_HARDWARE_ENDSTOP_Y true #define MAX_HARDWARE_ENDSTOP_X false #define MAX_HARDWARE_ENDSTOP_Y false
...to activate the min endstops. As far as homing is concerned, you'll surely want to put X_HOME_DIR
to -1
and Y_HOME_DIR
to -1
as well. That tells the firmware to home to XMIN and YMIN. Of course this assumes that is what you want.
Once that is done and M119 works, THEN move on to fixing the motor direction. If homing goes in the wrong direction, then invert both X and Y motors. If moving X or Y separately both moves in the same direction, you reversed one motor and not the other. Put them both the same, on the board and in the firmware.
Until homing works you can't know if the motors move in the right direction or not. And homing will never work until M119
works.
The webpage hasn't really been implemented. You need another piece of software like https://www.repetier.com/ to use it.
I didn't have any luck getting it setup to work reliably. I just use the SD Card.
Yeah, though I'd say it'd be better to order it from Amazon, or somewhere else with a decent returns policy, as cheap printer boards can be something of a minefield. As far as your screen goes, you could always port your firmware over to Repetier and continue to use it, as Repetier supports just about every LCD controller under the sun.
Also with repetier firmware you need to change the EEPROM set you use if you re-upload the firmware
>If you enable eeprom, you can change the most important parameter after installation over the host. Please be aware that the eeprom values overwrite settings in Configuration.h! To overwrite exiting settings select a different eeprom set.
Even though you fixed it, just something to keep in mind should you re-flash it, the eeprom values will override the configuration.h settings if you leave it on the same eeprom set.
https://www.repetier.com/firmware/v092/ See the note in the general tab (which is the same text I quoted here)
Imo, Repetier is easier to setup, use a web tool (so no software update needed for users and always get the latest version (stable or not)).
Upgrading is easier too, give the configuration.h file and you are good to go.
I was using Marlin in my i3v and in my Delta and switched both to repetier, I'm never going back.
What I do is get all the config from marlin up in the repetier config tool, download the firmware and test it, that's the longest part, but if everything was set up correctly in Marlin it will make next steps easier and probably not needed.
Then edit the eeprom if needed and once everything is setup correctly I set all the new values in the tool to get my clean firmware.
Save the configuration.h anywhere where you will get it back easily if needed and you are good to go if there is any update.
Current stable is 0.92.9 but dev is working well too.
Config tool is available on their website : https://www.repetier.com/firmware/v092/
Besides just acceleration a high jerk setting can cause a lot of unwanted vibrations. Jerk is the instantaneous change in direction setting. I typically run my i3 clone with an XY jerk setting of 12mm/sec whereas the default is 20mm/sec. Repetier has a good explanation of jerk settings and what a higher vs lower jerk produces:
https://www.repetier.com/documentation/repetier-firmware/rf-installation/
Have you run a pid tune?
Download repetier
Connect usb to pc
Ensure you can control printer via usb
[Follow this guide] https://youtu.be/h9Rdid-T-Gw)
There is Repetier Host that you could try. I think MatterControl might be suitable as well, but I am not sure.
Ok some progress made.
First, managed to upload the marlin firmware using Arduino IDE rather than VS code... however it didnt work, no serial output, no LCD display and no command processing. There were a lot of warnings when uploading so assuming something killed it during the process.
I did however manage to upload the repitier firmware and (thanks to your help) set the correct settings for most things (steps/mm still a little out but now i know what to change).
But this puts me back to an issue in my OP with the extrudor not moving.
So for this i am using Repetier Configurator
Here is the Configuration.h i am using.
Any ideas on whats preventing the extrudor from working ?
Dude repetier-host works fine. Its free
https://www.repetier.com/download-now/
Make sure to use curaengine. Easiest setup and use. Pm me if you need help on first time setup, baud rate is a pain.
Just a small note for once you get this worked out - until you're 100% sure of your machine, you really shouldn't leave it unattended for any significant length of time. At minimum, you should make sure the first couple layers print fine before leaving it.
For printing unattended, I'd recommend you use a dedicated computer you can connect to remotely - either a standard computer running Repetier or a Raspberry Pi running Octoprint, in both cases with a webcam attached. Then, you can remote into your home network, see how the print's going, and shut it off if necessary.
It's a little extra effort, but significantly less effort than fully cleaning the hotend (as you're about to find out).
Repetier has a configuration file to set which slots control which axis and also allows slaving two together.
https://www.repetier.com/firmware/v092/
You can also slave them simply by jumpering pins 1, 7, and 8 on the two driver carriers together.
Can you connect something like Repetier and send some retract commands?
G1 E-30 F100
Will retract 30mm of filament. Send the printer that command and watch the motor and see if it goes in reverse.
that is a housing for a fan, and the nozzle. cant see what kind of fan it is or how big. hook your printer to a pc using usb and install repetier host.
https://www.repetier.com/
turn the fan on at 100% and see if it sounds like it does during printing, and if it is blowing something out. it should blow pretty good.
also remember, you are new. print slow and then work your way up to faster speeds. calibration cubes and the like. chances are its a few settings in cura that are causing you some trouble (check for fan speed min and max).
This is great advice. I personally use Repetier-Host https://www.repetier.com/. Its another slicing software, but I load my gcode from cura on to it and check to see if it looks the same. It will save headaches. Ive had the same issues as you with an Anet also. I only use this because i like the manual control interface it has to control the printer also.
is it a long board that has everything pretty much on one side? If so its a melzi, and its garbage. ramps/arduino mega are much better boards. All you need is the firmware settings, and then compile your firmware. hook it up to a pc and use repieter host to get your settings for the firmware. Wiring isnt that difficult, though it is best to get some post terminals to make install easier.
https://www.repetier.com/firmware/v092/
there is a compiler that should help you wrap your head around the basics. You can also go with Marlin, it is another good firmware that is widely used.
There are other boards out there, Rambo, smoothie, etc. Depends on how deep your pockets are.
You can open up the code in any text editor. I usually just view it through notepad. I am sure there are better programs for it, but it isn't too bad to look at in notepad.
Edit: Forgot to mention Repetier as well. This is how I run the code to my maker select. https://www.repetier.com/.
You can set in firmware where to position the extruder when you home though. I know in Repetier, you've got your probe's offset to the extruder programmed in anyways, so it knows to position the probe over 0,0 to home.
>That means, zero does not necessary mean the top of the bed.
That's actually why Repetier recommends not using a z-min endstop. See https://www.repetier.com/documentation/repetier-firmware/z-probing/
I'm still a bit unsure what you mean. You can try reading Marlin's documentation on UBL: http://marlinfw.org/docs/features/unified_bed_leveling.html
did you check the Z-prope documentation? https://www.repetier.com/documentation/repetier-firmware/z-probing/
They even have a diagram for the offsets.
Also, regarding probing outside of the bed: repetier probing on Delta's uses the RADIUS, not the diameter of the heated bed. Maybe they did something similar for the grid size.
> My thermistor died on the unmodified machine and I took it as an excuse to upgrade
Did you replace it with a legit e3d? If you did you'll have to update the firmware to use that thermistor settings, since they're different than the standard 3950 100k on the stock maker select.
As for the actual flashing firmware, you'll have to build your own firmware. https://www.youtube.com/watch?v=3gwWVFtdg-4 Has some basics on how to do it on Marlin, though you'll want Repetier if you want to keep the familar settings, but that'll still work about the same.
The biggest thing is if your current board has a bootloader or not. The bootloader allows you to upload a new firmware over USB. If it doesn't have one, you'll have to get an ICSP programmer like a UsbASP or you can use an Arduino if you have any of those.
If you have a bootloader, you won't need the extra hardware. Just grab the newest repetier configured here: https://www.repetier.com/firmware/v100/index.php (Choose Melzi for the board), and the MElzi addons for the Arduino IDE.
As you get more advanced and are comfortable playing with this stuff, might take a look at Repetier-Host.
It's NOT a Slicer, it's a control program, so it's used with a USB cable or via Repetier-Server (which is a paid program, but only $10 USD or €10). Slightly more complex to setup, but once done you can control your printer from anywhere, like OctoPrint.
To avoid some confusion here; the HOST program controls the slicers and the printer via USB. The SERVER software allows you to do it remotely, like to check a print while at work...
What I love about it is that sometimes you need to switch slicers. Repetier-Host lets you run multiple slicers and save various profiles for the machine (like nozzle changes and filament / bed temps).
But if you're struggling with a particular print it's really handy to just grab another slicer with a couple clicks and reslice.
Slices faster than Octoprint because you're slicing in a PC, not a low powered CPU.
You can try it for free as well. If you use a USB cable and don't need the remote monitoring the Repetier-Host software is free.
Here's a pretty unbiased look at Repetier-Host / Server vs Octoprint vs AstroPrint. Not in depth, but a good starter article since you WILL be running into this discussion soon.
http://3dprinterpower.com/best-3d-printer-wireless-host-software/
Here's the Repetier-Server page:
https://www.repetier-server.com/
The Repetier-Host page:
PuterPro
I think you would have better luck in getting it to run Marlin, especially with an AtMEGA 1280 chip. Usually, Marlin needs a Mega 2560 but I believe it can be made to fit on a 1280.
But that's only if you want to change the firmware.
I prefer running a printer off Octoprint, but Repetier Host (https://www.repetier.com/downloads/) will work just fine. If you plug in the printer via USB, and listen on the serial monitor, during startup it should tell you what firmware it's running and might even be able to get some presets out of it.
Pictures of the control board would be handy as well.
I am definitely no expert, I am just stubborn and prefer to take opportunities to figure things out. The Arduino Editor can be downloaded here. You would grab a copy of the Repetier Firmware although may need to find one specific to the Maker Select and use a video like this one to install it on the board.
Repetier does it by default, and stores the value in EEPROM. It's displayed on the LCD in the second screen accessible via the knob. If you want to set it up easily, you can just generate a custom image here, transferring all your settings from Marlin is pretty easy if you already know them.
This is why I hate Marlin. They tried to make a configuration program (someone else has but I believe it isn't free or maybe donationware, I dunno) but it changed so much that the tool they made didn't work anymore so it was put on the back burner last time I looked.
Repetier have their own web configurator that makes setup easy https://www.repetier.com/firmware/v092/ and if you ever need to change a setting you just upload your old config file to their tool and it auto fills all the old settings (only for configs made with their tool).
I think this is the 3rd party marlin config tool http://marlin3dprintertool.se/ I'm not entirely sure if it's totally free, donation ware, or what. I've seen the dude who made it post on G+ and there's talk of licenses and such so I don't know what that's all about, never checked it out because at the end of the day, I hate Marlin.
All this reprap stuff does require you to do a bit of reading and use your brain, there are so many different versions of marlin, so many 3rd party forks of it, and it isn't java, it's C. When I first got into 3d printers I knew nothing of it so I know how you feel, I still don't know how to actually write useful code but once you get stuck into marlin's config files, read the comments that are in there and experiment a bit, you'll quickly learn what does what.
"mechanics" tab of the repetier firmware configurator https://www.repetier.com/firmware/v092/
configuration_adv.h for marlin based firmwares https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/Configuration_adv.h#L333
I've got some dial indicators laying around and I think it would be less risky to use those. Using that in conjunction with the Z switch height method listed here, I can pick up the bed height to 0.001in which will be more accurate than the paper.
Would this help to calibrate out warping in the bed? I think this glass may not be perfectly flat.
You'd be surprised how many people just dump Marlin onto a board like that. By the way, instead of relying on a YouTube tutorial, you could always just generate an image using the Repetier configuration tool. Repetier can interpret Marlin gcode, but has a few more features, and is far easier to configure, thanks to this tool.
what is T? Are you using the firmware configurator? https://www.repetier.com/firmware/v092/ It provides easy dropdowns and as a bonus you can re-upload the config file later (has to have originally been created using that tool) to have it auto fill all the settings if you want to change anything, rather than manually editing config files. It's probably one of the main reasons I moved away from Marlin, that and it seems to handle high speed moves better.
I don't know what it is you're up to but for me I home everything negative, the nozzle is outside the build area, then just tell it how far outside it is. For my DIY printer that would be X -30 Y has no offset because it homes to maximum, Z -2.something or other. I like doing it this way because to adjust my nozzle, it's as easy as tweaking a number via the terminal, rather than having to fiddle with a physical end stop. In a way it's kind of like having an auto bed levelling probe and setting the offset that way except I need never bother probing or levelling with every print because the bed is so tightly locked down, it just never moves.
I set z0 to be 0, i.e. touching the build plate, level off the bed, lock it, and print happily ever after. Perfect first layer every time (as long as the extrusion multiplier is set right that is)
It's just one guy's hacks to the stock firmware (Repetier) that comes with the A8. The guy just uncommented like, three lines of code, and fine tuned some of the settings the shadow factories that make clones don't bother to double check. You could make something far better documented, as well as functional, by dumping your settings and using them to generate a new firmware using this tool provided by the actual devs of Repetier. You'd be able to configure the firmware to match the actual settings of whatever printer you want to build, and load it onto any board with enough space for it. That said, the TinyG CNC board is not designed to run a printer, at all. It doesn't even seem to have a spot to output to a hotend. If you want to upgrade to a board better suited to a printer, I'd recommend you look at something like a RAMBo, or maybe an improved MKS SBase, as those are meant to drive a 3D printer, where a CNC board like you've mentioned is meant to drive, well, a CNC.
Here's where you can download CURA: https://ultimaker.com/en/products/cura-software
The manual that came with the printer also has instructions for another program, Repetier-Host, which works on Mac, Linux, and Windows: https://www.repetier.com
I haven't used them, but both installed on my Mac and run.
First, try flipping around the cables that lead into the screen. It could be as simple as the cables being the wrong orientation. As far as "programming" goes, all you need to do is find the firmware for this machine, install the Arduino IDE, and flash the firmware onto the board. It looks like you have a RAMBo derivative, specifically either the RepRapElectro version or a very good clone. With that in mind, you either want to find the original firmware, figure out if there's anything loaded on this device already, or, worse comes to worst, build it yourself using the Repetier generator, which is probably one of the simplest ways to create printer firmware for Arduino based printer boards out there. I could try to help figure out what values you'll need for each part if it comes to that, if you'd like.
FIRMWARE_NAME:Repetier_0.83 FIRMWARE_URL:https://github.com/repetier/Repetier-Firmware/ PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1 REPETIER_PROTOCOL:2
Thanks. So it IS running Repetier, but I still don't know what I have to do to reconfigure it, the online tool has a load of options I'm not sure which to use.
You'll need an ISP programmer with the Melzi clone unless the board comes with a bootloader installed (Unlikely). You can't really get the configuration off the firmware and will have to setup a new one.
Is yours one of the printers with the 5 button controller for the LCD? You should be able to grab this file https://github.com/repetier/Repetier-Firmware/tree/master/boards/Zonestar%20P802M and update it for your printer. Just download the configuration.h ( https://raw.githubusercontent.com/repetier/Repetier-Firmware/master/boards/Zonestar%20P802M/Configuration.h ) and run it through their web configuration tool https://www.repetier.com/firmware/v092/index.php to change what you need.
It'll give you all the firmwares which you can build with the Arduino IDE (Setup the plugins for the Melzi board) and then you can program the Melzi through an ISP programmer
Well, unless the printer is somehow special (as in it doesn't use either belt or screw), you can get the latest marlin firmware or repetier on your board.
I would allow you to profit from all the ameliorations the firmwares have been going through (and there is a lot).
It's not that hard, could take a whole day but it's, from my pov, the best solution.
I am trying to port it, will reply back in a few minutes/hours.
Edit : Here it is : https://1drv.ms/f/s!Akp3KOq2lNXJhqYLJ4nX9gABvQ8ztw
If there is any problem, you can use https://www.repetier.com/firmware/v092/
Just give them the configuration.h from the Repetier i gave you and look for what may be wrong.
I added pins for you board in pins.h, keep this one in any case.
Here is a few thing that may be wrong :
Other than that it should be ok.
If you have any problem just tell me and I'll try to help you.
https://www.repetier.com/documentation/repetier-firmware/
It just seems to be much easier to configure than Marlin but there are a couple of things it does differently.
Marlin has undergone some huge changes lately and in doing so they're completely changing the code around so an old configuration file won't work on a new version. They started working on a web based configurator but guess what.. the changes broke that too and it's a low priority so we're stuck sifting through multiple text files to manually edit our configs.
Another thing that doesn't affect end users, more devs and testers of beta versions but during development they completely changed (and later reverted thankfully) the way homing works and the way error messages were reported which totally broke every single host program out there and almost physically broke my printer. Why? Because "it works ok for me so I'll merge it" seems to be the way the current devs view things. I simply refuse to even touch Marlin now out of fear of what it's going to do to my machines. Switched both printers to repetier and haven't looked back.
Might I suggest repetier firmware https://www.repetier.com/firmware/v092/ nice and simple (compared to editing multiple text files in notepad / vi / whatever) web based configuration and some explanation of what each feature does.
You could try MatterControl and see if it detects the printer. It has an autolevel that works with deltas and the fine leveling might work better with z-probe. Repetier has a lengthy description of z-probe bed leveling, especially the commands to send first to initialize.
https://www.repetier.com/documentation/repetier-firmware/z-probing/