Welcome! Log In Create A New Profile

Advanced

Need some Firmware Mods... Who wanna get paid to do it for me???

Posted by WatIDo 
Need some Firmware Mods... Who wanna get paid to do it for me???
November 24, 2017 01:16PM
I really do not like working with the Firmware for my machine. I'm not good at it and I usually screw things up so....

I'm looking for someone who can help out with a couple of (what I consider to be) small modifications. I will gladly compensate said individual.

Here's what I'm trying to get done.

I recently installed a Filament Runout Sensor. It was a Journey that tested the limits of my patience but, I got it done. Well sort of. It would seem that "As Released" In order for a Filament Runout Sensor to function the firmware coding ASSUMES that you will be printing from a SD card. I am not printing from an SD card and disabled this reference in the firmware to make it work. However, disabling the SD Card printing feature also disables the "Check to see if the print timer is running before throwing a Filament Runout Fault to my Arduino Mega 2560/Ramps 1.4 setup. This is really annoying because false runouts are triggered when just jogging the machine around.

Second... Filament sensor triggers Advanced Pause/M600 command routine when activated. This is very nice and works OK. However, a couple of things happen after the machine moves to the M600 Filament change position that kinda suck if you happen to be away from your machine. First thing that happens is that Repetier Host goes Deaf Dumb & Blind. All Commands are locked out and reports "BUSY PROCESSING" while it awaits for the M600 Routine to complete. Secondly, there is a parameter in the Advanced Pause/M600 command routine which allows you to specify the timeout value for the heaters to turn off if you are not around (I have mine set for 10 minutes). After M600 is triggered my machine moves off the part to it's change position and waits. After 10 minutes the Heaters turn off. THEN... My display shows "EXTRUDER HEATING, PLEASE WAIT". Of Course the heaters have been turned off, Repetier is locked out and I am officially DEAD in the water with only a HARD reset E-Stop to get me out of this hole. I'm pretty sure that this is not functioning the way it was intended.

So, What say you Brave soul? Ready to help open the frontiers of Filament Runout Sensor functionality for the masses? I have Remote Control Software on this machine and can grant access or I can email my Firmware files if you prefer to work on your machine? Either way, I need some help from someone who is smarter than I.

I thank you in advance for your consideration and I hope to hear from someone soon!
Re: Need some Firmware Mods... Who wanna get paid to do it for me???
November 25, 2017 05:04PM
Filament Runout should work without printing from an SD Card.

It maybe you are running older firmware. The "Extruder Heating" was a left over message but it is my belief that is correct in the current firmware.
When you click the encoder wheel, the nozzle will start heating. You don't want your host in the middle of this operation. You have to be at the printer to do the filament change. So, use the Encoder Wheel to get to the next phase of the process.
Re: Need some Firmware Mods... Who wanna get paid to do it for me???
November 27, 2017 12:26PM
Hey Roxy-Thanks for the reply and advice. I'm runing Marlin 1.6.6. As released Filament Runout does NOT work until you disable SD Printing in the Marlin.main.cpp section as follows:

Default if - (IS_SD_PRINTING && !(READ(FILRUNOUT_PIN) ^ FIL_RUNOUT_INVERTING))

Change - if (!(READ(FILRUNOUT_PIN) ^ FIL_RUNOUT_INVERTING))

I had no luck getting it to work until I made the above mentioned Mod and then I was 'cookin with gas'. However, as previously mentioned removing the SD_PRINTING comment also disables other features which make the world a better place.

Not 100% sure what you mean by "Encoder Wheel"? If you are talking about the Pot/button combo next to my LCD display, I can tell you that this is unresponsive when my machine is in "HEATING EXTRUDER/PLEASE WAIT" state.

Not really sure what to try or where to look which is why I offered to pay someone smarter than I t help figure this out. You game?? Thanks!
Re: Need some Firmware Mods... Who wanna get paid to do it for me???
November 27, 2017 04:02PM
Post your Configuration.h , Configuration_Adv.h and pins files.

Lets take a look see what you have.
Re: Need some Firmware Mods... Who wanna get paid to do it for me???
November 27, 2017 06:15PM
OK! Here ya go!! I REALLY appreciate y'all having a look and pointing me in the right direction. Like I said though- If someone wants to really dig into this and help me get this fixed quick I'll pay up!! THANK YOU!!!
Attachments:
open | download - pins_RAMPS.h (11.2 KB)
open | download - Configuration.h (57.9 KB)
open | download - Configuration_adv.h (51.3 KB)
open | download - Marlin_main.cpp (408.7 KB)
open | download - pins.h (14.4 KB)
Re: Need some Firmware Mods... Who wanna get paid to do it for me???
November 27, 2017 10:32PM
Runout sensor without SD Card

It appears you have to have "SD Support or Printjob Timer"
#error "FILAMENT_RUNOUT_SENSOR requires SDSUPPORT or PRINTJOB_TIMER_AUTOSTART."

So your line should look like this
if ( print_job_timer.isRunning() && (READ(FIL_RUNOUT_PIN) == FIL_RUNOUT_INVERTING)) // otherwise you get locked in a endless loop

And since you have 2 extruders you need two filament run-out sensors.
Filament run-out sensors can be tied to the same pin, if they are both normally open contacts on a switch or both open collector.

// Z-Axis Must be the same
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to same logic as "Z_MIN_ENDSTOP_INVERTING".

#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
/**
* A Fix-Mounted Probe either doesn't deploy or needs manual deployment.
* (e.g., an inductive probe or a nozzle-based probe-switch.)
*/
#define FIX_MOUNTED_PROBE
Re: Need some Firmware Mods... Who wanna get paid to do it for me???
November 27, 2017 11:26PM
And the "Gentleman & a Scholar award goes to... Mr. Roberts_Clif!! Thank you very much for your response Sir! I made the Mods you suggested and the good news is that when I am jogging my machine around and the Runout sensor trips a fault a M600 command is NOT generated. GREAT!! However... when I am, in fact, printing a part and the sensor trips a M600 command is still not generated. So, we have effectively disabled the Runout Sensor in all conditions. Uhg.

I should probably mention that during this print test I did not have my Heaters on so I was not extruding filament. Not sure if this is relavent but maybe the heaters being on/extrusion happening might be a condition which has to be met in order for Joy to exist in my Universe???

I am thinking (& could be wrong) that the problem lies within the "print_job_timer.isRunning" comment. I suspect that this command is also tied to the SD Card function (& the fact that I disabled it in the first place to get my senor to function at all). Is the Print Job timer connected to SD Printing only.

So... how do I see if my Print Job Timer is running when I am printing???

The Journey Continues!! Thanks again for your continued help!!
Sorry, only registered users may post in this forum.

Click here to login