Welcome! Log In Create A New Profile

Advanced

New firmware 1.09a-zpl

Posted by chrishamm 
New firmware 1.09a-zpl
June 10, 2015 06:57AM
Hello everyone,

I've released version 1.09a of my firmware fork on GitHub. It provides several improvements and a few bug fixes, but the major change in this release is the introduction of a new Makefile to build the firmware easily with Arduino 1.6.4. For Windows there is also a build script available, however that script does NOT evaluate the build dependencies yet. This means, if you're using Windows, the script will rebuild the firmware from scratch whenever you call it. If there is reasonable request for a more sophisticated build solution on Windows (as is the case already on Linux), I may expand it a bit more and add the missing dependency analysis to it.

But here again the complete changelog of my latest firmware version:

Quote

Introduced new Makefile for Linux and OS X, and a basic PowerShell compile script for Windows
- "make" and "make all" compile the firmware
- "make upload" resets the Duet via 1200BPS touch (only *nix-based OSs) and uploads firmware binary via bossac
- "make clean" purges the build directories
- Designed for Arduino 1.6.4 in conjunction with my Arduino board files (see Hardware directory)
Updated README file
Implemented M404 (filament width and nozzle diameter)
Added proper IsPrinting interface to PrintMonitor class
M24/M32 use the stack when a new file print is being started
M552 reports both the configured and actual IP addresses
Merged in (potential) fix for modulated Z probe filter (thanks dc42)
Made Z height detection more robust [G91/G90 is now checked]
Added experimental support for KISSlicer STABLE
Decreased file info scan length at the end of a file from 200K to 128K (appears to be sufficient)
Bug fix: T0 could not be used in config.g
Bug fix: FTP did not work if IP address was obtained via DHCP
Bug fix: Fixed and tested network disable/enable feature
Bug fix: Filament-based estimation occasionally returned bad time values at the end of a print
Bug fix: rr_connect returned an error message if a very long HTTP request was passed

