Welcome! Log In Create A New Profile

Advanced

Updated Marlin customized for Mendel90

Posted by neildarlow 
Re: Updated Marlin customized for Mendel90
October 15, 2014 08:17AM
@Rich K. Can you please check your Arduino sketch folders thoroughly.

As the Arduino IDE does not display path information it would be quite possible to have two Marlin.ino files in separate folders and there would be no visual indication as to which one is open.

I have double-checked the files on GitHub and the required analogInputToDigitalPin definition is present.

The only conclusion I can reach from this is that the source you are attempting to compile is not associated with the necessary support files. I have compiled the latest from GitHub on both Linux and Windows 7 without problems.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
October 15, 2014 08:17AM
Yes, what I am suggesting is that your firmware compiled with the BSP from the SD card I distribute will give exactly that error. Also that compiling my Marlin tree will never give that error.


[www.hydraraptor.blogspot.com]
Re: Updated Marlin customized for Mendel90
October 15, 2014 05:35PM
I've got things so screwed up in my menus and folders from chasing this thing around I am going to delete everything except the .zip files, uninstall Arduino, and start over again, but this time install Arduino in my main program files menu rather than in a subfolder of a subfolder of a subfolder of a...

Nophead, where will I have to unzip the files from Github to once I re-install the stuff from the SD card into the new program files/arduino folder I will be creating? Will I still need the stuff from Neil's zip file? Should I delete anything first to avoid problems?

It just might be less confusing if I simply start over again...confused smiley
Re: Updated Marlin customized for Mendel90
October 16, 2014 01:20AM
You should install Marlin either from nophead's GitHub repository or mine, do not attempt to mix elements from both. Slicer settings should be taken from nophead's repository.

Any content you download from GitHub should be installed, after unzipping somewhere convenient, in your Arduino working folder not under Program Files\Arduino.

Here is my Windows 7 folder layout.
C:\Users\Neil\My Documents\Arduino
C:\Users\Neil\My Documents\Arduino\hardware
C:\Users\Neil\My Documents\Arduino\hardware\Melzi
C:\Users\Neil\My Documents\Arduino\libraries
C:\Users\Neil\My Documents\Arduino\libraries\LiquidTWI2
C:\Users\Neil\My Documents\Arduino\Marlin
The file I open in the Arduino IDE is C:\Users\Neil\My Documents\Arduino\Marlin\Marlin.ino

Note:
1) The folder C:\Users\Neil\My Documents\Arduino\Marlin is the Marlin folder contained within the downloaded zipfile, not the entire zipfile contents.
2) You may notice some ambiguity between my use of C:\Users\username\Documents and C:\Users\username\My Documents. If working in the file explorer with copy/move then My Documents is the right place.
3) Do not install additional files under C:\Program Files\Arduino. That folder should be managed by the Arduino installer only.

Edited 3 time(s). Last edit at 10/16/2014 01:24AM by neildarlow.

I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
October 16, 2014 01:53AM
I use a simpler scheme. I just copy the SD card anywhere and run Arduino where it ends up. I.e. I don't install it.

To use Neil's Marlin you will need to either replace my Melzi folder with Neil's or get the latest one of mine from Github.

Or you can just follow Neil's instructions above.


[www.hydraraptor.blogspot.com]
Re: Updated Marlin customized for Mendel90
October 16, 2014 03:47PM
WOO-HOO!!! FINALLY got it to work!

Neil, is there any advantage or disadvantage to using your z-height parameter as it is set in Marlin, vs. the way Nophead has it set up in his fork? Or are they pretty much the same way of going about it, but "worded" differently? I'll have to recalibrate my z-height setting once the printer is fully assembled anyway. But at least, by starting over again and re-arranging my folders the way tou showed a couple of posts ago, it now works - thanks! smiling smiley smiling smiley smiling smiley
Re: Updated Marlin customized for Mendel90
October 17, 2014 12:02AM
There were some changes made between nophead's version of Marlin and when I started my version relating to Z_HOME_POS and MANUAL_Z_HOME_POS.

The problem, with newer Marlin, is that MANUAL_Z_HOME_POS is used to initialise Z_HOME_POS. A user could add their own Z_HOME_POS definition and be unaware that it is later overwritten by MANUAL_Z_HOME_POS leading to unexpected results. My rationale behind introducing Z_HEIGHT_MM was to isolate people from such problems.

Good to hear that things are now working for you. Sometimes doing things afresh has its merits.

Regards,
Neil Darlow

Edited 2 time(s). Last edit at 10/17/2014 02:06AM by neildarlow.

