-
-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Foam Cutter Display #65
Comments
The error only happens when I define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER . This is the LCD I have which does work with the default Marlin 2.0 code. It shows a error in \Marlin-Marlin2ForPipetBot\Marlin\src\lcd\dogm\status_screen_DOGM.cpp cannot open source file "U8glib-HAL.h" (dependency of "dogm_Statusscreen.h") |
Hi. I made the initial tests a long time ago on the XY UV foam cutter, and I did write in planner.cpp a speed rule which is MAX ( speed(X,Y), speed ( U,V) ) to be used as the speed of cut for the max wire speed displacement. Have your tried this? Regarding U8glib, this is not specific to that branch of Marlin with the multiaxis. Should not.... Unless nobody else has tried to compile a multi axis version on something else than STM32. the piece of code \u8g_dev_tft_upscale_from_128x64.cpp is used to upscale by doubing pixels size to upscale from the small DOGM screen, and place a picture on a TFT RGB display 320x240. This is what we have on the Alfawise u30 STM32 board. For regular / standard black and white display, that should not be called. There might be a problem in the options you selected in config.h. |
Hi Hobiseven |
Hi, Regarding configuration, you need to be able to compile and then display on the 3 axis systems. Once that works, then I suggest to go for a 5 axis system, and do not use Z. I assume Mega 250 uses the regular DOGM display if I am correct. If that does not compile anymore, it would mean that there is an error in the definition of the menus/includes of the additional axis. This is possible. As I only compiled for a TFT screen, using pixel doubling, I never tried you configuration , and I do not know wether or not @DerAndere1 did try that on a Mega. He might tell us! Regards. |
Hi everyone. @hobiseven: for context: Keith asked for a feature to display axis positions on the DOGM display. The error reported here is due to the fact that I just added that feature to the Marlin2ForPipetBot_edge branch but made some typos. @rcKeith: This shoud be fixed now in Marlin2ForPipetBot_edge. The reason why I added the LCD_SHOW_SECONDARY_AXES feature to the Marlin2ForPipetBot_edge branch is because we need to test both, the newest planner, as well as the position display, anyway. When testing the edge branch, please do not modify planner.cpp for now. just Marlin/Marlin/src/module/planner.cpp Lines 2122 to 2125 in e9f3a60
I will prepare a seperate pull request for Marlin with just the LCD_SHOW_SECONDARY_AXES feature after everything in Marlin2ForPipetBot_edge works as expected. |
@hobiseven nice to see that you are still active here. If you are interested, you can also test the https://github.com/DerAndere1/Marlin/tree/Marlin2ForPipetBot_edge branch. It contains a mayor overhaul of the planner that now works similar to LinuxCNC for other multi-axis machines. I hope, FOAMCUTTER_XYUV still works as before. You will have to rename |
@rcKeith: When the other people asked "can we run the foamcutter like a 3d printer" I hope they dont expect a slicer to outpt multi-axis G-code. That does not exist. You still have to use a dedicated CAM software to generate the G-code. Also, I am not aware of any G-code sender (host software) that has controls for 4 axes (besides yours). So, using Marlin with the usual G-code senders like pronterface or octoprint will be the same experience as using grblHAL with G-code senders for 3 axis CNC machines (e.g. UGS https://winder.github.io/ugs_website/). It works also for 4 axis foam cutters, but only through G-code, as no buttons for the 4th axis exist in the GUI of the host software. |
Hi DerAndere1 |
Understood. customizing octoprint should be possible. I just saw this plugin for adding custom controls: https://community.octoprint.org/t/adding-my-own-buttons-to-the-control-tab-system-commands-not-gcode/4753 |
Yes, I had thought about that. I use it on my CR-10 V2 it works well on that. |
btw. Keith, is it ok if I add a link to the download section of your home page in my wiki or blog? I like to gather links to software for multi-axis CNC machines. |
Yes that fine, thank you |
Another combinatiion that might be worth investigating is grblHAL (the succesor of grbl that supports many boards and up to 6 axes) with https://pypi.org/project/bCNC/ (GUI for 3 or 6 axes). octoprint also has support for grbl: https://plugins.octoprint.org/plugins/bettergrblsupport/ . feedrate interpretation might not be as good as with Marlin's FOAMCUTTER_XYUV feature, though. |
My bad again. hope it compiles now. Sorry, I dont have the time to test compilation. |
Thanks, DerAndere1. Compiles fine thank you. Will update you when I have a working system. |
Can you Change that erroneos Line to
? Im not at my PC right now |
Hi DerAndere1 |
Can you attach a photo of how the status screen looks like with |
Hi |
When you have time, Can you test the latest Marlin2ForPipetBot_edge ? With your existing configs (LCD_SHOW_SECONDARY_AXES enabled), it should now show the positions for the extra axes in the top right corner instead of the fan icon. This should now allow other icons to be displayed. |
So right now, it seems that you have all compiled and working fine on a Mega2560, is this correct? You also have this LCD display with a few buttons, correct? I will have to also recompile on the Mega, as my Foam cutter was initially using the mega + a ramps all running with the Jedicut plugin. It will be simpler for me to reuse the Mega, although I did debug the code initially only on an STM32... Do you have a git accessible with your config please? |
Hi
Yes compiled and working on the Mega2560 but haven't actually connected any
motors yet to confirm pinouts. Hopefully later this week. The LCD is
working with a few custom menus and I have updated the language file as
well. I've created a GitHub repository here
https://github.com/rcKeith/MarlinFoamCutter but haven't added those changes
from your last email. We've been to the vet's this morning with our dog.
Had a few problems with him but he's fine now,
The heat control is via the D8 connector on the RAMPS board which is the
same as the spindle control so I've set that as a percentage reading and
altered the language file to say Heat control instead of Spindle.
I haven't used GitHub a great deal so hopefully, the repository is OK. I'll
add those changes later today.
Thanks
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Mon, 7 Feb 2022 at 11:03, Olivier Briand ***@***.***> wrote:
@rcKeith <https://github.com/rcKeith>
So right now, it seems that you have all compiled and working fine on a
Mega2560, is this correct? You also have this LCD display with a few
buttons, correct? I will have to also recompile on the Mega, as my Foam
cutter was initially using the mega + a ramps all running with the Jedicut
plugin. It will be simpler for me to reuse the Mega, although I did debug
the code initially only on an STM32... Do you have a git accessible with
your config please?
I have to cut new foam profiles ...
Do you also manage the heat percentage?
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLTZONIEPNRWXB5H7UPDUZ6RHXANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Ah you have been too fast :D I corrected that error just after asking you to test. Should be fixed already |
OK, I'll try again tomorrow, thanks
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Mon, 7 Feb 2022 at 20:06, DerAndere ***@***.***> wrote:
Ah you have been too fast :D I corrected that error just after asking you
to test. Should be fixed already
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLT2MOOACV6BLXMZ4BPLU2AQ35ANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Regarding your repository: it is ok to upload a local copy of the source code to your repo, but you lose the old commit history, so it will become more difficult to track authorship and to update your code with changes from upstream. Therefore, it is usually recommended to start with a fork as described below. I wrote down a detailed description of how to do it with VSCode/PlatformIO IDE here: https://derandere.gitlab.io/version-control#:~:text=Using%20Git%20with%20Microsoft%20Visual%20Studio%20Code%20and%20GitLens
|
Hi
Followed the instruction you sent and just one repository forked from
yours. Thanks
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Mon, 7 Feb 2022 at 21:22, DerAndere ***@***.***> wrote:
Regarding you repo: it is ok to upload a local copy of the source code to
your repo, but you lose the old commit history, so it will become more
difficult to track authorship and to update your code with changes from
upstream. Therefore, it is usually recommended to
1. fork my repo https://github.com/DerAndere1/Marlin on github:
https://docs.github.com/en/get-started/quickstart/fork-a-repo
2. , then git clone your new remote repo to get a local copy under
version control that preserves the whole commit history
3. Create a new local branch (e.g. called master) from the
Marlin2ForPipetBot_edge branch.
4. Switch to the master branch (git checkout master). Make your
modifications and commit your changes to that new branch.
5. git push the changes to the online repository
6. You can then go to the settings of your github repo and change the
default branch to master:
https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository
7. You can delete your current repository on github and rename your
new repository later:
https://docs.github.com/en/repositories/creating-and-managing-repositories/deleting-a-repository
. The warnings can be ignored if only you contributed changes after the
forking.
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLTYR7CCDH2CMTVRGQZLU2AZXTANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Ok! If you have not modified marlin core and only made screen changes that s ok… if you made critical changes in the core itself then let me know. I stay tuned. I plan to restart cutting foam in 2/3 weeks . |
I left out the axis letters on purpose to save space. I have no Idea why the position values / "??" for the V axis are trunkated. It looks like they are trunkated at the hight of the icon's bottom. I need a photo with |
Also: I need a photo of the screen with none of LCD_SHOW_SECONDARY_AXES or LCD_SHOW_SECONDARY_AXES_LINE enabled to see if there is more space at the top left corner. |
Hi DerAndere
Yes, no problem I'll get one later today. Thanks for all your help
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Wed, 9 Feb 2022 at 12:35, DerAndere ***@***.***> wrote:
I left out the axis letters on purpose to save space. I have no Idea why
the position values / "??" for the V axis are trunkated. It looks like they
are drunkated at the hight of the icon's bottom. I need a photo with
LCD_SHOW_SECONDARY_AXES enabled where actual positions values above 100
mm are shown (after homing) to see how much more I can squeeze it together.
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLT3IQCN46QRK6OFXX7DU2JNSXANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
OK, I'll do that as well.
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Wed, 9 Feb 2022 at 12:39, DerAndere ***@***.***> wrote:
Also: I need a photo of the screen with none of LCD_SHOW_SECONDARY_AXES or
LCD_SHOW_SECONDARY_AXES_LINE enabled to see if there is more space at the
top left corner.
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLT4TP5BKIHZQRDT5AHTU2JN7FANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I tried to reduce whitespace even more and added an option to show the position in the top left.
|
that should be fixed already in my branch. |
Hi folks Maybe this is something that was already done , but I ask as I am not sure. Can we create a default 4 axis xyuv + wire heat management configuration and get this merged in the marlin release? We could call it foamcutter_xyuv_ramps .... this way no more need to download forks from your repos.... Thanks! |
@hobiseven: we can think about that once this all works as expected. Please test rcKeith's config with my Marlin2ForPipetBot_edge branch and send a picture of the status screen. If you do not need the LCD_SHOW_SECONDARY_AXES feature, there is a foamcutter config since 2021: https://github.com/MarlinFirmware/Configurations/tree/import-2.0.x/config/examples/FoamCutter . If you have improvements or if there exists a project page for a community around a machine that needs different configs, feel free to open a pull request at https://github.com/MarlinFirmware/Configurations . |
Hi
I've been working on some other projects for a couple of days but I have
some more updates to come probably tomorrow. I've also managed to test some
spare stepper motors connected to the board and all worked fine after some
tweaks to the acceleration settings. The LCD_SHOW_SECONDARY_AXIS_LINE seems
to be the best option. Using the other version still truncates the bottom
characters. Thanks for your help and support. Hopefully next week I can
test my foam cutter for real.
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Sat, 12 Feb 2022 at 14:11, DerAndere ***@***.***> wrote:
@hobiseven <https://github.com/hobiseven>: we can think about that once
this all works as expected. Please test rcKeith's config with my
Marlin2ForPipetBot_edge branch and send a picture of the status screen. If
you do not need the LCD_SHOW_SECONDARY_AXES feature, there is a foamcutter
config since 2021:
https://github.com/MarlinFirmware/Configurations/tree/import-2.0.x/config/examples/FoamCutter
. If you have improvements or if there exists a project page for a
community around a machine that needs different configs, feel free to open
a pull request at https://github.com/MarlinFirmware/Configurations .
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLT6D2DKHNAPVICFEZQLU2ZTCNANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Hi DerAndere Would it be possible to change the planner.cpp from so the Z-axis could be used. This would need a NUM_AXES changing to 4 for the FOAMCUTTER_XYUV |
Hi I did the initial change in the planner and as far as I remember no issue to change the code as you propose. I also got the g28 issue back then but never really looked at it. Alternatively you can change your g28 to g28 x then g28 u and after that g28 y and g28 v. Also there might be a piece of code called g28.cpp, or at least a piece of code where g28 is coded. Using the #ifdef foamcutter_xyuv you could write a custom g28. I think homing x, u , y and v would make more sense. Cheers |
Hi Olivier |
Check if you have disabled HOME_Z_FIRST. In any case it will always first move the Z axis up a bit before homing other axes. This should not be a Z homing move though and it should not matter if no Z motor is connected With NUM_AXES 4, the default G28 homing sequence is (tested on hardware):
Maybe there is some magic happening with NUM_AXES 5 If for FOAMCUTTER_XYUV, the best sequence is XUYV, lets indeed modify file G29.cpp as suggested by hobiseven. Whenever there are homing or leveling issues, we now ask everyone to follow a standard procedure to gather more information:
Repeat this procedure, if needed, to demonstrate inconsistencies. From these logs we should hopefully get a better idea of what's going on with your machine. |
I implemented the homing sequence for G28 suggested by hobiseven in Marlin2ForPipetbot_edge |
Hi DerAndere if (z_homing_height && (NUM_AXIS_GANG(doX, || doY, || TERN0(Z_SAFE_HOMING, doZ), || doI, || doJ, || doK, || doU, || doV, || doW))) { So if Z is not connected it will presume it's at zero and try to raise it. This will never happen so it just waits. This is what I experienced yesterday with using XYUV and no Z connected If Z is above (z_homing_height) it will home as expected and it does. I moved Z to zero and then issued a G28 U and Z moved first because at the moment I'm using XYZU configuration with Z connected So maybe the answer is to use Anyway thanks for the details on the debugging it worked very well and I think we are on the right track Keith |
Hi DerAndere #define HOMING_BACKOFF_POST_MM { 5, 5, 0, 5, 5 } // (mm for linear axes, ° for rotational axes) Backoff from endstops after homing |
Hi DerAndere |
@rcKeith Glad to hear that all is ok on your setup now. We might need to open an other issue for the hot wire. I used to control this using Jedicut + parallel port emulator in the Mega + ramps, so from a hardware point of view, that should be OK. Watchout for the voltage limit on the RAMPS mosfet. I have a 48V DC PSU right now, and I will move that to an AC 220 chinese cheap solid state thyristor kind of thing.. I need a 2.5 meter long and thin wire to cut a flap mold for my airplane. |
Hi Olivier |
@rcKeith I would like to know if
? |
Hi DerAndere |
@rcKeith Great, so we have a working system that can serve as a baseline to benchmark further improvements. I am still trying to understand the code, Whenever you have time, could you try to copy the contents from my modyfied G28.cpp (raw file link: https://raw.githubusercontent.com/DerAndere1/Marlin/Marlin2ForPipetBot_edge/Marlin/src/gcode/calibrate/G28.cpp ) into your current G28.cpp file to replace its content and test command |
Ups. I updated the link in the above comment. |
Hi DerAndere
Homing of each individual axis does work already but I will try the updated
file. I think the current sequence is 1. X 2. Y 3. V 4. U
Keith
https://rckeith.co.uk <http://www.rckeith.co.uk>
…On Sat, 19 Feb 2022 at 23:12, DerAndere ***@***.***> wrote:
Ups. I updated the link in the above comment.
—
Reply to this email directly, view it on GitHub
<#65 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKDLLT5V2R6LBDDWLAVL23DU4APVDANCNFSM5NHALHJQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Hi DerAndere1
Thanks for your work on the 4 axis display.
I have this issue compiling I followed your instructions and have commented out AXIS4_ROTATES and AXIS5_ROTATES in configuration.h
Spent most of today to try and trace it but my skills aren't good enough.
Any idea what might be causing this?
Error as below from VSCode
Compiling .pio\build\mega2560\src\src\lcd\dogm\u8g_dev_tft_upscale_from_128x64.cpp.o
Marlin\src\lcd\dogm\status_screen_DOGM.cpp:506:23: error: macro "BOTH" requires 2 arguments, but only 1 given
#if BOTH(AXES4_ROTATES)
^
Marlin\src\lcd\dogm\status_screen_DOGM.cpp:30:0: error: unterminated #if
#if HAS_MARLINUI_U8GLIB && DISABLED(LIGHTWEIGHT_UI)
The text was updated successfully, but these errors were encountered: