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.
Can you solder?
At very least I would advice you to spend $10 on STLink V2 and have some patience.
I just confirm that 4-pin header is working STLink interface. I’m trying to do the dump and copy. (to copy working JL1 to Blue Pill). Will report if sucsesful. If so - we will have safe recovery option for all.
You also need to solder 4-pin header into the board and to have 4pin jumper cable female to female.
I will provide instructions when I have all files ready.
Y’all: does anybody able to successfully flash their JL1 to GRBL?
Not able to dump flash as it is protected.
While messing with it - after toggling protection bit back and forth - my JL3 GRBL firmware is no longer booting. Yep, I’ve bricked it. Later found here:https://chowdera.com/2021/04/20210426103900089b.html
that flash will be erased on unlock, all Fs now. Exactly what happened.
Oh well, even more pressure to get recompiled version working.
At least I can confirm that hardware is wide open, that 4-pin header is STLink port and flashing with STLink is trivial. Just need new firmware.
I’m glad to see that many people are able to successfully flash that JL3 GRBL firmware to their JL1 machines.
I have compiled new firmware specifically for JL1 where everything works, I think, except PWM on port B0, that is spindle/laser PWM control. Something with timer 1 partial remap and timer output control registers. I’m still sorting through it. For ethical reasons I do not want to let firmware loose in the wild that is definitely not usable. I mean I guess it is possible to just jump A8 to that laser control pin and have complete functionality this way. It would be ugly hack due to lack of software skills, but hey, whatever works, right. So let me try it and if it works - I will consider it. I can feel sentiment for you, sitting with dead board can’t be fun.
Another option is to take this journey solo, like I’m trying to do now.
I got " RepRapThailand / grbl-stm32" on GIT as starting point, mostly because Embitz IDE is much lighter than Cube or Atollic and does not go to the cloud every minute. Also this was the first package of many for STM32 that I’ve tried and that compiled cleanly right away without single warning. If you are Linux fan - there is version for that. It also has built in flashed for STLink, very convenient.
To start - remap pins in cpu_map.h . May use map I’ve posted earlier.
After that - everything works except Spindle/Laser PWM .
There is also bunch of unused signals. I’ve deleted definitions for all unused pins and progressively prune the whole source code for each error/warning for any call that uses these signals.
Now I have just the set of functions/pins I need. Only hardware PWM not so easy to move.
Now this board happily converses with any software that supports GRBL and as much as I see on the scope - it has what appeared to be the right signals for steppers.
You may replicate my journey or wait till I complete mine.
I’m not a software engineer. I’m barely a hobbyist, and I’m having fun with it.
Any other developers with proper skill set - welcome to help.
The photo in post 6 shows the controller and the cpu was tagged as an APM32, which does exist and if @berainlb is correct, it is likely some type of commercial atm32 clone or something. Sounds like the binary will run on either… ?
Do you have a header file or something with the changes to the pins in it? Which pin is the jl1 using for pwm control ?
Any road maps of the board you have would be good, even it it’s this pin does this…
Cloned the github project… Do you have any details on what you have changed so far?
I have another controller on the way from China… It would be nice to use the existing hardware…
My st-link programmer is supposed to be here today…
I just want to let you know, that I found an easier resolution of my problem: I’ll return the small K6-engraver an order another product, which explicitly mentions lightburn. It uses GRBL and has a more than 4 times bigger engraving-capability. By the way, the laser is also about twice as intense.
Thanks for your input. Maybe my pic of the K6-board helps someone.
What you want to do? Just test if you can flash? See serial talking GRBL? Move any motor? Laser control?
I have one that talks serial and I see pulses on motor control. Just tried to upload to JL1 and apparently something is off as I do not see motors moving, I thought they will. I can give you hex to test your uploader and talk to GRBL, not so far nothing beyond that. I would be able to move motors soon. I’m still struggling with PWM for laser control.
I did. I use V2.10_H35_2022_0621_N_ZX_001.bin and it has X L<>R swapped on screen, GRBL control is unaffected. Other than that - works fine. I also got 2209 drivers and they are sweet.
Just this morning there was close to dozen older firmware versions. Just checked and they have only two left. I got to try one back to see if X is right. If you do not have LCD - then there is no problem.
DLC32 on JL1 frame:
Both motors are straight in.
Y cable is 2-pin and DLC has 3pin, can be forced but better to adapt or move pins,to 3 pin housing, no need to recrimp…
Main laser is sharing connector with X home. Worse - ground pin is double crimped. Actually it can stay this way.
To do it proper:
Need JST-XH connector kit and a crimper. Will need to reap that 4 pin laser connector and split into 3 pin for laser and 3 pin for X home.
Cost free alternative is to pull home pin out, cut potion oh connector housing off, leaving x3 pins and plugin home wire without shroud. Ugly but will work just fine.
Without crimping - it is possible to pull pins out and insert into proper housings. Once again double crimped ground may stay and home connector may get one wire only (still get ground through the other connector). Or can be cripmed into 3 pin connector.
Another alternative is to not destroy JL1 setup but make adapters. JST kit came with headers. it is possible to construct proper adapter without destroying original cables.
There might be a way to connect pointer. I2C connector can work as GPIO for cooler control. Can be used for pointer instead, have not tried it yet.
I’m running with no home switches, not yet. Really do not need them. Origin of work set separately anyway. Unlike JL1 board - DLC does not enforce soft limits, it always free to move into hard stop at any end. I might connect optical sensors later.