I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
January 04, 2015 06:14AM
Quote
neildarlow
@sguzzel: The 203mm was the original Z_HOME_POS setting in Nophead's Marlin. The Z_MAX_POS was calculated as (Z_HOME_POS - 0.1).

In my firmware the Z_HEIGHT_MM is used to set MANUAL_Z_HOME_POS when MANUAL_HOME_POSITIONS is defined or Z_HOME_POS when MANUAL_HOME_POSITIONS is not defined.

In either case, Z_MAX_POS is set to 200 and will be consistent for all printers (Nophead's would vary the Z_MAX_POS depending on the calibrated Z_HOME_POS of the printer).

I have Z_HEIGHT_MM at 203.0 simply as a place-holder. You should replace this value with your calibrated Z Height value as described in the Build Manual.

Regards,
Neil Darlow

Hi, since yesterday i switched from nopheads RC to your version of marlin.

First of all, it is also real good work ;-) !

My mendel90 is equipped with a e3d v6 hotend, this results in a Z_HEIGHT of 191.6mm .
So when i use the stop.gcode provided by nophead it has a "G1 Z200 X-100 F9000 ; go to top" inside, it causes an endstop hit because the softendtop is hardcoded to 200mm.
I changed "#define Z_MAX_POS 200" to "#define Z_MAX_POS (Z_HEIGHT_MM - 0.1)" like nophead did in in his original.
Now it is less vulnerable against failure when the gcode does not exactly fits the printersizes.

Regards, Jesse
Re: Updated Marlin customized for Mendel90
January 21, 2015 01:43AM
I just bought a Panelolu2 LCD controller and got it up and running with this firmware without any problems at all. smiling smiley

Only thing I am missing is a easy way to do filament changes. How do I insert extra menu-options for things like sending the command that allows cold extrution?
The way I change filament is that I heat the extruder to ~80 degress C and back the filment out. It would be nice to be able to send allow cold extrution and feed backwards 100 mm at 200 mm/min from the Panelolu.

Regards
Nils
Re: Updated Marlin customized for Mendel90
January 21, 2015 05:18AM
@amr_dwarf: Please take a look at the documentation for M600.

This works in conjunction with the Panelolu2 to permit filament changes. It has parameters for the control of retraction during the process. It should not be necessary to modify Marlin further for filament change.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
January 21, 2015 05:53AM
OK, but the M600 seems to be used for changing filament mid print.
How do you go about to send M600 from the Panelolou2?

And my question was in regards to changing filament when not printing.
As I wrote I heat up to 80 degrees C and then retract the filament at high speed. But I do not know how to enable cold extrution and retract att higher speeds with Panelolu2.

Regards
Nisse
Re: Updated Marlin customized for Mendel90
January 21, 2015 06:02AM
@amr_dwarf: You would issue a M600 from GCode. You could create a small GCode file e.g. change.g, containing M600 and anything else you need, place that on your SD card then select that file from the Panelolu2 Print-from-SD-Card menu.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
January 21, 2015 06:23AM
So there is no way to add entries in the menus?

But the idea of a small GCode file that enables cold extrution and retracts would work. Need to remember not to delete it from the card when I wipe it from time to time.

Reagrds
Nisse

Edited 1 time(s). Last edit at 01/21/2015 06:24AM by amr_dwarf.
Re: Updated Marlin customized for Mendel90
January 21, 2015 08:24AM
If you are a programmer you can add anything you want to the menus.


[www.hydraraptor.blogspot.com]
Re: Updated Marlin customized for Mendel90
January 21, 2015 10:57AM
@amr_dwarf: I would question the need for a new menu item. You would be creating a feature which essentially duplicates existing functionality, albeit by making it accessible through the Panelolu2 UI, when a more generic solution using a dedicated GCode file already exists. If the possibility of deleting the file concerns you then perhaps a copy should be kept with your other GCode files away from the SD card.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
January 22, 2015 03:29AM
I have modified my firmware to add menu options for pre-heating to various temperatures, extrusion/retraction, etc. but in doing so have created an extra merge step for myself whenever I am upgrading my firmware.

Unless you are a programmer and/or don't mind doing this every time you want to upgrade (not to mention having confidence in your abilities to do so) then I would advise against it and just do what Neil suggests. Creating a bunch of .gcode scripts with descriptive names such as "Pre-heat 80C", "Pre-heat 130C", "Retract 100mm" and "Extrude 150mm" makes them easy to select from the P2, and storing them in a separate folder on your SD card should make it obvious not to delete them when you're performing a clear out.
Re: Updated Marlin customized for Mendel90
February 02, 2015 05:15PM
helo i have a question i uploaded you sketch and everything worked fine. i decided to try out the auto bead leveling once i verify the sketch i get this error:

