Welcome! Log In Create A New Profile

Advanced

GEN6 firmware seems to upload but no changes are reflected

Posted by Flackster 
GEN6 firmware seems to upload but no changes are reflected
October 16, 2011 12:10PM
Hi,

I seem to have developed an odd firmware upload problem.

Until recently it was fine. I would change things (E_STEPS_PER_MM, Z_STEPS_PER_MM) and the behaviour changed as it should do.

But now, when I make a change and upload it has no affect.
I verify it in Arduino with no errors
I upload it and the little debug light flashes to show communication
I push the reset button and close Arduino and even turn everything on/off or reboot

I can still control it fine, just no changes are applied. It's as though nothing happened. I've attached my configuration.h file that has ridiculously changed numbers for X_STEPS_PER_MM and Z_STEPS_PER_MM.
pf-configuration-16-10-11.h

I'm using GEN6 electronics on my mendel with the firmware from mendel-parts.com

Any advice?

Thanks

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 16, 2011 01:45PM
Looks like you are using the old 5d version for gen6. I've counted 14 places, where you can set X_STEPS_PER_MM etc. They are selected depending on some defines, so watch out you change the one used. It's quite confusing and that firmware is quite outdated (just my opinion).

Or you take the easy way and use Repetier-Firmware (see signature), which was developed on a gen 6, so it should work out of the box. Then you can change your parameter without upload, just send a command to change the eeprom stored values.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
October 18, 2011 03:46AM
Repetier,

Thanks for that. I tried it last night.

I very much prefer Repetier to RepSnapper - so, good stuff!

However, I had a couple of problems (which I suspect is down to me not understanding the implications of all the settings, so down to me not the software?).

I quick experiment showed that it was moving my extruder much faster than I was comfortable with.
So, I changed quite a few settings to match my old firmware and skeinforge settings (or that's what I hoped). The result was that it now moves much slower and things the bed size (or step size) is much smaller (or bigger) than it is. I manually moved it 400 steps but it was only about one quarter of the way across the bed. I observed this with both X and Y movement (not sure about Z). I didn’t' actually print anything, just used the 'manual' X, Y & Z movement buttons.

Also, I couldn't update the EEPRON values using the M206 command. It just didn't seem to do anything. But I could see the values I'd put in configuration.h using the M205 command, so I know the firmware did load up OK.

Not sure what to try next - I suspect I'll try to understand the settings I changed further and just experiment with different values.

I actual the configuration.h I use but here's the list of changes:
PFConfiguration.h


// PF Change - set at my most recent X,Y,Z steps per MM
/** \brief Number of steps for a 1mm move in x direction */
#define XAXIS_STEPS_PER_MM 12.3164
/** \brief Number of steps for a 1mm move in y direction */
#define YAXIS_STEPS_PER_MM 11.427
/** \brief Number of steps for a 1mm move in z direction */
#define ZAXIS_STEPS_PER_MM 1332.339

// PF Change - set at my most recent E steps per MM
#define EXT0_STEPS_PER_MM 639.0

//PF Change - The number of entries in my thermister table 0 is 20 (not 28 as was original value)
#define NUM_TEMPS_USERTHERMISTOR0 20

//PF Change - my resistor
// Thermister NTC-100KOhm from German Reprap Foundation
// (https://shop.grrf.de/thermistor-ntc100kohm-p-310.html?zenid=6e2bfbd4439d9009360d547ef2f37e81)
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 3974
// max adc: 1023
#define USER_THERMISTORTABLE0 {\
{1,916},{54, 265},{107, 216},{160, 189},{213, 171},{266, 157},{319, 146},\
{372, 136},{425, 127},{478, 118},{531, 110},{584, 103},{637, 95},{690, 88},\
{743, 80},{796, 71},{849, 62},{902, 50},{955, 34},{1008, 2} }

// PF Changed from #define MAX_FEEDRATE {15000, 15000, 100, 2400}
// My Skeinforge X&Y feed rates are around 30 mm/s so I figure this number should be 60 times that (for per minute)
// 1mm/sec for Z axis so, 60 mm/min for that
// I'm not sure why I set E to 100 - flow rate is more like 40 so I should be setting to 2400???? (which is what the default is)
#define MAX_FEEDRATE {3000, 3000, 60, 100}

/** Comment this to disable ramp acceleration */
// PF Changed (i.e. I commented it to zero)
#define RAMP_ACCELERATION 0

// PF Change - Baud rate taken from RepSnapper settings (previous setting (default) was 76800
#define BAUDRATE 19200

All/Any comments invited……..

Thanks

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 18, 2011 05:39AM
After you uploaded one version with eerom support, the values can only be changed with M206, changes in configuration are ignored (unless EEPROM_MODE 0 is set, then you can't use M206 and the configuration.h settings are used. But I guess you are using M206 the wrong way. Try Repetier-Host as Host software. There you can change EEPROM settings in a dialog window, much easier.

Your steps per mm don't seem right, thats why you get wrong move distances.
GEN 6 has 8 Substeps per Step and the normal stepper motors have 200 Full steps per turn, so with gen 6 200*8=1600 Steps/turn.
For x/y count the grooves of your pulley - mendel has normally 8, with a T5 Belt you have a circumsphere of 8*5 = 40mm => X/Y = 1600/40 = 40 Steps/per mm.
Z-Axis is a analog, but differs for prusa / original mendel and depends on steepness off your rod. A M8 has 1.25 mm/Turn.

The E-Settings depend on your Skeinforge version. I encourage using version >=40, current version is 44. In version >=40 the definition for E changed from Steps per mm pushed out to Steps per mm sucked in. So for 0,5 mm nozzle, my setting changed from 20,2 to 373 Steps/mm. With that the maximum extruder speed reduced a lot. Search google for skeinforge calibration, then you get good tutorials, how to calibrate this for perfect results.

To disable Acceleration, you must write
//#define RAMP_ACCELERATION 1
but don't do this. If you don't want acceleration, set your maximum feedrate to MAX_JERK*60/2 and you will have no acceleration but you are free to do faster travel moves and can set it to higher values. Up to 40mm/s = 2400mm/min I get good results. Of course the faster you go, the lesser the quality. Thanks to path optimization this is quite good.

Max Settings for Extruder - I found that even 25 mm/s are quite high. With OPS I got lost steps with that speed. I'm currently testing 20mm/s for my Adrian extruder, which seems to work. So even your 100 are high if using Skeinforge>=40. So the
#define EXT0_MAX_FEEDRATE 1200
Is a good value. The E-Feedrate in #define MAX_FEEDRATE {3000, 3000, 60, 100} is always overwritten by this value, so this setting can be ignored anyway. It's only there, because the array has a length of 4. Need to clarify that.

Communication speed - why so low. If you print many short parts your print buffer may run out of data. I run my gen 6 with 250000 Baud without problems and no com errors using Repetier-Host.

The thermistor table looks right but I diddn't check the values.

Edited 1 time(s). Last edit at 10/18/2011 05:49AM by repetier.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
October 18, 2011 07:57AM
Repetier,
Wow! - superfast and comprehensive response. Thanks.

I can't try any changes till Weds evening but here's my initial ponderings.

Host
I did use the Repetier-Host as Host software - and jolly fine it is too. It moved my motors & heated my hot end. I tried to use M206 (e.g. "M206 3 3 40.0" to try to change the x axis steps per mm) but no luck. I didn't try using the EEPROM settings dialog window (I wrongly assumed "M206 3 3 40.0" was the only way), so will try that soon. As you say, I suspect I'm using something wrongly.

Steps per MM
I think (!) I have a normal stepper motors with 200 Full steps per turn, so with gen 6 200*8=1600 Steps/turn (8 Substeps per Step)
My pulleys have 10 groves with a T5 belt => 10*5 = 50mm => X/Y = 1600/50 = 32 Steps/per mm. So, I'll try 32 and then modify by measurements thereafter.

What I don't understand is why 12.3164 and 11. 437 where correct for the previous firmware but are not any more (and they were – 20mm cuboids come out at 20 by 20 mm)

I'll check Z-Axis steps to see if there's problem there or not

I'm using Skeinforge version 43 and calibrated as per all those goods posts on the forum. I haven't tried extruding via Repetier host yet, so need to see if a problem is there too (though 639.0 doesn’t' sound too bad).

Feed Rates
I'm going to try a EXT0_MAX_FEEDRATE of 2400, since that matches my Skeinforge flowrate setting (40 means 40 * 60 = 2400 steps per minute). I realise that's twice what seems to be good for you so I will look out for lost steps (How would I recognise lost steps if I see them?)

So, MAX_FEEDRATE is {1200, 1200, 60, 2400}
- MAX_JERK of 40, giving X & Y of 1200 ( MAX_JERK*60/2 from your equation)
- 1mm/sec is skeinforge max feed rate for Z axis so, 60 mm/min for that
- 2400 for reason stated above (even though that value is, in fact, overwritten)

In fact, My Skeinforge X&Y feed rates are around 30 mm/s so I figure MAX_FEEDRATE should be 60 times that (for per minute) - so that's 1800. I'd like to go to 2400 - I'll try that soon. I'm sure I can go higher since skeinforge feedrates of 50 have been OK (ish) before for me


Acceleration
I'm not sure if I want to disable acceleration or not. I assume the benefit is quicker build time but I'm scared of going to fast and breaking things.

Communication speed - I'll increase the Communication speed and see what happens

Regarding temperature control:
/** Type of heat manager for this extruder.
- 0 = Simply switch on/off if temperature is reached. Works always.
- 1 = PID Temperature control. Is better, but needs an output with PWM, which doesn't
use Timer 0 and 1
*/
#define EXT0_HEAT_MANAGER 1

My Gen 6 & firmware uses Bang-Band control. Does that mean I cannot use PID control (since it needs some kind of more complex sensor?)
Is on/off control the same as bang-bang control?
Should I set this value to 0?



Thanks again for your comments

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 18, 2011 08:20AM
Flackster Wrote:
-------------------------------------------------------
> Repetier,
> Host
> I did use the Repetier-Host as Host software - and
> jolly fine it is too. It moved my motors & heated
> my hot end. I tried to use M206 (e.g. "M206 3 3
> 40.0" to try to change the x axis steps per mm)
> but no luck. I didn't try using the EEPROM
> settings dialog window (I wrongly assumed "M206 3
> 3 40.0" was the only way), so will try that soon.
> As you say, I suspect I'm using something
> wrongly.
Just double click in the form on a value. After closing with ok, the changed values are set using M206 for you.

>
> Steps per MM
> I think (!) I have a normal stepper motors with
> 200 Full steps per turn, so with gen 6 200*8=1600
> Steps/turn (8 Substeps per Step)
> My pulleys have 10 groves with a T5 belt => 10*5 =
> 50mm => X/Y = 1600/50 = 32 Steps/per mm. So, I'll
> try 32 and then modify by measurements
> thereafter.
>
> What I don't understand is why 12.3164 and 11. 437
> where correct for the previous firmware but are
> not any more (and they were – 20mm cuboids come
> out at 20 by 20 mm)
Good question, When I changed from old 5D to my firmware I used the same settings and they were ok. But the values you give look stange and give a precision of 0,08mm which is not much. And they differ. If you use the same pulleys and motors, they should be the same.
>
> I'll check Z-Axis steps to see if there's problem
> there or not
>
> I'm using Skeinforge version 43 and calibrated as
> per all those goods posts on the forum. I haven't
> tried extruding via Repetier host yet, so need to
> see if a problem is there too (though 639.0
> doesn’t' sound too bad).
Is possible. If it's correct your extruder may go with higher speeds than mine, because you have an higher gear ratio then.
>
> Feed Rates
> I'm going to try a EXT0_MAX_FEEDRATE of 2400,
> since that matches my Skeinforge flowrate setting
> (40 means 40 * 60 = 2400 steps per minute). I
> realise that's twice what seems to be good for you
> so I will look out for lost steps (How would I
> recognise lost steps if I see them?)
>
> So, MAX_FEEDRATE is {1200, 1200, 60, 2400}
> - MAX_JERK of 40, giving X & Y of 1200 (
> MAX_JERK*60/2 from your equation)
> - 1mm/sec is skeinforge max feed rate for Z axis
> so, 60 mm/min for that
> - 2400 for reason stated above (even though that
> value is, in fact, overwritten)
>
> In fact, My Skeinforge X&Y feed rates are around
> 30 mm/s so I figure MAX_FEEDRATE should be 60
> times that (for per minute) - so that's 1800. I'd
> like to go to 2400 - I'll try that soon. I'm sure
> I can go higher since skeinforge feedrates of 50
> have been OK (ish) before for me
>
>
> Acceleration
> I'm not sure if I want to disable acceleration or
> not. I assume the benefit is quicker build time
> but I'm scared of going to fast and breaking
> things.

I would set MAX_FEEDRATE higher. Why limit it in firmware if your printer can go faster. With 6000 you should have no problems, most peaple go even higher. The risk is limited, because the firmware accelerates from MAX_JERK/2 to full speed. The only risk are positions outside you print area, then the motors will block when the head jams into the ends (if no endstops present or endstop checks are disabled during normal moves). Had this several times but no harm so far. Normally the motors just stall. And I don't say, you have to go that fast. If you tell skeinforge the limit is 2400 it will not exceed this speed.

>
> Communication speed - I'll increase the
> Communication speed and see what happens
>
> Regarding temperature control:
> /** Type of heat manager for this extruder.
> - 0 = Simply switch on/off if temperature is
> reached. Works always.
> - 1 = PID Temperature control. Is better, but
> needs an output with PWM, which doesn't
> use Timer 0 and 1
> */
> #define EXT0_HEAT_MANAGER 1
>
> My Gen 6 & firmware uses Bang-Band control. Does
> that mean I cannot use PID control (since it needs
> some kind of more complex sensor?)
> Is on/off control the same as bang-bang control?
> Should I set this value to 0?
>
No, let it on 1. I use a gen 6 myself and it uses timer 2 form PWM, so no conflict here. Use the Host-Temperture control for the first tests, to see the pid values work as expected. The predefined values work on V5 from Mendel-Parts. Just check that you dont reach critical temperatures. If this happens, disable temp and decrease values.
Re: GEN6 firmware seems to upload but no changes are reflected
October 19, 2011 07:51AM
Thanks for that - I'll give it a shot tonight

I just spotted this setting under Etruder Control
Important: This is the speed, filament is pushed inside the extruder not the speed at the nozzle!
If you set the extruder steps_per_mm for 1mm pushed outside, sile skainforge<40 needed it, you must
increase the value to reflect this. (*filament_diameter^2/nozzle_diameter^2)
*/
#define EXTRUDER_SPEED 25.0

Do I need to set his too?
For me : filament_diameter^2/nozzle_diameter^2 = 1.75^2/0.5^2 = 12.25
If my EXT0_STEPS_PER_MM = 639.0, what should EXTRUDER_SPEED be set to?

Thanks

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 19, 2011 12:29PM
Flackster Wrote:
-------------------------------------------------------
> I just spotted this setting under Etruder Control
> Important: This is the speed, filament is pushed
> inside the extruder not the speed at the nozzle!
> If you set the extruder steps_per_mm for 1mm
> pushed outside, sile skainforge<40 needed it, you
> must
> increase the value to reflect this.
> (*filament_diameter^2/nozzle_diameter^2)
> */
> #define EXTRUDER_SPEED 25.0
>
> Do I need to set his too?
> For me : filament_diameter^2/nozzle_diameter^2 =
> 1.75^2/0.5^2 = 12.25
> If my EXT0_STEPS_PER_MM = 639.0, what should
> EXTRUDER_SPEED be set to?
You use Skeinforge 43, so it is the same range. This is the absolute maximum, your extruder can reach from start and reverse direction. It's not the speed really used. With 1,75 mm and you gear ratio, I guess your maximum is around 40 perhaps even higher. Don't use values higher than then needed, because it increases the calls to the interrupt routine. In your case don't go higher then 40, 30 is better if you don't get ooze at that speed.
Re: GEN6 firmware seems to upload but no changes are reflected
October 21, 2011 05:40AM
Repetier,

I tried your good advice last night. It changed the EEROM values nicely and it seemed to address the 'going too slowly' speed issue I had. I need to sit down properly with some cups of tea and do it all properly (calibrating and modifying distances, etc) but it's looking good. A few issues (p.s. I hoping this is turning into some 'useful feedback on Repetier' now and not just 'please help me' material - I'll provide more general feedback soon too)

(Some) Movement and extruder traction speed is sooo fast:
Now everything is moving way toooooooo fast. I've tried changing values to slow things down but there seem to be quite a lot and I haven't hit on the right ones yet. The last values I tried (concentrating on X & Y movement) were as follows:

x_axis_max_feed_rate: 600
y_axis_max_feed_rate: 600
x_axis_homing_feed_rate: 1200
y_axis_homing_feed_rate: 1200
Max_jerk:40
x_axis_acceleration: 1000
y_axis_acceleration: 1000
x_axis_travel_acceleration: 1000
y_axis_travel_acceleration: 1000

Also, my extruder retracts and unretracts (tracts? smiling smiley far too fast. It'll break if I don't do something. Associated settings are:
EXT0_MAX_FEEDRATE: 2400
EXT0_MAX_START_FEEDRATE: 10
EXT0_MAX_ACCELERATION: 10000
EXTRUDER_SPEED 40.0 (matches my Skeinforge v43 feedrate)

To be honest, I don't' really understand the affects of 'acceleration' or the dangers involved or how to control it.

Any advice how to slow X, Y and extrusion retraction speed down? Which values are the ones to change?

BTW - I assume skeinforge limits (e.g."Feed Rate (mm/s)" in the Speed plug-in, etc) will override anything in the firmware - is that correct?

Print doesn't quite complete - Illegal use of M103 command?
Also, I had trouble at the end of prints. The print (appeared to) complete but the extruder head then stayed where it was (and didn't go to the dump zone as I had set & appears in the gcode).
(Also, once the heater just continued to heat up from that point - I don't know how hot it really got but said 400+ deg C (must be wrong?) and was definitely producing burning PLA smoke from my extruder (I saved my extruder ok though expect the inside of my extruder needs a good clean now smiling smiley I never managed to repeat the heating problem so it could be my hardware.)
I added and extra "G1 X135 Y0" near the end of the gcode (attached M5Washer_fixed_exportplusmove.gcode) ,just before the final few lines - that command was executed so the last few lines are not being. I see that skeinforge puts in a M103 command. That command isn't mentioned in the reprap wiki:
[reprap.org]

and this post makes me nervous about it:
[groups.google.com]

I can use the skeinforge replace.csv file to remove it and suspect no adverse effect on the gcode.

Any thoughts on that? - Are there any commands that are 'illegal' for Repetier Host/firmware- i.e. M103?
And what is the effect of using an illegal command?

Getting my values from configuration.h
Another (less critical) thing was that I tried to make things so the EEPROM values come from configuration.h. Previously in this tread you said "After you uploaded one version with eerom support, the values can only be changed with M206, changes in configuration are ignored (unless EEPROM_MODE 0 is set, then you can't use M206 and the configuration.h settings are used. " The comment in configuration.h says "Set the EEPROM_MODE to 0 if you always want to use the settings in this configuration file." But when I set it to 0 I got this error message from Arduino at verify time:

"In function 'void epr_init_baudrate()':
error: 'epr_get_byte' was not declared in this scope In function 'void epr_update(GCode*)':"

Not a problem - I want to use the EEPROM setting functionality from Repetier (to me, it makes it the absolute winner against RepSnapper, etc - it's fantastic) but at some point it would be nice to set my standard settings in configuration.h for use as my baseline.


Wow - I had more to ask that I hoped sad smiley
All in all - I think Repetier is the way forward - I think once I've addressed the wrinkles I'll find it far superior to the alternatives I've tried.

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 21, 2011 12:39PM
Hi,

More info from me.........

I tried to print having removed all M103 (and M101) codes. The result was the same. The part prints but the nozzle stops dead over its last position on the print. I noticed from the log that Repetier believes it has done every step in the print job including moving to 135, 0 (which it did not do).

Also, the position numbers on the Repetier Print screen show 0, 0, 0 - so, it believes it is home (which it was not)

Log attached (last few Z axis moves was me moving nozzle up manual to give it some space above the print)
repetier1.log

Hope all this helps

Pete

BTW - I've stayed a long way from my original posted topic. Should I be posting this elsewhere/starting a new post?
Re: GEN6 firmware seems to upload but no changes are reflected
October 22, 2011 02:17PM
Hi,

the stop of the nozzle is caused by a reset of the controler board. Look at this last part of the log:


> 17:27:18.093 : ok 963
< 17:27:18.093 : N973 G1 X135 Y0 F2000 *103
> 17:27:18.093 : ok 964
< 17:27:18.093 : N974 G91 *59
> 17:27:18.109 : ok 965
< 17:27:18.109 : N975 G1 E-10 *74
< 17:27:18.125 : N976 G90 *56
> 17:27:18.125 : ok 966
< 17:27:18.125 : Printjob finished at 21/10/2011 17:27
< 17:27:18.125 : printing time:40s
< 17:27:18.125 : lines send:885
< 17:27:18.140 : N977 M104 S0 *76
> 17:27:18.140 : ok 967
< 17:27:18.140 : N978 M104 S0 *67
> 17:27:18.421 : ok 968
< 17:27:18.421 : N979 M140 S0 *66
> 17:27:18.421 : ok 969
> 17:27:18.421 : ok 970
> 17:27:18.421 : ok 971
< 17:27:18.437 : N980 G1 X135 Y0 F2400 *111
> 17:27:18.437 : ok 972
> 17:27:18.437 : ok 973
> 17:27:18.437 : ok 974
> 17:27:18.437 : ok 975
> 17:27:18.437 : ok 976
> 17:27:18.437 : ok 977
> 17:27:18.437 : ok 978
> 17:27:18.484 : start
< 17:27:18.750 : N1 M105 *6
> 17:27:18.750 : ok 1
> 17:27:18.750 : T:121

It has acknowledged command 978 before the board did a reset (start in log), but has 2 commands and up to 16 moves in back buffer. If the move doesn't get executed, the reset was before this line was processed from the buffers.
The wrong coordinates in host are because of the start, which resets coordinates in the host, too.

The big question is, which command causes the reset and why. The firmware has no watchdog, so it will never reset the board at it's own.

You can do testing with dry run enabled. That way, no filament is printed and temp. stays at 0. Make a first test with the original file and Dry run, to test if the reset is extruder related. If the reset still occurs, try removing parts of the end, until you know which command it produces.

Known reasons for reset:
- User presses reset
- Bootloader produces reset (but why should it do that)
- voltage dropdown - I saw you disabled the heated bed. Perhaps that causes a voltage dropdown that causes a reset. Try omitting it or test by enabling/disabling it. If you see a start in your logs, thats the reason.

BTW, how do you control a heated bed with a GEN6? (M140 command in your log)

Edited 1 time(s). Last edit at 10/22/2011 02:22PM by repetier.
Re: GEN6 firmware seems to upload but no changes are reflected
October 24, 2011 03:31AM
Repetier,

(I don't really understand the lod) but I'll play with the last few commands and see if I cansee what causes the reset.

I'm not using a heated bed at all. So, I didn't pay attention to related commands. Not sure of that helsp or hinders

Cheers

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 24, 2011 05:40AM
Flackster Wrote:
-------------------------------------------------------
> (I don't really understand the lod) but I'll play
> with the last few commands and see if I cansee
> what causes the reset.

Short version: If you see a "start" in log, the board did a restart. Reason so far unknown, till we have more informations.

>
> I'm not using a heated bed at all. So, I didn't
> pay attention to related commands. Not sure of
> that helsp or hinders
>

I think it is possible to create a reset, if you get your firmware to set reset pin to low, with some wrong configuration settings or an unknown bug. If your don't have a heated bed and left it to not preset, like in the default config. nothing should happen using M140. But I'm curious, what you find out, about the command causing the reset. After you found it, I will check, what the reason may be.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
October 25, 2011 05:53AM
Repetier,

I located the command that causes the reset

It's "G91" in the last few lines of my gcode (note that there's two but the reset occurs on the first one - the code never reaches "G1 X5.0 Y-5.0 Z3.0"):

M104 S180.0
M108 S40.0
M113 S0.0
M107
G91
G1 X5.0 Y-5.0 Z3.0
G90
G1 X135.0 Y0.0 F2000.0
G91
G1 E-10
G90
M104 S0

That's the first G91 in the whole of my code (there's only 2 & the second is not reached)


From the wiki gcode manual:

"G91: Set to Relative Positioning
Example: G91
All coordinates from now on are relative to the last position. "

I have no idea why that should cause the problem sad smiley

Hope that helps

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 25, 2011 04:09PM
Flackster Wrote:
-------------------------------------------------------
> Repetier,
>
> I located the command that causes the reset
>
> It's "G91" in the last few lines of my gcode (note
> that there's two but the reset occurs on the first
> one - the code never reaches "G1 X5.0 Y-5.0
> Z3.0"):
>
> M104 S180.0
> M108 S40.0
> M113 S0.0
> M107
> G91
> G1 X5.0 Y-5.0 Z3.0
> G90
> G1 X135.0 Y0.0 F2000.0
> G91
> G1 E-10
> G90
> M104 S0
>
> That's the first G91 in the whole of my code
> (there's only 2 & the second is not reached)
>
>
> From the wiki gcode manual:
>
> "G91: Set to Relative Positioning
> Example: G91
> All coordinates from now on are relative to the
> last position. "
>
> I have no idea why that should cause the problem
> sad smiley

Well there is realy no reason for G91 to create a reset. Everytime you do a head move with Repetier-Host it does G91 /G1/G90. It only sets the variable relative_mode=false which can't cause a reset.
I've run the code on my gen6 and I don't get a reset. Can you run the code with Debug echo = on and post the part of the log file (you need to close the host for it to finish writing the log). If you see a ECHO: G91 then it's not the G91 because it was finished. Then it is something that happens after this command. But there is no real reason for a reset.

Do you get also a reset, if you only run the posted code?


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
October 27, 2011 03:52AM
Hi,

I tried just the piece of gcode that is causing me problems with Debug echo = on*

The code is:

M104 S180.0
M108 S40.0
M113 S0.0
M107
G91
G1 X5.0 Y-5.0 Z3.0
G90
G1 X135.0 Y0.0 F2000.0
G91
G1 E-10
G90
M104 S0

I've attached two log files. I ran it twice (one I homed, moved to 135,0, cleared the log and printed; the other one I just homed cleared the log and printed)

Of course, what I should have done was just tried a "G91" command to see what happened (but I was off down the pub, so clearly that took priority smiling smiley ) - let me know if you want me to try that.

Cheers

Pete

* Regarding "Debug echo = on" - What I did was clicked the toggle button on the Print screen. I also uncommented the //Debug bit of configuration.h. I hope that's right (was just clicking the toggle button all I needed to do?)
Attachments:
open | download - repetier-26-10-11 - 1.log (9.8 KB)
open | download - repetier - 26-10-11-2.log (4.8 KB)
Re: GEN6 firmware seems to upload but no changes are reflected
October 27, 2011 11:01AM
Hi,

you are the first with GEN6 who can produce this error. So I'm very interested as it's my only testing board. Can you attach the output of M205 and your configuration.h used.
Are you using the wiring_serial.c from me or the original arduino version? Perhaps I can reproduce the error this way.

Can you try the latest repetier-firmware version on git and reduce EXTRUDER_SPEED to 10.0 with

M206 T3 X10 P95
if you are still using the eeprom otherwise in configuration.h. I tried to increase this on my board to get the same frequency as you have, but still no reset for me.

This bug is driving me crazy, especially because I can't manage to produce it on my own.

Thanks
Repetier


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
October 27, 2011 11:07AM
Will do - it'll probably need to wait till the weekend though sad smiley

Cheers

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 30, 2011 05:27AM
Hi,

looks like I finally found the reason with much help of Theodleif.
I uploaded a new version with the fix to my git repository. If you have still issues with this version, let me know.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
October 31, 2011 04:12AM
Excellent - I'll give it a try soon

Do I need to start with a 'new' configuration.h and copy my specifics into it (e.g. E_STEPS_PER_MM, etc), or can I just use my previous one?

I'm still a bit worried about the speediness of it all. Imagine, I purely wanted to set things up simply so X&Y move no faster than 40mm/sec, what would I set the EEPROM settings to. I assume it's this lot:

x_axis_max_feed_rate:
y_axis_max_feed_rate:
x_axis_homing_feed_rate:
y_axis_homing_feed_rate:
Max_jerk:
x_axis_acceleration:
y_axis_acceleration:
x_axis_travel_acceleration:
y_axis_travel_acceleration:

Also, my extruder retracts and unretracts far too fast. It'll break if I don't do something. What would I set these to to ensure traction speed of, say, 40mm/sec:
EXT0_MAX_FEEDRATE:
EXT0_MAX_START_FEEDRATE:
EXT0_MAX_ACCELERATION:
EXTRUDER_SPEED 40.0 ?????? (matches my Skeinforge v43 feedrate)

Thanks

Pete
Re: GEN6 firmware seems to upload but no changes are reflected
October 31, 2011 04:33AM
Flackster Wrote:
-------------------------------------------------------
> Excellent - I'll give it a try soon
>
> Do I need to start with a 'new' configuration.h
> and copy my specifics into it (e.g.
> E_STEPS_PER_MM, etc), or can I just use my
> previous one?
>
Add this to the old one, which was added recently

//If true, axis won't move to coordinates less than zero.
#define min_software_endstop_x false
#define min_software_endstop_y false
#define min_software_endstop_z false

//If true, axis won't move to coordinates greater than the defined lengths below.
#define max_software_endstop_x true
#define max_software_endstop_y true
#define max_software_endstop_z true

and it should work. I think, thats all added in configuration.h

> I'm still a bit worried about the speediness of it
> all. Imagine, I purely wanted to set things up
> simply so X&Y move no faster than 40mm/sec, what
> would I set the EEPROM settings to. I assume it's
> this lot:
>
> x_axis_max_feed_rate:
> y_axis_max_feed_rate:
> x_axis_homing_feed_rate:
> y_axis_homing_feed_rate:

That limits the max. feedrate. Set to 2400 for 40mm/sec, For homeing it's ok, for max feedrate possible but slow.

> Max_jerk:

Higher values here give better results, but the value is limited by the strength of your motors. If you get misalignments in your print this might too high. Default should work on most printer.

> x_axis_acceleration:
> y_axis_acceleration:
> x_axis_travel_acceleration:
> y_axis_travel_acceleration:

I used values from 1000 (slow) till 7000. Currently settled with 3000.
>
> Also, my extruder retracts and unretracts far too
> fast. It'll break if I don't do something. What
> would I set these to to ensure traction speed of,
> say, 40mm/sec:
> EXT0_MAX_FEEDRATE:
> EXT0_MAX_START_FEEDRATE:
> EXT0_MAX_ACCELERATION:
> EXTRUDER_SPEED 40.0 ?????? (matches my Skeinforge
> v43 feedrate)
>

Look for

#define EXTRUDER_SPEED 20.0

which is the real hart limit for extruder feedrate in mm/sec. With your steps per mm for extruder and 40mm/s you are pretty high. With 639 Steps/mm * 40mm/s you have a frequency off 25560 which was the reason for the communication problems. Also this is fixed, I would limit it to 20-25 mm/sec. The extruder should be able to start at this speed without any acceleration.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: GEN6 firmware seems to upload but no changes are reflected
November 11, 2011 09:10AM
would you guys know how i can revers the directions on my axis's in the firmware, i tried and then uploaded the changes and it didnt get better only worse
my z axis goes up instead of down
can i get rid of the opto end stoppers and manually set the location?

i have the prusa mendel with gen6 electronics and latest mendel-parts firmware all the wires are crimped and the motors go in both directions manually i did do a test print but the nozzle is not near the bed (bout 3 inches high)

any help would be appreciated

Thank You in advance
Paul
Re: GEN6 firmware seems to upload but no changes are reflected
November 23, 2011 05:49PM
Hi, this is a slightly different problem to that described in this thread, but since those responding have clearly a great deal of experience in this area, I hope there might be a suggestion or two made here to help? I have a GEN6 board built from pcb and bought in components. It uploads firmware OK and when connected with Pronterface, responds with the Marlin current rev and generates the Start message, to which Pronterface reports ONline. However, from that point onwards, I get no responses from any commands of any type, even garbage commands elicit no response. I have checked using serial. print statements that the main loop is working. It looks as if the serial receive interrupt is not enabled. But, even though I have a AVR dragon debugger, I cannot debug the problem because I have found it extremely difficult to get the marlin code into Studio4 or Studio5. So, two questions - anyone else had this problem, and more importantly, how can the code be debugged properly, as Arduino appears to mess up the normal C compile process.

thanks in advance,

Robert.
Sorry, only registered users may post in this forum.

Click here to login