Also, if anyone finds bugs in my Duet Web Control (especially if it's related to the Files and/or Print Status pages), please flash my firmware once and confirm they can be reproduced with my firmware as well. This would make it easier for me to track down potential issues.

Feedback is appreciated as always - if you have any questions or problems, please post them here.


P.S. If anyone wants to try out my Duet board files under Windows, please ensure you install Arduino's SAM package first. Else you will probably get a NullPointerException in the Arduino IDE, however this step is (for some reason) not necessary under OS X and/or Linux.
Re: New firmware 1.09a-zpl
June 20, 2015 06:25AM
Hello,

I tried this firmware version. All in all very impressive but I found some small bugs.
- If there is no macro directory on the SD-card and you try to upload a macro-file you get an Ajax connection error.
- Sometimes I get a stack overflow
08:41:11
G28 Z
Error: Push(): stack overflow!
- After some time if I cancel a print and try to restart it the print does not start. I have to cancel the print again (in this case the head is not moving) and to restart the print.

To be honest I do not use a standard command order so I explain what I did (and why)

I am testing this BuildTak and this really annoys me. You have to find the right print distance by trial and error. You have to start way above the bed so here are my steps.

- Homing all axis
- Start testprint
- No layer adhision
- Pause and cancel print
- Move Z upwards +10
- Move X forwards +10
- Move Y +100 (Endstop)
- Clean the hot end
- Changing the parameter G31
- Start again (Alternativly I am homing the Z-axis only)

config.g (I did not take much care about the comments):
; RepRapPro Ormerod
; Standard configuration G Codes
M111 S0; Debug off
M550 POrmerod; Set the machine's name
M551 Preprap; Set the password
M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; Set the MAC address
M552 P192.168.178.14; Set the IP address
M553 P255.255.255.0; Set netmask
M554 P192.168.178.1; Set the gateway
M555 P2; Emulate Marlin USB output
M92 E420; Set extruder steps/mm
G21 ; Work in mm
G90 ; Absolute positioning
M83 ; Extrusions relative
;M574 X0 Y2 Z0 S1					; set endstop configuration (Y endstop only, at high end, active high)
M558 P1 ; Turn Z Probe on
M305 P0 H14 L-11					; set ADC correction
M305 P1 H14 L-11					; set ADC correction
;G31 Z2.1 P600 ; Set Z probe height and threshold Blue Tape
;G31 Z1.4 P500 ; Set Z probe height and threshold Glass
;G31 Z1.6 P500 ; Set Z probe height and threshold Glass alternative
;G31 Z0.6 P610 ; Set Z probe height and threshold Glass
G31 Z1.4 P470 ; Set Z probe height and threshold BuildTak
M906 X800 Y1000 Z800 E1000 ; Motor currents (mA)
M201 X800 Y800 Z15 E1000; acceleration tweaks for improved finish
M203 X15000 Y15000 Z250 E3600; speed tweaks for improved finish
M569 P0 S0            ; Reverse the X axis
;M556 S78 X-0.63 Y1 Z-0.3
;M556 S77 X0.25 Y0.5 Z-1
;M556 S77 X0.75 Y0.5 Z0.25
M556 S79 X0.0 Y-0.25 Z-0.625
M566 X200 Y200 Z30 E20              ; Minimum speeds mm/minute
M208 X210 Y200						; set axis travel
M208 X-5 Y0 S1							; set axis minimum
;G30 P0 X60 Y20 Z-0.039
;G30 P1 X60 Y180 Z0.447
;G30 P2 X180 Y180 Z2.947
;G30 P3 X180 Y20 Z2.845 S
;T0
M563 P0 D0 H1                       ; Define tool 1
G10 P0 S0 R0                        ; Set tool 1 operating and standby temperatures
;T0
;End of config

Homing all
; Ormerod 1 homeall file for use with dc42 Duet firmware
; Adjust the bed upper and lower limits in config.g (M208 commands) to get the correct homing positions
G91
G1 Z4 F200
G1 X-240 Y240 F3000 S1
G1 X4 Y-4 F600
G1 X-10 Y10 S1
G90
; Adjust the XY coordinates in the following to place the IR sensor over a suitable spot
; If you are using a dc42 IR sensor then you can change the coordinates to be near the centre of the bed
G1 X45 Y0 F2000
G30
; This file leaves the head at the zprobe trigger height so that you can slip a piece of paper under it and then do G0 Z0 to check the height.
; If you prefer to send the printer to X0Y0Z0, un-comment the following lines
;G1 X0 Y0 F5000
;G1 Z0

Home z
G91
G1 Z3 F200
G90
G1 X130 Y80 F12000
G30


Slicer: Simplify3D 4.0; sometimes CraftWare 1.14 or Cura 2.7
Delta with Duet-WiFi, FW: 1.20.1RC2; mini-sensor board by dc42 for auto-leveling
Ormerod common modifications: Mini-sensor board by dc42, aluminum X-arm, 0.4 mm nozzle E3D like, 2nd fan, Z stepper nut M5 x 15, Herringbone gears, Z-axis bearing at top, spring loaded extruder with pneumatic fitting, Y belt axis tensioner
Ormerod 2: FW: 1.19-dc42 on Duet-WiFi. own build, modifications: GT2-belts, silicone heat-bed, different motors and so on. Printed parts: bed support, (PSU holder) and Y-feet.
Ormerod 1: FW: 1.15c-dc42 on 1k Duet-Board. Modifications: Aluminium bed-support, (nearly) all parts reprinted in PLA/ ABS, and so on.
Re: New firmware 1.09a-zpl
June 20, 2015 09:42AM
Hi Treito,

Thanks for reporting these problems. I know the macros directory isn't created automatically, which is why I provide a standard SD image, but I'll consider adding a check to my next firmware release to create that directory automatically on boot. I could also reproduce the stack prolem you described and I'll investigate why this is happening. I'll let you know when I have a fix ready.
Re: New firmware 1.09a-zpl
June 21, 2015 02:55AM
Thanks for your answer. As I started there was no macro directory and since I had settings you only upgrrade your settings and you (at least I) do not care about new directory. Okay it was definitely my fault but user faults should be catched up und not lead to an error only to an error message.


Slicer: Simplify3D 4.0; sometimes CraftWare 1.14 or Cura 2.7
Delta with Duet-WiFi, FW: 1.20.1RC2; mini-sensor board by dc42 for auto-leveling
Ormerod common modifications: Mini-sensor board by dc42, aluminum X-arm, 0.4 mm nozzle E3D like, 2nd fan, Z stepper nut M5 x 15, Herringbone gears, Z-axis bearing at top, spring loaded extruder with pneumatic fitting, Y belt axis tensioner
Ormerod 2: FW: 1.19-dc42 on Duet-WiFi. own build, modifications: GT2-belts, silicone heat-bed, different motors and so on. Printed parts: bed support, (PSU holder) and Y-feet.
Ormerod 1: FW: 1.15c-dc42 on 1k Duet-Board. Modifications: Aluminium bed-support, (nearly) all parts reprinted in PLA/ ABS, and so on.
Sorry, only registered users may post in this forum.

Click here to login