Light Burn is first hit on Google while searching JL1+GRBL.
Those who search know that to surprise and frustration after acquiring machine with JL1 board - it does not speak GRBL dialect and not recognized by most and best laser carving software.
It is certainly possible to recompile GRBL for this STM32 based board from many sources available on GIT, but I can imagine this is beyond abilities of many. Well, there is easy option to get these JL1 boards working with this and other software: Wainlux_JL3_WiFi (JL1 board) originally came with the same incompatible firmware, but has optional GRBL firmware for this board. They did provide firmware download link on request.
Flashing is effortless and now my JL1 speaks GRBL 1.1f. With that - there are a few things that do not work:
-After flashing GRBL - I’ve lost WiFi functionality. ESP12 wired to UART2 on STM32, not sure it firmware compiled to support that. I do not need it anyway. Board communicates over USB CH340 just fine, it is on UART1.
-Homing does not work. Y-axis has hard coded negative offset. It is too large for my machine. I’ve disabled homing cycle and just home it manually before turning power ON. Minor inconvenience.
-laser cross not working. Once again - non-issue. Can be hard wired to stay ON permanently, if you prefer. I aim by main laser anyway.
-There is no way to go back to original firmware, that I know of. Boot loader apparently is gone after flashing GRBL. From that point the only way to change firmware is with custom built firmware from GIT sources. Not like I see any need for it.
GRBL config need to be set, like direction and soft limits, to match your hardware. With that, at no cost JL1 can speak real GRBL.
I can post firmware if there is a way to attach files, or if anyone would like to host it. Or request it from WeinLux support by yourself. Make sure to ask for “JL3 WiFi” and not BLE firmware version.
I recently bought a jl3 and I’m having a lot of trouble finding the firmware to use with lightburn.
Could you do me the favor of passing it to me?
Thank you for your help and your contribution.
All the best!!
I would but Rick does not let it, as you see.
Is this forum has PM/DM? I do not see it, or I would just drop it over there.
Request firmware by yourself from Wainlux, see my original post. This is very easy and so far I’m not aware they rejected anyone. B specific if you have BLE board (I’ve never seeing one) or WiFi. Most people here interested in WiFi/JL1 board, same as JL3 WiFi. Wainlux got back to me in 2 days.
Or suggest some upload/hosting site. I will not register anywhere but if they allow Guest to drop files - I will be happy to do it.
As I’ve stated earlier, third file is identical to second BIN. I guess the intent is to have a collection of named versions. Flasher utility only uses one file with generic name. So, to reduce size I’ve removed redundant file.
Original firmware obviously talking over serial, but I was not able to get anything out of it with Terminal or any g-code app, it just staying silent. Setting Wireshark is not my objective. My intent was just as JL1 machine itself so cheap, to get it going with GRBL dialect for minimal cost. Luckily here it is a way. Original software supposedly can take NC files, I’ve tried but did not work for me once, but I assume there is some kind of g-code dialect, but I have no clue if there is any settings there. Not like it has any value with JL3 firmware.
I’m pretty certain that there is only one kind JL1 machine (from Amazon) that is causing all this chatter, Please check this topic . My settings for it are there. You may set values one by one, or save as txt, rename to NC and import to/send with pretty much any laser/gcode software.
Schematic: This is pretty generic STM32 Blue Pill type board with pretty standard peripherals. I’m considering effort to recompile proper firmware, at least to properly support homing cycle and enable that laser cross pointer. If and when I have inspiration and time - I might. For now, honestly, it just good enough, even while homing by hand.
I did map most (I hope all) pins on STM32. I did not do detailed schematic as this has no value to me, just enough to define pin-out for firmware. Either way, I can say that “flash 0 and 1” have pull-downs, so raw flashing through serial port is relatively easy. There is also appeared to be header for ST-Link, if it works then messing with firmware is pretty easy. I did not get that far yet.
Did you follow the procedure? (flip the switch OFF, then hold the button, then power up, hold for few more seconds and release the button, then start the app).
Have you unzipped it? Do not run straight from ZIP, app probably not able to see the bin file.
Also check the driver for the COM port (CH340), make sure it is setup and running with no problem.
CH340 getting power from USB, so as long as USB is plugged in - you should see the COM port. STM32 getting power from 12V jack, only active when power switch is on. (if you are able to use original software on Windows PC then your COM port is setup.)
I did a while ago and I did not specifically memorize all chain of events, or it was rather uneventful.
My stumbling was over boot loader mode.
Let’s verify if you are in boot loader mode: after powering up with button pressed it is no longer usable with original software, but after normal power cycle it should be back to normal operation.
Also, as a fact I did had both files in the directory. Just in case, who knows, maybe it is running some kind of redundancy check, I’m attaching named version of the file. Make sure EXE and both BINs in the same directory.
Let me know how it goes.
You may actually did complete the flashing. I recall that I was also confused for a moment and thought I bricked it, but after reboot it was alive and reporting itself as GRBL.
I recall after successful flashing and normal boot it is indeed no longer homing on power up. If so - try some GRBL control software, like LaserGRBL. Or some terminal for that matter, send $ or $$ and enter (there is no echo from GRBL, so you will type blind, unless your terminals is setup with echo).
For terminal: 115200 bod, 8n1, no flow.
Do full cold reboot: pull usb and turn power off, then back.
Do you have ST Link? Or at least soldering iron to boot it into serial boot loader?
If you really hosed up your boot loader - the best way is to get yourself ST-Link/V2 clone of Amazon, about $10, and hang on for a few days. I hope I will compile proper firmware in a few days. I’m almost done, all works except PWM for spindle/laser. I’m fighting with moving TIM1 PWM from standard A8 port to B0. HAL stuff involved (“partial remapping”) and I’m trying to sort it out. If anybody can help - I would appreciate that. With some luck I will try to post my version in a few days.
Never tried wifi, but I don’t see any kind of ‘new’ wifil signal …
St-link … I think I downloaded it and compiled it…
I found these…
jack@Kilo:~/stlink.git/build/Release/bin$ ls -l
-rwxrwxr-x 1 jack jack 30960 Aug 8 19:45 st-flash
-rwxrwxr-x 1 jack jack 17256 Aug 8 19:45 st-info
-rwxrwxr-x 1 jack jack 26640 Aug 8 19:45 st-trace
-rwxrwxr-x 1 jack jack 66512 Aug 8 19:45 st-util
-rwxrwxr-x 1 jack jack 23664 Aug 8 19:45 test-flash
-rwxrwxr-x 1 jack jack 17096 Aug 8 19:45 test-sg
-rwxrwxr-x 1 jack jack 17608 Aug 8 19:45 test-usb
O boy, I’m afraid it is really messed up now.
Jack, STLink is hardware dongle to flash/debug STM32 chips. Get one if you want less painful recovery from hosed boot loader.
First tell me the truth, did you try to upload bin with some other/Linux uploader? I’ve tried to flash that BIN to Blue Pill and it never run. I did warn about that. But flashed with Uploader app to JL1 it runs - no problem.
I can try to dump the flash, if it is not locked, then it might be possible to restore. I will try and let you know.
Now, compiling from the source:
pin map is different. I have moved all pins around - no problem, except PWM . That is stubbornly non-functional on B0. Everything else, including motors, remapped with no issues.
If you managed to remap successfully, especially Spindle Speed pin - please let me know how you managed to do “partial remap” for TIM1.
To flash over serial - you need to strap couple pins (boot0 and boot1) and configure flasher. It also appeared that start address is missing from your command.
No cost flashing need soldering. No soldering - need STLink dongle. Well, you still need to solder 4-pin header that is missing form the board, but this is really easy.