c:/program files (x86)/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/bin/ld.exe: Marlin.cpp.elf section .text will not fit in region text
c:/program files (x86)/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/bin/ld.exe: region text overflowed by 5398 bytes


is there something i can do to save some memory?
stefan
Re: Updated Marlin customized for Mendel90
February 02, 2015 11:51PM
Hi,

The largest consumer of code space with bed levelling is the grid probing method. If you use the 3-point method (which is all you need) you can save 10k bytes.

You can disable LCD support and EEPROM settings saving and chit-chat.

Decide which features you wish to retain but my best suggestion is to use 3-point levelling and you may be able to retain the other features.

Regards,
Neil Darliw


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
February 03, 2015 05:26AM
Sounds good will try that. Also I'm not using a Lcd is Lcd support enabled by default if so which line would disable it?
Thanks for your time

Edited 2 time(s). Last edit at 02/03/2015 05:29AM by jem-tech.
Re: Updated Marlin customized for Mendel90
February 03, 2015 05:43AM
Hi,

Yes, Panelolu2 is enabled by default. In Configuration.h, comment out line 645 which reads:
#define LCD_I2C_PANELOLU2
Regards,
Neil Darlow

Edited 1 time(s). Last edit at 02/03/2015 05:44AM by neildarlow.

I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
February 03, 2015 05:48PM
ok after disabling the lcd was and turn i able to upload the sketch and everthing seem fine but when i run G28 it homes to the back right corner fine then after homing it quickly goes to the front left corner and the x axis tries to go farther the it should and looses steps. i followed Thomas Sanladerer guide to setting up the auto bed level is there something else i have to do?
Re: Updated Marlin customized for Mendel90
February 04, 2015 02:15AM
Open Configuration.h and search for
#ifdef Z_SAFE_HOMING

    #define Z_SAFE_HOMING_X_POINT (X_MAX_LENGTH/2)    // X point for Z homing when homing all axis (G28)
    #define Z_SAFE_HOMING_Y_POINT (Y_MAX_LENGTH/2)    // Y point for Z homing when homing all axis (G28)

change it into

#ifdef Z_SAFE_HOMING

    #define Z_SAFE_HOMING_X_POINT 0 //(X_MAX_LENGTH/2)    // X point for Z homing when homing all axis (G28)
    #define Z_SAFE_HOMING_Y_POINT 0 //(Y_MAX_LENGTH/2)    // Y point for Z homing when homing all axis (G28)

compile and upload then try G28 again.
Re: Updated Marlin customized for Mendel90
February 04, 2015 02:19AM
Hi,

I have not watched Thom's levelling guide so I cannot comment on it.

I would suggest doing things in easy stages. The 3-point levelling is easy to configure (just choose points with non-coincident X and Y e.g. rear-centre, right-centre and front-left) and see if that works first before attempting the grid-based method.

Also, check your offset values for hotend and probe. They need to be specified correctly in both magnitude and direction.

I have never personally used auto-bed levelling but I have configured a variant of my firmware with it for a Prusa i3. It worked well.

There have been considerable code changes in the latest Marlin development branch and, as yet, I have little experience with it so I cannot comment on specific problems related to it.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
February 04, 2015 02:33PM
Quote
Jesse_Blue
Open Configuration.h and search for
#ifdef Z_SAFE_HOMING

    #define Z_SAFE_HOMING_X_POINT (X_MAX_LENGTH/2)    // X point for Z homing when homing all axis (G28)
    #define Z_SAFE_HOMING_Y_POINT (Y_MAX_LENGTH/2)    // Y point for Z homing when homing all axis (G28)

change it into

#ifdef Z_SAFE_HOMING

    #define Z_SAFE_HOMING_X_POINT 0 //(X_MAX_LENGTH/2)    // X point for Z homing when homing all axis (G28)
    #define Z_SAFE_HOMING_Y_POINT 0 //(Y_MAX_LENGTH/2)    // Y point for Z homing when homing all axis (G28)

compile and upload then try G28 again.




that was it thankfor the help.
Re: Updated Marlin customized for Mendel90
March 20, 2015 03:49PM
Hi,

I bought a Mendel90 from nophead a while ago and now I would like to use the firmware update by Neil Darlow. I tried following the steps from the first post, but when I try to set the type of board the "Melzi W/ Atmega 1284p 16mHz" isn´t available.
Does anyone know where I went wrong? When I followed the instructions above I had to create the hardware folder under Documents/Arduino, don´t know if that´s normal?

Regards, Jens
Re: Updated Marlin customized for Mendel90
March 21, 2015 04:19AM
Hi Jens,

Yes, you will probably have to create that folder.

Have you copied the Melzi folder from the zipfile into that folder? Not doing this would cause the Melzi board option to not be shown.

