Code Monkey home page Code Monkey logo

candle2's Introduction

Candle 2

GRBL and GRBL-Advanced controller application with G-Code visualizer written in Qt. Forked from denvi/Candle.

Supported functions:

  • Controlling GRBL-based CNC-Machine via console commands, buttons on form and numpad.
  • Monitoring cnc-machine state.
  • Loading, editing, saving and sending of G-code files to CNC-Machine.
  • Visualizing G-code files.

System requirements for running "Candle2":

  • Windows/Linux x86_x64
  • CPU with SSE2 instruction set support
  • Graphics card with OpenGL 2.0 support
  • 160 MB free storage space

Build requirements:

Windows: Qt 5.15.2 with MinGW/GCC compiler

Linux: QT 5.12.2 with GCC

Downloads:

Candle 2 GUI:

screenshot

candle2's People

Contributors

bullestock avatar hobbymachinist avatar m1bcodes avatar rcrockford avatar rjahanbakhshi avatar scgtrp avatar schildkroet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

candle2's Issues

Problem running Candle 1.1 and Candle 2

When I run Candle version 2 or Candle 1.1.7 with Windows 10 64 bit and load a NC file and hit SEND, the visualizer shows spindle turning but it never moves. Also the work coordinates do not change. I have GRBL 1.1 loaded on Arduino UNO with CNC shield.

UPDATE 12/19/23
Check settings. If $10 is not equal to 1 it will cause the above issue. Mine was set to 16. Set in console $10=1 to fix it.

Build instructions for windows 10

I've installed QT 5.15.2 MinGW, 32 bit and 64 bit version. From which I've opened Candel2 and tried to build a release version.
For both MinGW 32 & 64 bits I get 46 issues reported.

Now, as there are no issues reported to do with build / installation here it would suggest to me my problems have something with my configuration. Any ideas? Is there a video telling me the steps for installation etc.....

I've never used QT. I'm using a relativly clean laptop with windows 10 installed, I also have Visual studio and Arduino IDE istalled.

Thanks in advance for your response.

MPG connection/commands

Hi, I want to use your version of Candle because it seems to be able to use an MPG(Handwheel). I want to make my own MPG but I can't find any information on using an MPG with your version of Candle. Is there a user's guide that I can download?

Incorrect widget size on scaled screens

When scaling factor for display is greater than 100% some widgets does not have enough space for text. This makes widgets hard to read on small screens after scaling.

Screen scaling factor 100%:
image-1001

Screen scaling factor 200%:
image-1002

Status "Hold" How to continue?

While running my gcode the status jumps to hold and all buttons are greyed out.
How can I continue the execution of my gcode?

Candle2 Win11 support

Problémy se spouštěním ve windows 11. Po spuštění jako správce systému se zobrazují přiložená hlášení.
CandleChybná datová kopie2
CandleChybná datová kopie

Either Candle 2 or Grbl board not response or not stable feedrate high said > 2500

Hi,

Did you encounter Candle not able to synchronize with the Grbl board, when feed rate
is high said like 2500 or about on Windows OS? The Candle can response to the GUI
button said like reset button but no feed back from the GRBL board.

The problem will occurred faster if using Override Feed rate. Said the GCode Feedrate is
1000, override rate is 150% that about 1500. On this situation during send GCode period,
if try to resize the Candle's window problem happen even faster.

The "Buffer:" always at 0/0/0, like not able to push GCode lines to the GRBL board in time.

Tested same setting with UGS platform V 2.0 night builds at feedrate 5000 also no problem.

Regards,
KL

No Machine Coordinates on Linux

I'm using Linux MINT and have installed Candle2.
My Machine is Genmitsu 3018 with GRBL V1.1f

Candle is running fine, I can controll my Machine but the Machine Coordinates are allways 0.
I also tested with Candle 1.1.7 with the same result.

I have also an Android Tablet with an App and there the Machine Coordinates are shown correctly so the Controler seems to send them.

Is there anything I didn't see?

g-code program hang and toolpath not synchronous

here I have found some problems with the latest candle software bug

  • sometimes when the job is in process, the process will suddenly hang out there until the end
  • sometimes the toolpath will miss whereby the toolpath is not synchronous to the real working coordinate
  • the overwrite feature does not function fully well, sometimes when the overwrite have made but the feed and spindle speed are still the same
  • why after the x,y, and z axis have been setting zero and jogging to the other coordinate, then clicking on the origin button it won't go back to the origin?

does not accept commands {}

Hello.
The program does not accept commands in curly braces {}.
For example (finding the center of the hole ):
G21G91;
{var f = 100;var ff = 10; var r = -30; var d = -2};
G38.2Y{-r}F{f};
G38.4Y{d}F{ff};
{var q1 = vars.PRBy};
G38.2Y{2*r}F{f};
G38.4Y{-d}F{ff};
{var q2 = vars.PRBy};
{var q = (q1+q2)/2};
G90G0Y{q};

