Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Duet3D/RepRapFirmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-16Corrected adjustment to number of decimal places when printing floatsDavid Crocker
2021-11-04Static analysis fixesDavid Crocker
2021-10-31Annotations for static analysisDavid Crocker
2021-10-28SBC improvements for 3.4-b6Christian Hammacher
Refactored various parts of the SBC interface Renamed Linux to SBC in various places CAN updater checks if file is present on SBC before update SBC task is only woken up when SPI transfers finish Bug fix: Codes that were sent back to the SBC (e.g. from USB) caused temp reports to be printed Bug fix: SBC reconnects could take longer than expected
2021-03-19RefactoringDavid Crocker
Moved accelerometer functions from GCodes3.cpp to Accelerometers.cpp GCodeResult.h and MessageTypes.h are now #included in RepRapFirmware.h
2021-03-04Created Platform and PrintMonitor folders within /srcDavid Crocker
2021-02-17Use stdext::inplace_function insteaed of std::functionDavid Crocker
2021-01-20Partway through cleaning up #if SAME5x crazynessManuel Coenen
2021-01-19Fix remaining linker issuesManuel Coenen
2020-12-08Changed flash_write_user_signature to avoid using a static 512b bufferDavid Crocker
2020-11-20debugPrintf now uses less stackDavid Crocker
2020-11-06Added memcpyf and memcpyi32, renamed memcpy32 to memcpyu32David Crocker
2020-11-06Added memcpy32David Crocker
2020-10-03Duet 3 Mini CAN fixes and improvementsDavid Crocker
2020-07-28Fixes for latest CoreN2GDavid Crocker
2020-04-30Various changes for 3.01-RC11David Crocker
Changes for new interface to Bitmap::Iterate Duet3 expansion boards now report fan PWM Increased SBC SPI connection timeout to 8 seconds Pass G29 commands to SBC
2020-01-22Bug fix and more Object Model fieldsDavid Crocker
Fixed bad JSON in M408 reports when no fans are configured Added more object model fields: kinematics, machine coordinates Refactored code that generates M408 responses
2020-01-19Refactored handling of bitmaps in the OMDavid Crocker
Also fixed bug with # operstor on string-valued OM variables
2020-01-19Major refactoring, bug fixes in function evaluationDavid Crocker
Changed all bitmaps to use the bitmap class from RRFLibraries Fixed bugs in functoin evaluation
2019-12-16Added more noexcept specifiersDavid Crocker
2019-12-02Ethernet and other fixesDavid Crocker
Fixed data corruption during file uploads. We now use a separate task to read data from the GMAC. Bug fix for M574 S0 Bug fix for software reset data report wheh no module was spinning
2019-11-05VariousDavid Crocker
Changed mapping form extruders to logical drives, to reduce memory usage when MaxAxesPlusExtruders < MaxAxes + MaxExtruders When CAN expansion is supported, use a bitmap of logical drives moving in the DDA to detemine when all logical drives including remote ones have stopped moving Allow D to be used as an axis letter Increased maximum number of axes to 10 on Duet 3 Reduced number of default exruders to 1 for all builds Corrected a bug in G38 handling Changed software reset code to allow 5 bits for the module number, because we have more than 16 module numbers Preparation for implementing M950 S and P on expansion boards
2019-07-14Bug fixesDavid Crocker
Fixed memory corruption bug Fixed delta trilateration when the rods are different lengths M118 messages to telnet now have newline appended Moved string compare nfunctions to RRFLibraries project Changed the form of paths to syscalls.o so that they don't depend on the file being present
2019-07-02Consolidation after mergeDavid Crocker
Reverted some changes to Linux/MessageFormats.h and Linux/BinaryParser.cpp for compatibility with the existing SDF release Added HAS_MASS_STORAGE definition Removed lots of mass storage code when HAS_MASS_STORAGE is false Removed non-RTOS code Moved SPI channel usage definitions into CoreNG Added some new CAN message formats (not used by this project yet)
2019-06-18Fixed merge of RRFv3 changesChristian Hammacher
Merged in changes of RRFv3 as of 29 May Changed Linux "transfer ready" to "transfer clock" pin Bug fix: Fans were not initialised
2019-04-23Duet 3 initial working buildDavid Crocker
Only the Duet_NG configuration builds at present. New features: - Pins are named instead of numbered - Support multiple endstops per axis - Support multiple Z probes - Support M950 for heater and fan mapping - GPIO pins now need to be allocated before they can be used by M42 or M280 - Laser power velocity ramping - New codes for 12864 display - Added LinearAnalogSensor - Height following mode is mostly implemented Bug fixes: - M109 didn't run the tool change files if no tool was selected initially - The M290 command written to resurrect.g didn't use absolute babystepping - The M32 command written to resurrect.g didn't quote the filename - M291 no longer locks the movement system, it stopped the jog buttons working - M302 now waits for standstill
2019-04-05Bug fixesChristian Hammacher
Got code execution, replies and basic object model reports working
2019-02-11Merge remote-tracking branch 'origin/dev' into v2-chrishammChristian Hammacher
Also improved project portability
2018-12-22More changes for 2.02RC7David Crocker
Further changes to HttpResponder for DWC
2018-12-222.02RC7 provisionalDavid Crocker
Always include a content-length header when returning a file in response to an HTTP request G2/G3 can now be used to draw complete circles In CNC mode, G0/G1/G2/G3 commands can be repeated just by providing the new parameters
2018-12-20On the way to 2.02RC7David Crocker
HTML responder changes for new DWC Failure to delete a file no longer generates a global error message if the reason is that the file or path was not found. This was done for the Cura upload plugin, and also means that the 'silent' parameter to the delete call is no longer needed.
2018-12-18Bug fixes to 2.02RC6David Crocker
Fixed crash on homing a CoreXY machine when both DDA and Move debugging are enabled Fixed 12864 image display issues
2018-10-20Merge remote-tracking branch 'origin/v2-dev' into v2-chrishammChristian Hammacher
2018-10-17Version 2.02RC32.02RC3David Crocker
Bug fixes for 12864 display
2018-10-17Nearly version 2.02RC3David Crocker
New G/M code features since 2.02RC2: G10 L2 and G10 L20 can now be used with no P parameter, meaning use the current coordinate system G60 now saves the current tool as well as the current user coordinates M116 now accepts an optional S parameter to specify the acceptable temperature difference M205 is supported to set the jerk limits (in mm/sec) as an alternative to M566 M208 now accepts Xaa:bb Ycc:dd etc. as an alternative to separate M208 S0 and M208 s1 commands M305 temperature sensor type 300-307 now supports a C parameter to select the input channel and a D parameter to select differential mode M408 now accepts a P parameter. P0 (default) gives the previous behaviour. P1 S"filter" now returns those parts of the object model that match "filter". M557 now supports a P parameter to set the number of X and Y points, as an alternative to using the S parameter to set the spacing M558: zero or negative Z probe tolerance (S parameter) with A parameter > 1 now means always average all readings M558 now accepts a C parameter to select the endstop number when the mode is 4. M558 P6 is translated to M558 P4 C4, and M558 P7 is translated to M558 P4 C2. M600 is now supported T R# (where # is a restore point number) is now supported - Other changed behaviour since 2.02RC2: When storage module debug is enabled, failing to open a file is now a warning not an error because it is a normal accurrence when optional files are not present (e.g. tool change files, start.g, stop.g) Increased number of restore points from 3 to 6 When the WiFi module is in client mode it tries to auto-reconnect continuously if the connection is lost Implemented the object model framework and a few variables Z leadscrew or manual be levelling adjustment results are now logged even if the process failed, if logging is enabled Mesh probing results are now logged, if logging is enabled Error and warning messages generated by incorrect GCode commands are now logged, if logging is enabled - Bug fixes since 2.02RC2: The motor phase open circuit message is clearer, is now a warning instead of an error, and spurious instances of it should be reduced M918 with no parameters now reports current settings (Duet 2 Maestro) Further limited the amount of CPU time used to refresh the 12864 display Fixed incorrect check for G2/G3 missing parameter Fix CoreXYUV stall detection Absolute babystepping was be restricted to 1mm change After using G10 L2 or G10 L20 to change workplace coordinate offsets, the user positions of axes other than X and Y were not updated M915 now recognises the E parameter M915 output was truncated if no drives were specified On the Duet 2 Maestro, if a BLTouch Z probe was used then the pin didn't always stay retracted after the probe was triggered On the Duet 2 Maestro, if the SD card menu on the 12864 display was used then the network kept disconnecting If G30 S-1 was sent with the Z probe type set to zero then reported trigger height was an undefined value Fixed potential buffer overflow issues in 12864 menu code - Other changes: Introduced class IPAddres and refactored most usage oif IP addresses
2018-09-03Merge remote-tracking branch 'origin/v2-dev' into v2-chrishammChristian Hammacher
2018-08-31Version 2.02RC12.02RC1David Crocker
Reduced default stealthChop/spreadCycle crossover speed Increased length of stepper driver open load timer to avoid false open load reports#If heater failes due to bad curve fit, report gani/time constant/dead time as A, C and D as in M307 When pausing, inclucde the pause coordinates in the "Print paused" message
2018-08-22Towards 2.02beta2David Crocker
Bux fix: overheating TMC22xx drivers were reported in M122 but not to the console (probably appllied to TMC2660 as well) Add driver open load warnings (experimental) Enabled MCU temperature and DHT sensor in SAME70 build Fixes for in-application firmware update on SAME70 build
2018-07-24Merge remote-tracking branch 'origin/v2-dev' into v2-chrishammChristian Hammacher
2018-04-29Version 2.0beta3David Crocker
New features: - Stepper driver mode can now be set via D parameter in M569 - Stepper driver chopper control register can now be set via C parameter in M569 - USE THIS ONLY IF YOIU KNOW WHAT YOU ARE DOING! - When Z probe type 0 is selected and DWC/PanelDue have prompted for manual jogging, axis movement before homing is allowed Bug fixes: - If a network password was set, DWC disconnected with a "Not authorised" message after a large file was uploaded - If MaxReps got too high then a watchdog reset occurred. MaxReps has been replaced by a hiccup count. - M122 reported some parts of network status twice on Duet 2 Ethernet and Duet 2 Maestro - If a PT1000 sensor was configured using M305 but a thermistor was plugged in instead, the firmware reported semi-random high temperatures instead of an error - If a PT1000 sensor was configured using M305 and then M305 was used to change it back to a thermistor, it remained configured as a PT1000 - The M105 response on a multi-tool system was not in the exact format that Octoprint wanted
2018-04-02More RTOS workDavid Crocker
Got rid of the global scratchString Rationalised some String and StringRef functions Bug fix: if a motor stall triggered a pause, the driver numbers were not listed in the message Fixed possible race conditions in TMC2660 driver,
2018-03-29More RTOS workDavid Crocker
Changed delay() to suspend the current task for the specified number of ticks instead of looping Changed HSMCI idle callback to suspend the current task pending HSMCI interface statis change
2017-12-13Version 1.20RC1David Crocker
New features: - Heater PWM frequencies are limited to 1kHz to protect the heater mosfets - Tool offsets and fan mapping are now passed to DWC - More free memory is available, especially in the Duet 0.6/0.8.5 build - Maximum bed heaters increased to 4 for the Duet WiFi/Ethernet - The software reset data now records the date/time of the reset if known and a longer stack trace - The maximum length of GCode commands has been increased, in particular to allow long passwords in M587 commands Bug fixes: - Fixed M28/M29 file upload - Fixed some USB/Telnet response formats when in Marlin emulation mode - Fixed move timing when a long slow printing move follows a faster printing move - Heater tuning was not possible in 1.20RC1 - If a file being printed executed a macro right at the start, DWC could assume that the print had already finished (thanks chrishamm)
2017-11-18Version 1.20beta8David Crocker
New features: T R1 activates the tool that was active at the last pause M915 R2 and R3 actions are now implemented Extruder heater PWM values are now compensated for supply voltage Duet WiFi only: M587 and M589 without parameters now report the IP addresses etc. as well as the SSID (needs DuetWiFiServer 1.20beta9) When sensorless homing is used on a CoreXY printer, both X and Y motors are monitored for stalling when homing X or Y. Similarly for CoreXYU (both X and Y or U and V are monitored). When using a segmented kinematics such as SCARA, or when long moves are segmented due to mesh bed compensation, segmented moves can be paused between segments M562 with no parameters now clears all heater faults New debugging module 14 added to report debugging message from the WiFi module to USB. Use M111 S1 P14 to activate it. Under voltage and over voltage events are now logged Overheating drivers are now logged M81 power off commands are now logged Bug fixes: Workaround for SX1509B chip problem: if an analog write was performed to a pin on an SX1509B device, subsequent digital writes and pinMode calls didn't work When a print was resumed after power failure, the amount of extrusion during the initial partial move was incorrect
2017-09-21Version 1.20 alpha 2David Crocker
Removed define of printf=iprintf in build settings Removed Platform::Time() function, use millis() or millis64() instead Added event logging to SD card. MessageType is now a bitmap. Implemented M929. Enable pullup resistors on endstops 10 and 11 SCARA printers can now use the manual bed levelling assistant When using the manual bed levelling assitant, don't give an error if the bed screw corrections were out of range, and always leave the first screw alone M552 now supports connection to a specified SSID M572 now allows multiple D values Thermocouple type letter in M305 command may now be in lower case Bug fix: G29 bed probing on a SCARA printer gave spurious "not reachable" warnings and skipped probe points Protect against a dud command line containing the letter M being interpreted as a M0 command Fix reference to towers in the error message when trying to move a SCARA printer before homing it When updating firmware, warn that USB will disconnect Fix duplicate error messatge when opening a gcode file fails
2017-08-11Version 1.19RC7David Crocker
Don't enable pullup resistors on endstop inputs used for switch-type Z probes, to increase the threashold voltage a little Duet3D filament sensor support is now working
2017-06-23Version 1.19beta7David Crocker
New features: - M291 command is provided to display a message box with options for timeout, acknowledgement and Z jog buttons - M292 command is provided to acknowledge M291 messages - Manual delta calibration and bed compensation is supported (use P0 in the M558 command to indicate that there is no Z probe) - Minimum value for S parameter (maximum heater PWM) in M307 command is reduced from 20% to 1% - Core XYU kinematics are now supported (thanks Lars) - RADDS build now supports 9 motors (thanks Tom) - If a homing move uses parameter S3 instead of S1 then the axis minimum or maximum value is set to the current position instead of vice versa - M589 with no parameters now reports the Duet's own SSID - M589 S"*" now deletes the Duet WiFi's own access point details Bug fixes: - Tool X offsets are now applied on the next move even if it has no Z parameter - The tool change restore point coordinates now take account of X axis mapping - M588 P"*" command (forget all access points) now works - On the Duet WiFi, after using M589 to set up access point parameters, when M552 S2 was sent to start the WiFi module in AP mode it reported "WiFi reported error: invalid access point configuration". The fix also needs DuetWiFiServer version 1.19beta7. - On a delta printer the effector height is limited to reachable values Areas of code refactored (so watch out for new bugs): - G30 bed probing - Baby stepping - Tool offset implementation Upgrade notes: - SSIDs and passwords in M587, M588 and M589 commands must now be enclosed in double quotes - Height map filenames in G29, M374 and M375 commands must now be enclosed in double quotes - On a Duet WiFi you should also upgrade DuetWiFiServer.bin to version 1.19beta7. You do not need to perform a simultaneous upgrade, but M587 and M589 reporting functionality won't work correctly if your DuetWiFiFirmware and DuetWiFiServer versions are out of step.
2017-05-09Version 1.19.2David Crocker
Major refactoring to make it easier to support additional kinematics. Added M669 command to select and configure Scara kinematics
2017-05-04Release 1.19alphaDavid Crocker
First working release of new WiFi code Axes moving other than X (possibly mapped), Y and Z are not taken to be part of the feed rate Introduced SafeStrncpy and SafeStrncat
2017-05-01More work on 1.19David Crocker
New WiFi interface is working (slowly) Merged chrishamm's FTP code Merged chrishamm's scanner code Merged chrishamm's changes for P parameter on tool change command Fixed specila pin table entry for CS5 on Duet NG