Welcome! Log In Create A New Profile

Advanced

New firmware 0.89c and updated web interface 0.995

Posted by chrishamm 
New firmware 0.89c and updated web interface 0.995
July 25, 2014 11:20AM
I've just released version 0.89c of my firmware fork on [github.com]. The changes in this release are:


Quote

- M558 can be used to specify the axes for which the Z-probe will be used (CAUTION: If you're upgrading from 0.89b-zpl, you have to invert the axis parameters again! They had to change in order to comply with RRP's expectations)

- Z dive height for G32 (automatic bed compensation) was lowered from 8mm to 5mm

- Cold extrusion limit was decreased from 170°C to 160°C

- Implemented workaround for an extruder move bug

- Merged in changes from dc42's 0.78e firmware (thanks again!)

- Minor changes and bug fixes


Apart from that I've updated parts of the web interface, here's a screenshot:



You can get that one from [github.com] as well. The new entry for "Fan RPM" doesn't display any values yet, but I consider implementing this for my 4-pin PWM fan. I'd love to test the web interface with a multi-extruder machine, but unfortunately I don't own a Duex4. Please note you MUST use my firmware fork if you want to use the updated web interface, because it requires a few minor changes in the firmware.

IMPORTANT: As with my other two 0.89 releases, please make sure you either call "M569 P0 S1" or invert the wiring for your X-axis before you home any axes, or the print head will move in the wrong direction! If you're upgrading from 0.65 or earlier, you will also have to change the wiring for the Z-probe (see [reprappro.com]).
Re: New firmware 0.89c and updated web interface 0.995
July 26, 2014 09:52AM
Hi zpl,

It's nice to see the web interface show temps for more than 2 heads, but unfortunately your new interface doesn't meet the requirements of multi-head printing very well. Neither does my 0.98 version. The reason is that with multi-head printing, the standby temperature needs to be adjusted as well. I'm planning to rework the interface so that the following is displayed for each head heater:

1. Head number. Clicking on this will activate it if it is not active, by sending the appropriate T command. Clicking on it when it is active will send T0. This is what 0.98 already does.

2. Status. This can be off, standby, or selected. Only one head can be selected at a time. The firmware already returns the selected tool number, but it does not yet differentiate between tools that are off and tools that are on standby. It will need to return this information too. The active head is already highlighted in 0.98. Possibly we could show the status by adding a second kind of highlighting; or we could add an "Off" flag somewhere.

3. Actual temperature, as now.

4. Selected active temperature. As now, there will be a drop-down list, and the facility to enter a value. However, entering a value will no longer automatically select the head. I want to have the firmware return these values so that they are displayed correctly on reconnection.

5. Selected standby temperature, details as for selected active temperature.

I want (2) because currently it is confusing. If a head is at room temperature then it could be off (e.g. after a M0 or M1 command), or active with the set active temperature set to zero, or on standby with the selected standby temperature set to zero. I want (4) and (5) so that I can adjust the temperatures of non-printing heads during a print without having to enter G10 commands.

I think there is a case for showing the extruder positions with the head info as well, although we should allow for one head (i.e. tool) having multiple extruders. If RRP get their mixing head working, then we will also need to be able to control multiple extruders associated with a single tool.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: New firmware 0.89c and updated web interface 0.995
July 26, 2014 02:23PM
Quote
dc42
1. Head number. Clicking on this will activate it if it is not active, by sending the appropriate T command. Clicking on it when it is active will send T0. This is what 0.98 already does.

Yep, this is working in my web control fork, too.

Quote
dc42
2. Status. This can be off, standby, or selected. Only one head can be selected at a time. The firmware already returns the selected tool number, but it does not yet differentiate between tools that are off and tools that are on standby. It will need to return this information too. The active head is already highlighted in 0.98. Possibly we could show the status by adding a second kind of highlighting; or we could add an "Off" flag somewhere.

I see, this may be interesting when running more than one nozzle, but I don't want to add more text than necessary. Alternatively, we could modify the web interface to highlight active, standby and inactive heaters by changing the background colour of each head temperature cell dynamically. I could imagine using light green for active, light yellow for standby and plain white for inactive heads.

Quote
dc42
4. Selected active temperature. As now, there will be a drop-down list, and the facility to enter a value. However, entering a value will no longer automatically select the head. I want to have the firmware return these values so that they are displayed correctly on reconnection.

With my fork, it won't select any head if a new temperature is specified. Instead it only sends an M104 G-code to the firmware, so this only affects the selected head. If you want to change the temperatures for unselected heads, my idea would be to add an extra arrow next to each head label on the right. When clicking on one of them, it would be nice to get a small pop-up showing the current target and standby temperature and to modify them independently if desired. I believe it would be nice to have an extra button to turn off heaters, too.

Quote
dc42
5. Selected standby temperature, details as for selected active temperature.

We could add a checkbox below the input box for "Selected Head" to specify whether the target or standby temperature should be set. The current standby temperature could still be retrieved if we decide to implement that pop-up idea I mentioned.
Re: New firmware 0.89c and updated web interface 0.995
July 26, 2014 04:31PM
Quote
zombiepantslol
Quote
dc42
1. Head number. Clicking on this will activate it if it is not active, by sending the appropriate T command. Clicking on it when it is active will send T0. This is what 0.98 already does.

Yep, this is working in my web control fork, too.

Quote
dc42
2. Status. This can be off, standby, or selected. Only one head can be selected at a time. The firmware already returns the selected tool number, but it does not yet differentiate between tools that are off and tools that are on standby. It will need to return this information too. The active head is already highlighted in 0.98. Possibly we could show the status by adding a second kind of highlighting; or we could add an "Off" flag somewhere.

I see, this may be interesting when running more than one nozzle, but I don't want to add more text than necessary. Alternatively, we could modify the web interface to highlight active, standby and inactive heaters by changing the background colour of each head temperature cell dynamically. I could imagine using light green for active, light yellow for standby and plain white for inactive heads.

In 0.98 I already use a grey background on the active head. The problem I see with extending this is that the head text is printed in a different colour for each head (to act as a key to the graph), so apart from grey it's hard to think of background colours that will work with all heads. But I've had another idea, see later.

Quote
zombiepantslol
Quote
dc42
4. Selected active temperature. As now, there will be a drop-down list, and the facility to enter a value. However, entering a value will no longer automatically select the head. I want to have the firmware return these values so that they are displayed correctly on reconnection.

With my fork, it won't select any head if a new temperature is specified. Instead it only sends an M104 G-code to the firmware, so this only affects the selected head. If you want to change the temperatures for unselected heads, my idea would be to add an extra arrow next to each head label on the right. When clicking on one of them, it would be nice to get a small pop-up showing the current target and standby temperature and to modify them independently if desired. I believe it would be nice to have an extra button to turn off heaters, too.

Quote
dc42
5. Selected standby temperature, details as for selected active temperature.

We could add a checkbox below the input box for "Selected Head" to specify whether the target or standby temperature should be set. The current standby temperature could still be retrieved if we decide to implement that pop-up idea I mentioned.

No, I want to display the active and standby temperatures of all the heaters all the time. Given this, one way to show the status of each head would be to use a grey background for the active temperature if the head is active, for the standby temperature if it is on standby, and for neither if it is off. I'll have a go at designing a layout along these lines.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Sorry, only registered users may post in this forum.

Click here to login