gives this error:
ERROR: Expected command letter
ERROR: Bad number format
ERROR: Bad number format
ERROR: Bad number format
ERROR: Bad number format
ERROR: Bad number format
ERROR: Expected command letter
ERROR: Bad number format
ERROR: Bad number format
ERROR: Expected command letter
ERROR: Expected command letter
ERROR: Bad number format

In the program version 1.2b, these commands work.
Can you add these commands to your version?

Heightmap

I want to mill a PCB. I created a heightmap:
0.00;0.00;31.48;36.56
3;3;-2.00;1.00
0;3;3
0;0.11999999999999922;0.13999999999999968
0.08800000000000008;0.21999999999999975;0.21999999999999975
0.11999999999999922;0.22499999999999964;0.2469999999999999

However when I select Use heightmap my gcode changes from
G00 Z5.0000
G01 Z-0.1500 F254.00

G00 X17.6530 Y24.9266
G01 Z-0.1500 F254.00 (for example)

to
G00X0.000Y0.000Z4.999
G01F254.00X0.000Y0.000Z-0.151
G01F508.00X1.105Y1.105Z-0.142
...
G01F254.00X17.653Y24.927Z0.107

That is, all the z coordinates after the first two which ought to be negative for the cuts, are positive, and the spindle remains above the board.

What am I doing wrong? If this is not the right forum to ask this question, can you point me to a more suitable one?
Tech details: Windows 10, Candle2 ver 2.3

no matching constructor for initialization of 'std::unique_lock<std::mutex>'

I use linux and try to compile Candle2 project in my QT 5.15.3.
I get the following error from compiler:

/home/yuri/src/Candle2/src/utils/safequeue.h:86: error: no matching constructor for initialization of 'std::unique_lockstd::mutex'
In file included from ../frmmain_heightmap.cpp:21:
In file included from ../../src/frmmain.h:43:
../../src/utils/safequeue.h:86:38: error: no matching constructor for initialization of 'std::unique_lockstd::mutex'
std::unique_lockstd::mutex lock(mMutex);

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:66:16: note: candidate constructor not viable: 1st argument ('const std::mutex') would lose const qualifier
explicit unique_lock(mutex_type& __m)

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:107:7: note: candidate constructor not viable: no known conversion from 'const std::mutex' to 'const std::unique_lockstd::mutex' for 1st argument
unique_lock(const unique_lock&) = delete;

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:110:7: note: candidate constructor not viable: no known conversion from 'const std::mutex' to 'std::unique_lockstd::mutex' for 1st argument
unique_lock(unique_lock&& __u) noexcept

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:62:7: note: candidate constructor not viable: requires 0 arguments, but 1 was provided
unique_lock() noexcept

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:73:7: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
unique_lock(mutex_type& __m, defer_lock_t) noexcept

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:77:7: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
unique_lock(mutex_type& __m, try_to_lock_t)

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:81:7: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
unique_lock(mutex_type& __m, adopt_lock_t) noexcept

/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/unique_lock.h:88:2: note: candidate constructor template not viable: requires 2 arguments, but 1 was provided
unique_lock(mutex_type& __m,


This easy fixed by adding "mutable" atr to "std::mutex mMutex;":

diff:

diff --git a/src/utils/safequeue.h b/src/utils/safequeue.h
index dc4d123..6da140c 100644
--- a/src/utils/safequeue.h
+++ b/src/utils/safequeue.h
@@ -94,7 +94,7 @@ public:
 
 private:
    std::list<T> mQueue;
-   std::mutex mMutex;
+    mutable std::mutex mMutex;
 };

Debug Error In QT 5.15.2

Dear sir,

I am facing below problem while debugging, please suggest me, what do to correct it.

image

custom user buttton

hi, is it the user command button logo picture that can make it custom so that the user can modify it and easy to know what the button function stands for like the previous candle? And also please add more user command buttons like the previous candle so the user can customize more buttons that are desired.

Height Map

good day schildkroet , already connected well to grbl but note that the height potato does not work well as one changes the value of the speed but always remains at 10 I remain attentive thanks

Full helix issue

I found an case that can't be machined, at least with GRBL, but it shows up nicely on screen.

G0Z2
X-14.951Y16.038
G1Z0F500
G2X-14.95Y16Z-.503I-1.049J-.038
X-14.95Z-1.006I-1.049J-.038
X-14.95Z-1.509I-1.049J-.038
X-14.95Z-2.013I-1.049J-.038

Height Map 1 vs. 2

The only way I got heightmap to work is generate using Candle and then use the file in Candle2, so the bug is in the generation side.

graphical issues wayland

Hey,

I have noticed some differences regarding wayland and xorg sessions.
When using wayland, the tool path + coordinate system, etc. doesnt show up.
Is there a way to fix this?

Wayland:
image
Xorg:
xorg

System:
Candle 2 version 2.4
ThinkPad E14 gen 2 (AMD Ryzen 5 4500U, Radeon graphics)
Arch Linux 5.16.13
KDE Plasma 5.24.3

Compare Candle 1 and Candle 2 in Arduino Nano and issues