Another possibility is that your Arduino launcher icon is starting another Arduino installation that resides in another location. This has been the case for a few users in the past.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
March 21, 2015 05:34AM
Hi Neil,

thank you for your reply, the Arduino.exe itself is installed at c:\programme\Arduino\ (I used the Windows Installer and that was the default it used). Since you explicitly wrote to copy the files to the User\Documents folder I did that. The Installer created an Arduino folder there, so I assumed everything was as it should be.

Or is the procedure from post #1 only valid if the Arduino installation itself is also located in the User\Documents folder?

Because I checked and the same folders (/hardware.... /libraries) are present under c:\programme\Arduino\, should I reinstall Arduino and put it into the User folder?

I would like to keep it in one place only, the whole thing is complicated enough as it is (for me).

I just freshly installed Windows on that computer, and I have no other Instance of Arduino installed, so I doubt that another Installation is started with the icon.

*EDIT*

I tried reinstalling Arduino to the User/Documents Folder and copied the folders from the Marlin-Marlin_v1_Mendel90.zip to the corresponding locations mentioned in post #1 (and this time I didn´t use the Desktop icon and clicked on the Arduino.exe itself to make sure)

Unfortunately after Selecting Files --> Sketchbook --> Marlin, I still don´t have the Melzi W/ ATmega1284p 16MHz option.

*EDIT2*

weird.... I double and triple checked, but no luck with the recent version of Arduino, after that I copied the backup folder of my "Mendel90" folder (provided by nophead with the printer), made another copy of it (just to have another backup) and made the changes described in post #1 to that old version of arduino (1.0.0.1 I think). With that everything worked as described, I already uploaded the firmware to the printer.

Will be doing some tests now.

Regards and thanks,

Jens

Edited 2 time(s). Last edit at 03/21/2015 06:53AM by D4RK1.
Re: Updated Marlin customized for Mendel90
March 21, 2015 12:07PM
Hi Jens,

Use of hardware and lib folders under Documents allows you to separate things from the main installation folder (you do not want to place user files manually under C:\Program Files\Arduino anyway). This greatly assists with Arduino IDE updates as user files are left untouched.

The method outlined in the original post does work (I followed it step-by-step when I devised it) and many people here are successfully using installations created using this method.

You do need to be careful that the correct folders are copied from the zip file to the relevant folders under Documents\Arduino. If you read through the posts in this thread you can see how people have misinterpreted parts of the process but once they have corrected things the result is a working installation.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Re: Updated Marlin customized for Mendel90
March 21, 2015 01:34PM
Ok,

then I will try it with the original folders again, thank you. Good to know I am not the only one who manages to bungle a 6 step installation tongue sticking out smiley

But if I create folders under /User/Documents/Arduino, Arduino.exe from c:/program files/Arduino will still use them? Or do I need to point it towards them somehow?

Jens

*EDIT*

Unfortunately still no joy....

I read through the entire post and tried all things so far suggested, my Arduino installation is a clean one, I only have a second folder on my desktop where I keep the version from nophead. If I use that, I directly start the Arduino.exe contained within that folder and open the Marlin.ino from inside that folder manually as well.

When testing Neils firmware I open via the "installed" Arduino version. I have recently made a fresh install with the following folder scheme:

C:\Users\D4RK1\Documents\Arduino\Marlin
C:\Users\D4RK1\Documents\Arduino\hardware\Melzi
C:\Users\D4RK1\Documents\Arduino\libraries\LiquidTWI2

the boards.txt is contained in the hardware\Melzi folder and the Melzi /W Atmega is mentioned inside

But I still don´t get the option when loading the Sketchbook (or Marlin.ino directly)

I will now try on another machine...

Tried another machine, same problem... I am giving up...

Edited 6 time(s). Last edit at 03/21/2015 02:48PM by D4RK1.
Re: Updated Marlin customized for Mendel90
March 21, 2015 02:46PM
Hi Jens,

Another possibility is the naming of the Documents folder. I am not sure how Windows distinguishes between Documents and "My Documents".

Perhaps you could try installing things under C:\Users\username\My Documents\Arduino and see if that helps. You might easily move C:\Users\username\Documents\Arduino to C:\Users\username\My Documents\Arduino using drag-and-drop.

I use GNU/Linux most of the time and although I was once a Windows application developer I am a little rusty on newer versions of Windows.

Regards,
Neil Darlow


I try to write with consideration for all nationalities. Please let me know if something is unclear.
Printing with Mendel90 from fedora 25 using Cura, FreeCAD, MeshLab, OpenSCAD, Skeinforge and Slic3r tools.
Sorry, only registered users may post in this forum.

Click here to login