Tks Leo69!
I use Arduino UNO with firmware GRBL(grbl_v0_9i_atmega328p_16mhz_115200)
If you’re running Grbl and 3dpsender then you should be using Villamanys version of the software instead of what you’re using now.
Try the version on his download page
As I mentioned before, the sender software that you’re using is not supported here.No one on this forum uses it because it is created specifically for the 3dpburner laser engraver/Grbl. The version of image2gcode that’s hosted here is modified to run on Marlin firmware and not Grbl. If you’re running Grbl then I recommend going to the 3dpburner site that I linked earlier for support.
Leo - I am struggling to get “3dpBurner-Image2Gcode-MPCNC-Mod.zip” to work. I keep getting a full memory error. I am using a MPcnc machine with repetier/marlin software just as Ryan burns it B16-32 full firmware. I can operate three axes on my printer from repetier manual and from the screen. I cannot get any g-code file to transmit to the printer from Tinkercad / Easel / Estlcam I am doing something wrong globally because I don’t understand the concept. I have made a second machine and want to use it just for routing and with a laser. What is the easiest drawing package, g-code generator and machine operator that would work with Ryan’s firmware? Do you have time to layout a step by step test drawing to see if I can get my machine to move? My first MPCNC printer works great for 3D printing but my second one gets hung up looking for the temperature sensor and not having a hot end. I have a 100K resistor but that doesn’t seem to make a difference. What is the easiest path for me to learn? Thank you for your help
Rand
Sorry but I don’t use repetier so I don’t know what causes that type of error. So you have Marlin firmware and a full graphic LCD? Have you tried copying gcode to SD card and running that way? If that works then you must have some type of communication problem between the host software and the Mega board. Maybe some repetier users will chime in and we can try to figure this out. Regardless, image2gcode is probably not the problem if you can’t run gcode from Estlcam either.
Rand, After assembly and testing this is what I consider the first step. https://www.v1engineering.com/estlcam-basics/
use estlcam to make the gcode, then use the lcd or repetier to run it on the machine.
…Hey Leo,
I didn’t know if you could help me try to figure something out. I haven’t fired up the 2.8w laser in a while that I put together based on your guide. Anyways… I’ve been messing with Image2Gcode again and for some reason my laser etchings are smearing when I do a 8 bit image. Please look at my attachment so see what I’m talking about. It’s almost as if the laser is not turning off fast enough and adds extra lines when it’s passing diagonally. Any ideas? It doesn’t happen when I use Inkscape etches but as you know Inkscape doesn’t travel across the x/y axis like Image2Gcode does. I’m trying to rule out if this is a laser/driver issue or software issue. My MPCNC prints 3d prints perfect btw…
Hey Gang,
I've been following this thread for a bit, and now jumping into the water. I've got a question that I hope someone will be able to help out on.
The starting point, origin, of when I want to print, I'm having trouble with. I have figured out where the "center" of my print area is based upon the offset of my laser on my build (X95, Y113). What I would like for it to do is to zero both X and Y, then based upon the center of my print bed, be able to move to its beginning position and be able to start printing. . I've created some markings on my print bed to help me center the object I want to "print" onto. I know I'm not explaining this well, hopefully you understand what I'm wanting to do and can let me know if this is even possible, and if so what I would need to do.
So - zero X and Y, then based upon the center of my print area, be able to print reasonable centered onto an object that I place in the center of that print area.
Does that make sense?
David, I have a similar issue… This is my post
Do you have solved it?
some questions and ideas…
im new to the thread… i been looking for a image converter for a long time then i found you guys… and thank you… your the only one out there thats free…
anyway im not set up to do pwm raster printing i have a 3d printer with a laser wired to a votage regulator to my ramps 1.4 works good tested it about 5 minutes ago did “hello” question is i use jltech or what ever that program is for inksape…
im trying to pause a print seeing how you can only have these on solid for 30 minutes…
is there anyway in g code to pause it and resume? or something i can add?
my other question is when im ready to print a picture
how do i wire up this little 500mw laser to do it…?? i assume you need pwm which the fan d9 output is anyway but how do i do that???
its pumping 12 volts into one of those cheap 1 dollar ebay dc to dc step downs you turn down with a volt meter hooked max is 5 volts out… it can do a range but im not sure how to do that… just send the file to it anyway the regulator can handle that?
or do i need one of those ttl lasers that wire in to a servo pin or something… im lost…
also last ? sorry i know i talk alot… on your program theres “s” and z" when you print i use m106 amd m107… whats the s at m106 s mean???
i just want to be able to use my ramps board… with what i have… ive used it with a standard wording and standard like shapes to cut out but pictures that need pwm im lost on…
thanks for the help…
oh and positioning how do you position it does it just defeault to your beds home corner that green square thing?
You shouldn’t be using a voltage regulator to drive a laser. You’ll burn it up pretty quick that way. If you want to do pwm grayscale laser engraving then you’ll need a laser driver board for your diode. You can probably find one for about $3 that will drive a 500mw diode.
The guide in the link below details the firmware changes that are required.https://www.v1engineering.com/the-2-8-watt-100-laser/
a voltage regulator is the same electronics as the ones they use on those cnc boards from ebayhttp://www.ebay.com/itm/USB-Port-CNC-3-Axis-Step-Motor-Driver-Board-Controller-for-DIY-Laser-Engraver/291657474960?_trksid=p2045573.c100506.m3226&_trkparms=aid%3D555014%26algo%3DPL.DEFAULT%26ao%3D1%26asc%3D38530%26meid%3D04a4f3d83506404ab594d15931ec3b6e%26pid%3D100506%26rk%3D1%26rkt%3D1%26
theone im using is this http://www.ebay.com/itm/LM2596S-Adjustable-Buck-Step-Down-Power-Supply-Converter-DC-3-40V-to-1-3-35V-3A-/322270165841?hash=item4b08cc7b51:g:OmgAAOSwLF1X5ExG
works just fine for me switches on and off… has a 2 amp max load… all im doing is either on and off not pwm at all… so everything i do is dot or line… when i go to the image to g code converter then ill go to a ttl output board and laser dioed i can get a 2 watt for 90 bucks
so for now its fine… i cut a hello out did just fine… like i said i need to find a way to pause it to cool it down or keep my prints under 30 minutes… i saw tha 3dburnersender v 1.1 on here i downloaded it it has a pause feature maybe i can figure out how to send it to the arduino…
or anyone have any suggestions on how to pause a print in repiter host? or to use another program to send it to my arduino with another program?
I still don’t see anything in that voltage regulator description that tells me it’s a suitable laser driver. It might work for a while but why do you have to stop after 30 minutes? No fan or heat sink? Too much power? Either of those conditions will kill a diode prematurely.
We need to know what firmware you’re running before we can tell you how to pause the code. A quick google for Marlin, or Grbl gcode should give you an answer. Good luck
Hello,
I am Toby from Germany.
I played one year ago with Image2Gcode to make pictures with my Marlin based 3D Printer.
I add Marlin friendly Code one year ago.
Look here http://fpv-community.de/showthread.php?71468-Prusa-i3-Umbau-zum-Laser-Gravierer
It is an 2.5W Bangood Laser with DTR Super X-Driver at 1.8 Amps.
Now I have many problems to setup my Mach3 based CNC Router with the Laser.
First I want to use Mach3 PWM Output, but no change, Mach3 give every S-Code change a little delay.
Now I use an ATmega Controller to convert Step/Dir to PWM.
For that I used the A Axis of Mach3 to generate the Steps/Dir Pulses.
Its a little bit semilar to the J-Tech DAC PIC-Converter.
That part runs not perfect, but it’s ok for this time.
I ve made some changes to Image2Gcode,
because I need 0.0000 value for Laser min and 0.1024 value for Laser max Power.
At this point it don’t run well.
There are many Bugs, so I can’t set min Laser Value higher than 0.
The Funktion private float interpolate(float grayValue, float min, float max) makes not what I want.
The Orgin Funktion have also a Bug if I have a decimal value of picture width or high, then I got a “,” and no “.”.
…
…
I ll make more test to set it up.
The only thing I found is why the will be a “,” and not the “.” at some generated G-Code lines.
In private void generateMLine() I changed
szStr = szChar + Convert.ToString(sz);
to
szStr = szChar + string.Format(CultureInfo.InvariantCulture.NumberFormat, “{0:0.####}”, sz);
I ll be back
Regards Toby
Yes, Mach3 is notoriously difficult for pwm laser engraving. I was using it for a while with a USB motion controller board and switched back to Marlin because of the laser issues. I did the same as you, a small circuit to drive a axis and convert the pulses. I never got the quality that I wanted though. I think my motion controller board just wasn’t fast enough and I didn’t want to buy more hardware.
As far as i2gc goes, the decimal power values was added for a while but ultimately removed because Marlin only accepts integers so it was a useless feature. The software is geared toward Marlin based CNC platforms. I think the origin bug has been fixed but the GitHub isn’t active for some time now so you won’t have the latest source code. Hope you get it working, good luck.
Hello
today I do some tests with PicLaser.
It’s at this moment the best Way to test out my Laser settings and my Step/Dir to PWM generator.
After some Tests I reduce the PWM resulution from 1024 to 256.
Now I drive my A axis from Laser off, 0.000 mm, to Laser full power, 0.0255mm.
After some more tests I found out, my PWM is to fast for the DTR Driver.
I use lower frequenzy and an other PWM mode on the Atmel MCU.
At this point I can engrave pics with PicLaser Demo nearly my 3D Printer with the same Laser Module.
Laser Tests shows my test today.
Mach3-A127-F2000 shows the best result at this time.
Mach3-Marlin shows the different between Mach3 and Marlin.
In Marlin I used only 1/4 Laser Power, at Mach3 I used 1/2 of Laser power.
Tomorrow I ll use 1/4 Laser power at Mach3.
Now, I know my Laser and Mach3 works well, I ll do changes to I2GC.
Regards Toby
That’s looking pretty good. What kind of electronics are you using with Mach3? PC with parallel port breakout board, USB motion controller? If it’s a motion controller then let me know which one it is because they really vary in performance. Mine was a cheap Sainsmart board and it worked great for everything but the laser.
I made an Arduino-based DAC to convert step pulses also but maybe my resolution was also too high( I was using 11-bit ) and the pulse rate couldn’t keep up. I had my Acceleration values ridiculously high too but it didn’t help much.
Image2gcode has an option to “Use Z” instead of a PWM power command . That should translate your grayscale values into Z axis movements and might be easier for you to revise to work with your DAC. You’d just have to change the code to use ‘A’ axis instead, or some other letter. If you have a working solution with PicLaser then maybe you should stick with that though.
Hi Leo,
Thank you.
Since 2 month I use the “XHC MK4” USB motion controller.
Before I used a parallel port breakout.
I think, I also get success with parallel port, but thats an other story.
I also use an Arduino Uno, but I ll make a PCB with Atmel MCU and Optocoupplers.
For my Mach3 Acceleration values see pictures.
Today I made some changes to I2GC to get it Mach3 friendly.
I add “A” to “Laser Power On MCode” and “A0” “Laser Power Off MCode”.
This was the easyes way at this time.
Then make changes by the generated GCode, I set the Power values behind the XY Codes.
Deleted many clear lines, add some Header lines.
Now it looks like that:
(Generated by 3dpBurner Image2Gcode v7.0beta)
(@Jan.12.2017 12:14:37)
(Feedrate: 2000)
(Pixel Resolution: 0.1)
(Min. Laser Value: 0.0000)
(Max. Laser Value: 0.0127)
(Engraving Angle: Horizontal scanning)
(Header)
G0 X0 Y0
(Header end)
G90
G21
F2000
G1 A0(Laser off)
G0 X0 Y48.6
G1 A0
G1 X0 Y48.5 A0.0086
G1 X0.1 A0.0086
G1 X0.2 A0.0085
G1 X0.3 A0.0084
G1 X0.4
G1 X0.5 A0.0085
G1 X0.6 A0.0086
G1 X0.7 A0.0087
G1 X0.8 A0.0088
G1 X0.9 A0.0089
G1 X1 A0.009
G1 X1.1
G1 X1.2
G1 X1.3
G1 X1.4 A0.0089
…
…
G1 X0.9 A0.0063
G1 X0.8 A0.0059
G1 X0.7 A0.0057
G1 X0.6 A0.0059
G1 X0.5 A0.006
G1 X0.4 A0.0061
G1 X0.3 A0.0063
G1 X0.2 A0.0064
G1 X0.1 A0.0062
G1 X0 A0.006
(Edge lines)
G1 A0
G0 X0 Y0
G1 A0.0127
G1 X0 Y48.5
G1 X72.8 Y48.5
G1 X72.8 Y0
G1 X0 Y0
G1 A0(Laser off)
(Footer)
G0 X0 Y0
(Footer end)
The first try makes some trouble.
X forward it runs well, backwards it run only in 1/2 speed.
I forget to make some Code changes.
The next Try give me a good engraved picture.
I set 1/2 (Max Power A0.0127) Laser Power, but its a little bit too much.
The 3rd try I set 1/4 (Max Power A0.0064)Laser Power, but it’s to brightly.
I ll change the following Code line to the older version I have.
“if (cl.R < 0.15 * 255) { sz = 0; }”
to
sz = 255 - cl.R;
Regards Toby
Here is a video of the 2nd try.
And the last pictures of “my” I2GC.
At least there are my Mach3 X, Y and A setting.
Regards Toby