Candle 2: CNC motion on the straight line is excellent and on the arc is weak and on the curved line has high vibration and slow motion.
And (device settings) does not work, but has advanced features such as Handweel and Ethernet
Candle 1: All movements of line, arc and curve have excellent performance and Candle 1 works well but lacks advanced features like Candle 2

Manunal Pendant?

Hi ,
What is "Handwhhel" option used for? It is possible to add Manual Pulse Generator? How it can be done?
Best Regards.

Work coordinates change

I am using atmega8 arduino based controller with GRBL1.1 i noticed after few broken tips, why they're breaking. When you interrupt milling using STOP button, working coordinate for Z is changing to something else after 2 or 3 seconds (others do sometimes too).

Also the machine coordinates is not something i can reset to 0 (they're sometimes kind of random when you connect), but when clicking Z, it's trying to go to machine coordinates instead of working coordinates.

Height Map Disabled

Hi,
I am running Candle2 with a 3018 machine to make PCB's.

I am unable to use the height map as it is disabled.
I have loaded a PCB Gcode file and that is OK onscreen.
If I run the code the router works perfectly.
Probe also works fine.

Can you advise me how to use/enable height maps.

Thanks
Allen Brroks
Snr Consultant
NTElectronics UK

Can I use Hightmap?

Hello Schildkroet.
Today.I tested Candle2.
And I can't enter Hightmap edit mode.
"create hightmap"button always grayed out.So I can't check it.

esp32 grbl version of ethernet control can't connect properly

Sorry, I'm not very good at programming, I can use ioSender to control the Ethernet connection normally, but candle2 never works, I tried to modify the port number of the issue here #8 ( grblesp32 default port number 23), and modifying the default configuration file port number of grbl esp32 to 30501, have always failed to succeed.

aa
aaaa

Pressing STOP during milling causes damage to material and drill

I am confused. I am sure it didn't work this way before but I am not able to track this to source.
When I am pressing STOP button during milling process, the machine goes to 0,0 with it's current Z position which is the milling position. The spindle stop and it craches drill cause it's going trough the unmilled material.

I was looking on many things like safe position gcode or anything else. To me pressing stop should just stop everything without moving back to x0y0

The program does not start

Win7 x64
"The resulting problem led to the termination of the program. Close this program.":
error
Windows information:
error2
Other versions of Candlle (0.8.0 - 1.2.12) run without errors.
Thank.
P.S. UPDATE: Versions 2.0 and 2.1 run without problems.

ESP32 GRBL Ethernet is connected to candle2, there seems to be a problem with the receive function of candle2 Ethernet?

I changed m_tcpSocket.connectToHost in "SerialIf_OpenEth" to fixed, m_tcpSocket.connectToHost("192.168.1.102", 23);, he did connect successfully, I sent G code through m_tcpSocket.write("G1Z100F100\n") , the motor also moved, but the interface of candle2 did not respond, as if the connection was not successful, depending on the Ethernet version of the loop analysis program is not running

No machine state/position feedback to MPG

Hi, I have my MPG sending commands to Candle2 and they are successfully passed onto Grbl, so that's great. But, there is no machine state/position data being sent back to the MPG. My MPG has a screen so I want to be able to see the Axes' positions and machine state.

Basically if Candle2 can just echo the information it receives from Grbl and send it to the MPG port that would give me everything I need.

Candle 2

Hello, why does the visual part go with Candle 1.1.7 (shows everything) but cannot be seen with Candle2?

Interface Elements Too large for 1366x768

Hi all,

The laptop I'm using to drive my CNC3018 is a 1366x768 running Ubuntu Focal Fossa 20.04.

Unfortunately some layout or scaling decisions in Candle2 mean that I can't usefully fit all interface elements in the screen in some configurations.

In particular if I try to edit a heightmap, there is a huge panel element above Heightmap Settings (full of whitespace) which pushes the Heightmap panel out of sight, so I don't know what controls it has, as well as extending the vertical window size so I can't scroll to the bottom on the right either.

It's possible that I can see all the controls, but I can't see the bottom of the panel so it's hard to be confident.

Is there any way to configure Candle so it is more conservative with space, or so it has scroll panels when elements are too big?

Setting the font size to 7pt doesn't proportionally scale the other elements although the text elements get smaller, so there must be some other parts which have a scale beyond my control.

Am I the only one who uses an older laptop to drive a CNC? Did I miss some configuration option which would ensure that the interface will fit.

Screenshot from 2021-11-16 14-04-21

Candle2 is great, it is better than Candle 1 and UGS

Thanks for creating this fork and providing a Linux binary that actually works! AFAIK the only G code sender that has a working auto-level feature on Linux. Compared to UGS I also think Candle it is more user friendly (get's the job done faster)!

Keep up the great work!

Screen design

When displayed I don't see the Feed and Step elements of JOG, so I would like to adjust the position of both. Move them up screen.

I'm presuming you used QT Desgibner 5.12.2 but with the files supplied (frmmain.ui) they don't match that of the compiled app / screenshot.

Do you have an updated set please?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.