Hi, I am observing a strange behavior with the latest release of Repetier Firmware (ver. 0.91): I have an H-bot (DRIVE_SYSTEM=1), and 2 extruders (NUM_EXTRUDERS=2). This configuration works fine so far. Now, after changing just NUM_EXTRUDERS=2 to NUM_EXTRUDERS=1 (ceteris paribus), and uploading the firmware to my Megatronics v2.0, I observe that my coordinate system is shifted 45deg. It seemsby andin - Repetier
[Lots of pictures] - 11 years agoQuoteSanjayM Patents I'm completely unphased by the whole patent debacle here - we are lucky enough that we know some of the best patent solicitors here in the UK purely by personal connection. I did see the afinia case, particularly the "Thin wall tube" patent. They pretty much laughed at the patent as being incredibly narrow in it's scope - in particular regarding specific dimensions and materiby andin - General
[Lots of pictures] - 11 years agoQuotetjb1 Thin-wall tube liquifier US 6004124 A Sure. The thin-wall is used in the E3D design as a thermal break, right?by andin - General
[Lots of pictures] - 11 years agoI did notice these claims. However, they represent narrow claims. In Patents, I believe that the general claims are more important, ... at least to my knowledge of reading patents. I.e. Claim (1) in this case would fit well into what the E3D design achieves with a thermal break between the hot-end and the cold-end (heatsink): 1. An extrusion head for depositing layers of solidifying material inby andin - General
[Lots of pictures] - 11 years agoQuotebiszkopt80 This Stratasys ainc lookslike some patent troll,look how many patents they have, they shold ban companys like this to sell and buy in EU The patent is not from a patent troll, but from Stratasys. This patent is being used in the legal case against Afinia. Talking about banning companies, etc doesn't really help. Instead we should act smarter and work our way around these patentsby andin - General
[Lots of pictures] - 11 years agoHi, I am thinking about using the famous E3D hotend in a new printer design that I am working on. The reviews are amazing - I am convinced that it is truly the best hot-end out there - good job! Nevertheless, in light of the recent patent infringement case in the US, I am worried whether the E3D design potentially infringes on the thin-tube liquifier patent: Patent US6004124 I am aware that itby andin - General
repetier Wrote: ------------------------------------------------------- > It depends on your plans. The firmware will > receive no commands, so if you use it simply as > safety guard, there is no need to remember > anything. Sure. > If you plan to move the head, it is off course > required or your print will start at the wrong > position. But then it is more a planned pausby andin - Repetier
repetier Wrote: ------------------------------------------------------- > also your code would not > compile as you move GCode *code inside paranthesis > building a new scope. An even easier solution > would be using > GCode::peekCurrentCommand(); > > and return NULL if door is open. Good point, thanks. Do I need to remember the coordinates (X,Y,Z,E) and return to the sameby andin - Repetier
Thanks for the clarification! If I look into the code, the objective of the method readFromSerial() is to make sure that the serial buffer gets filled with GCode commands from the host. These commands are then processed using: GCode *code = GCode::peekCurrentCommand(); ... if(code) {... Commands::executeGCode(code); code->popCurrentCommand(); } inside the void Commands::commandLoop()by andin - Repetier
Ok, as far as I understand the function void GCode::readFromSerial() takes the commands from the controller's serial buffer and translates them into action. If I prevent the controller from processing the buffer by blocking the above function during an active print-job, the buffer of the controller will get full - the controller will thus report this to the host - the host will therefore not senby andin - Repetier
That's pretty cool.by andin - Repetier
repetier Wrote: ------------------------------------------------------- > ...What it does is > sending changes of some settings to the host as > well. That way you can change e.g. speed > multiplier over a controller board and the > connected host will update that value. So how can I send these setting changes to the host? What settings can I change that way? For example, what wouby andin - Repetier
Hi, I noticed from another thread that the Repetier Firmware can send a pause request to the Repetier Host: OUT_P_LN("RequestPause:"); This is a very very useful feature! Are there any other similar requests/commands that one can send to the Repetier Host? It would be helpful to know these in order to explore the possibilities.by andin - Repetier
I am thinking about implementing a door to my 3D printer with a micro-switch which detects whether the door is closed or open. How can I let the firmware wait until the door is closed before starting with the print? In other words, which command or procedure can I tie the pin of the microswitch to prevent the printer from starting the print? PS: It would also be amazing if there is also a possiby andin - Repetier
Quoterepetier Put the microswitch on the UI_ACTION_PAUSE action. So, how do you do this exactly in code? Thanks! void PauseMe() { byte PauseButton = digitalRead(PAUSE_BUTTON_PIN); if (PauseButton) { ??? } } Is there also a way to unpause from the firmware? Is it also possible to send GCODE commands to the buffer during pause using e.g.: gcode_execute_PString(PGM_P cmd); ?by andin - Repetier
So how does the hijacked library improve the printer performance overall? Does it allow faster printing speeds since the printer can receive more commands per unit time? Does it reduce the communication errors? Sorry for being insistive- I am trying to understand. Thanks.by andin - Repetier
Ok, if the serial 2-5 were removed from hijacked library, than there is really no way of using it with the display since one would need at least two serial ports (serial1 for PC and serial 2 for display). I guess this is bad news for the touchscreen. Compromising communication speed for the ability to use the touchscreen is not a desirable option. Unless using standard serial library does not inby andin - Repetier
Does this mean that the Serial 1 will also use the original Arduino library if I define: #define EXTERNALSERIAL // Force using arduino serial ? Or would it be that the communication with the PC (GCode commands) will still perform over serial 1 using the hijacked library, while any other serial interfaces (e.g. display) will use the original Arduino library? Is there a way around this? For examby andin - Repetier
Hey, I have a 3.2'' touchscreen display from 4Dsystems (uLCD-32PTU). It is easily configurable, and the manufacturer provides all libraries for controlling it through the Arduino IDE. The communcation is done over a serial interface. I am using Megatronics so the hardware setup for the 4DS display is pretty easy: serial-3 pins (RX3,TX3) are easily accessible over the board's LCD port. The probby andin - Repetier
Thanks. I will try this in my functionsby andin - Repetier
Hi, Can I safely use gcode_execute_PString(PGM_P cmd); to place Gcode commands into the command buffer while printing? For example, I want to home X-axis during print. After homing, the print should continue. From repetier-Host, this is easily done manually: just enter "G28 X" during print. Now, is it possible to do the same safely from the Repetier firmware, e.g. like this: gcode_execute_PStrby andin - Repetier
just tried it: works well in the current release with the variable ((cur->dir) & 136)==136 (implemented under isEMove() in the class PrintLine the development version. The release version uses the pointer to the struct Printline.) Thanks again for the helpful hint! Looking forward to testing the development version. You mention that you implement(ed) the Z-Leveling support - what exactlby andin - Repetier
This looks interesting. the void isEMove() is not present in the current released version. Is there a chance to get this job done in the current version - maybe by polling some variables or integrating a routine that sets a flag inside an ISR of an extruder stepper? I have looked into the Repetier firmware, but I obviously don't know all the details - where could be a good starting point in the cby andin - Repetier
I appologize for my last post - it was intended as an answer to another question in another forum. The problem with the X/Y movement was indeed related to EEPROM settings, and to MAX_LENGTH in particular. I have checked EEPROM settings again, and these were messed up for some reason (0 or 255 values for some of parameters). After uploading the firmware again, the problem was solved. Thanks againby andin - Repetier
Hi, I am trying to find a way to set/reset a flag-variable when the extruder-stepper turns/stops, using Repetier Firmware. In other words, I am trying to make an LED lighten up when the extruder is extruding, and turn it back off when the extruder is not extruding. This seems to be not such an easy task! Which variables in the firmware can I poll to do this? I guess the question can be answeredby andin - Repetier
I have found the problem. It was a bad solder joint on the stepper pin. I guess I should have checked the electrics before bothering with questions about firmware. Thanks for offering your help!by andin - Repetier
Thanks, MAX_LENGTH values are correct. The device is homed with at x_max and y_min. The same problem persists even for G1 X10 or G1 Y10. EEPROM_MODE is set to 1. I can change EEPROM constants in Repetier-Host and this works. Where else could the problem be?by andin - Repetier
Thanks, I did that. The result is the same: 80steps/mm. I wonder if I have some misunderstanding of the settings in Configuration.h for steps per mm for an H-gantry. Maybe I am missing something else, here... I hope someone has an idea here.by andin - Repetier
Hi, I am testing a classical h-bot gantry with the Repetier-Firmware. So far, the movement direction and the endstops are working fine. However, the movement distance along the X and Y axis is not correct: eg. command G1 X200 makes the extruder move only around +170mm in the X-direction. G1 Y200 moves the extruder only around +170mm in the Y-direction. Settings (double checked in EEPROM): XAXby andin - Repetier