Skip to content

Releases: MaslowCNC/Firmware

Maslow Firmware Version v1.06

14 Feb 23:58
Compare
Choose a tag to compare

Maslow firmware version 1.06 adds a number of important changes, especially relating to the way the PWM signals to the motors are generated. Both the left and right motors are now run off of the same timer, and there is now a setting to switch the PWM frequency. The machine also finds its position more quickly and there is an option to allow the chains to feed off of either the left or right side of the sprocket.

As always the community is to thank for nearly all of the improvements this time around. My (Bar) computer was broken for a good section of time, and the community took over not only development, but also reviewing and approving changes. Amazing.

Merged #390 Added to the guestbook a day ago
Merged #389 Add PWM frequency to system settings a day ago
Merged #386 Avoid using timer0 or timer1 for pwm a day ago
Merged #385 Change PWM signalling to use INx pins for PWM a day ago
Merged #384 Forward kinematic improvements; Sync Settings 7 days ago
Merged #383 Fix bug in storing encoder steps 9 days ago
Merged #382 Add Chain Wrap Direction 12 days ago
Merged #377 Changed rotationalDiskRadius to 250 from 100 13 days ago

Maslow Firmware Version 1.04

31 Jan 22:08
036bcf9
Compare
Choose a tag to compare

Just one change to the firmware this week, but it's a good one. We have in the past had issues with the different motors being driven from different timers. You may have noticed that they make slightly different noises. This week @blurfl made the brilliant observation that we could correct the issue and drive both motors in the same manner by switching which pins we used for the PWM control signal.

Merged #375 Rework motor commands to avoid PWM on pin12 a day ago

Maslow Firmware Version 1.03

17 Jan 19:03
ffb6371
Compare
Choose a tag to compare

Maslow Firmware v1.03 has a number of bug fixes and new features. The big bug fix this week is that there was an issue were when using the manual z-axis lines of gcode would gradually build up in the Arduino buffer eventually resulting in a buffer overflow. This is now fixed. The issue was that the halt command was sending an extra invisible '\n' newline character which. Credit to @krkeegan for tracking down what was going on. v1.03 also adjusts the PID values slightly to reduce jerky movements that some people were seeing with v1.02. Chain sag compensation is added in v1.03 which goes along with the new calibration routine. v1.03 makes changes to the calibration protocol so it must be paired with an update to Ground Control v1.03.

Thank you to:
@blurfl
@reecej
@krkeegan
@ladams00

For pull requests this week!

Merged #372 Move Startup ok to Setup 17 hours ago
Merged #371 Adjust KpV Value to Fix Choppy Movement Issue 21 hours ago
Merged #369 Chain Sag Correction for Triangular Kinematics a day ago
Merged #368 Catch Line Ending on Quick Commands; Remove Watchdog 8 days ago
Merged #364 ladams00 signing in... 9 days ago
Merged #362 Add a Simple Fake Servo Option 9 days ago

Maslow Firmware Version 1.02

03 Jan 22:20
f621f75
Compare
Choose a tag to compare

All of the changes to the firmware this week come from the unstoppable @krkeegan. The big change in version 1.02 (1.01 was a mid-week change that was never officially released) is that the machine settings are now stored in the EEPROM. This is important because it means that the machine remembers it's own dimensions instead of relying on Ground Control to send them each time. This release requires Ground Control 1.02 to work properly because the protocol to send the machine dimensions has changed.

Merged #354 Remove Unused Floating Point Number Files 7 days ago
Merged #350 Save Settings in EEPROM; Optimize RAM Usage 7 days ago

Maslow Firmware Version 1.00

20 Dec 21:56
fcf8937
Compare
Choose a tag to compare

Maslow Firmware version 1.00!

A number of significant changes this week, mostly related to improving the accuracy and calibration of the machine. Firmware version 1.0 fixes an issue with tool changes involving tool #0, significantly refactors and cleans up the code, Takes into account the radius of the gear sprocket when computing the machine position, allows floating point numbers to be used for the number of encoder steps per rotation, and fixes a bug where pressing 'stop' then 'home' would cause the bit to not retract before moving. Another great batch of contributions from the incredible community.

Merged #348 Fix problem with tools getting set to T0 2 days ago
Merged #347 Create Realtime Loop; Perform System Init on Stop 2 days ago
Merged #346 Set kinematics radius from the values sent during calibration 5 days ago
Merged #345 Update sprocket radius 5 days ago
Merged #344 Change Encoder Steps to Float - Conflicts Fixed 5 days ago
Merged #342 Split up CNC_Functions; Improve Include Inheritance 7 days ago
Merged #341 Update CNC_Functions.h 8 days ago
Merged #338 Delete the broken "Test Electronics" firmware 9 days ago
Merged #339 Fix for z not retracting before moving home 9 days ago
Merged #337 Include Sprocket Geometry in Triangular Kinematics 9 days ago

Maslow Firmware Version 0.99

06 Dec 22:19
ee43b08
Compare
Choose a tag to compare

This week we had some great firmware changes, mostly from the unstoppable @krkeegan. Every week when I go to write the "what changed this week" section here I'm blown away by how much he gets done. This week he fixed coordinated 3D linear movements so the z-axis can move in sync with the other axis, he fixed a bug related to making the stop button more immediate, and he made a major change change to the way the PID controller works so the applied voltage is tracked and used as a baseline which makes the signal smoother. You will notice the effect of this because the motors operate more quietly now. I made a change this week too to the way the B02 command is sent...because @krkeegan pointed out the format could be better matched to the G code standard. I think I am far from alone in saying thank you to @krkeegan for another amazing week of contributions.

Merged #336 Make firmware read B02 L1 R0
Merged #335 Additive Velocity Control; PID Logging; Voltage Logging
Merged #334 Clicking Stop, Stops the Axis Where it is Not Where it Should Be
Merged #333 Really Fix 3D Linear Movements
Merged #332 Add support to the B02 function to extend only one or the other chain
Merged #331 Recompute half width and half height

Maslow Firmware Version 0.98

22 Nov 22:21
571d2a9
Compare
Choose a tag to compare

This week we fixed a bug where some of the machines dimensions were not recomputed at the right time, we added a check for buffer overflows which will stop the machine, and added support for enabling using AUX1 to turn on and off the router from the settings window. Happy Thanksgiving everyone!

Merged #331 Recompute half width and half height
Merged #330 Halt on serial buffer overflow
Merged #328 Support zAxisAuto settings from GroundControl (B12 Y)

Maslow Firmware Version 0.97

16 Nov 00:12
44c63ff
Compare
Choose a tag to compare

Maslow Firmware v0.97 increases the maximum permitted feedrate to 1000mm/min, cleans up the way the PCB version is detected, and regroups where the motor control signals are defined to improve readability

Merged #327 re-group the motor control signals by motor
Merged #325 Seems to auto detect PCB v1.2
Merged #326 Increase max feedrate to 1000

Maslow Firmware Version 0.96

01 Nov 23:42
6a57f8b
Compare
Choose a tag to compare

This week's firmware adds the B15 command which will move the sled to the center of the sheet by first adjusting the length of the left chain, then adjusting the length of the right chain. This command is used during the calibration process so that the sled will now be moved to the center after the chains are measured out, a necessary step for machines with a very large work area.

#324 Add a B15 command

Maslow Firmware Version 0.95

25 Oct 23:08
Compare
Choose a tag to compare

An important bug fix this week from @blurfl which fixes issue #321. The issue had to do with the division of two floating point numbers being cast to type long which could be truncated to zero.

#322 Avoid divide by zero error in coordinated move()