-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Update Woodpecker CNC GRBL 0.9 to 1.1f #336
Comments
From what I can glean from your post, it doesn't look good for you. That youtube video said nothing about the specifics of burning v1.1, only that its possible. It also didn't say anything about having to alter the Arduino config to get it to work. In my experience, I've never had any problems with flashing via programmer. I just made sure that everything was disconnected from the controller, since the programming pins are shared on the 328p. I also just use command line to compile and flash, often with the '-F' to override the signature check, which may or may not help you. Anyhow, closing this issue since it's not a Grbl software problem, but you and others can still comment after. |
Thank you so much for your quick response. "[...], often with the '-F' to override" and the fact that my board was already bricked made me confident in retrying the update procedure and it just worked ;) I used the Arduino IDE, an external power supply, disconnected stepper motors and spindle. I connected an Arduino Nano as described in my previous post and changed the device signature in the avrdude.conf
|
Hi fxh1357! I don't know how to start with! Can you please help me? Thanks! |
So I'm a complete idiot and forgot to copy the settings out of grbl before I flashed this thing. Did anyone happen to save those settings, or have the correct settings for this unit? On another note, my board had the Arduino bootloader already installed and flashes fine via the Arduino software. I just had to select Arduino Uno as the board and and it worked flawlessly. Now if I could just get the settings back.... |
Well, your settings depend on your machine... Not knowing what that is will make it hard to come up with reasonable values. |
You can always reflash the original firmware from your machine and run a
serial connect and call the settings and save it in txt
then reflash it
No dia sábado, 13 de janeiro de 2018, VirtualEnder <notifications@github.com>
escreveu:
… So I'm a complete idiot and forgot to copy the settings out of grbl before
I flashed this thing. Did anyone happen to save those settings, or have the
correct settings for this unit?
On another note, my board had the Arduino bootloader already installed and
flashes fine via the Arduino software. I just had to select Arduino Uno as
the board and and it worked flawlessly. Now if I could just get the
settings back....
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#336 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AKke-uuLqrTKwHKXpn2cKf58KKywMvgCks5tKBPagaJpZM4ROBXH>
.
--
Com os melhores cumprimentos,
Vinicius Silva
|
@X3msnake Can you provide a link where to get the 'original firmware'? I think that would be quite difficult in respect to the variety of ebay and AliExpress sellers using slighltly different Boards and components - |
@VirtualEnder find following the settings I am currently using -
Concrete changes are the steps_per_mm, max_rate, spindle_rpm_max, direction_invert_mask and status_report_mask |
Have a look at the guide provided in the grbl wiki. To get the settings right you need to also check the "Advanced Users" section to alter the configuration as I mentioned in my last comment. On top of that you will need to adjust the expected device signature to trick Arduino IDE to flash the firmware regardless of the failed device signature check. (I also removed all cables running to the board and the stepper drivers to minimize side effects.)
I had some changes in the read device signature during my testing, so maybe it fails on your first attempts. Just retry, or change the signature again. Be aware, that avrdude will not be able to verify the written firmware, most likely due to the same reason that changes the read signature! So an error in the console after uploading is expected. I don't think, that it is possible to get the currently persisted *.hex file out there because some peripherals are seeminlgly interfering the downstream, thus the wrong device signature and failing checksum. I could be wrong at that point. The *.hex file itself would not get you anywhere because the problem itself is getting it onto the board.
Arduino IDE creates the *.hex file on the fly when uploading.
Have a look at Connecting ArduinoISP to WOODPECKER CNC
Correct "Arduino as ISP" and make sure to use Sketch->Upload using Programmer. Otherwise you will just uplaod the firmware to your Programmer
As mentioned in my comment two weeks ago I was finally successful connecting the WOODPECKER CNC board to its 12V power supply. But a 5V connection from the arduino without connected power supply should be fine as well. I spend several hour fiddling around to get my CNC running again. And there is some chance that you'll brick your controller. I would not recommend doing this update when you need your machine sooner as a new board would arrive in the mail. |
@fxh1357
I cannot, don't know what the user board is neither the seller, if it was my board i would search for the specs and/or ask the seller for the original hex file to do reupload. It might end up being too much hassle and I would probably just pull the datasheets on the motors and mesure the axel pitch and use the reprap calculators to find the closest settings for the machine i had at hands |
Thanks @fxh1357, I already started rebuilding the config. I think we have basically the same machine, except mine is the 3018 version. The direction inversion mask is the same, but I'm still fussing with the steps/mm. I got to 750, but oddly the Y axis seems to be slightly different from the X and Z axis. I need to have it cut some lines along each axis at a fixed depth and take some measurements, but it's pretty close. Unfortunately the board has been rebooting part way through the cut, which I'm still debugging. That is part of why I was trying to upgrade, but it hasn't solved the issue. Hopefully I can figure it out. |
@fxh1357 Thanks again! |
I cannot success @fxh1357 C:\Users\3Dsuco>C:\Users\XXX\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/bin/avrdude -CC:\Users\XXX\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM7 -b19200 -Uflash:w:C:\Users\XXX\Documents\Arduino\Build_Folder/grbl11f.ino.ino.hex:i -F avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.10s avrdude: Device signature = 0xffffff (probably .reduced_core_tiny) (retrying) Reading | ################################################## | 100% 0.08s avrdude: Device signature = 0xffffff (probably .reduced_core_tiny) (retrying) Reading | ################################################## | 100% 0.05s avrdude: Device signature = 0xffffff (probably .reduced_core_tiny) Writing | ################################################## | 100% 43.75s avrdude: 30580 bytes of flash written Reading | ################################################## | 100% 25.97s avrdude: verifying ... avrdude: safemode: hfuse reads as FF avrdude done. Thank you. Any idea? |
So my rebooting issue was an issue with the computer not the board. I switched to my laptop and it works great! 800mm/s was dead on. Got some acceptable cuts out of 2mm and 3mm carbon fiber. Will try some 5mm later this week, but it seems as if everything is working! I think for a $300 amazon special, that's a good deal. |
@FelisucoVFR are you sure, that all your connections are correct? |
@fxh1357 Quite sure as I did from 0 three times with different drawings. All of them matched except for the vcc which in one is disconnected. I tried anyway with same result. |
@FelisucoVFR Do you always get the device signature 0xffffff? |
@fxh1357 |
@FelisucoVFR The chip on the woodpecker cnc is a 328p, so Nano should be right. |
@fxh1357 |
Hello,
Don't forget to save your settings before!! (running |
Seems mine has a different baudrate (115k2) as others who where able to flash the woodpecker. avrdude -CC:\Users\XXX\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega328p -carduino -PCOM11 -b115200 -Uflash:w:C:\projects\CNC\CNC3018\update_fw/grbl_v1.1f.20170801.hex:i
|
TL;DR In the end, I flashed mine with 115200 as well (my board looks exactly like yours, JBSchueler). I nearly earned myself a PhD from programming this beast. At first, I was getting some strange The only problems is that I forgot to change Unfortunately, I still don't know wheather the initial errors were only temporary or not. So, long story short for posterity: when flashing directly with avrdude, use |
Thanks for the update @akomelj, this is well explained. I tried programming via an Arduino ISP programmer but was not able to succeed. So I tried direct updating the FW via the USB connection of the woodpecker and seems it has a boot loader when shipped. After flashed the woodpecker to 1.1f and send the configurations to the eeprom it works all just out of the box. |
Can anyone explain how to copy settings out before flashing to avoid problems that @VirtualEnder had ? In summary of 1.1 they mention EEPROM settings will be wiped and restored with new settings. I am new to this, what software tools you use to see/copy/restore those settings ? |
Use |
Thanks. In that case I maybe have something for @VirtualEnder . I bought this https://www.ebay.com/itm/253468669130 it is 3018 with Woodpacker 2.8 board. Here are settings I read:
|
Help how to restore original firmware grbl 1.1f. By mistake install benks eleksmaker and the motherboard does not work |
Some more detailed video, try the arduino load the grbl and it does not work. |
It's a bit short "it does not work"
|
Dear Orval14: I look at your Woodpecker board but it´s not the same as mine. |
@blourido and @Orval14 thank you for posting this information on the Woodpecker 3.1 GRBL board. I've ordered my first-ever CNC (a 3018, specifically this one) and I am expecting it this week! :) Would you happen to have a schematic for the Woodpecker 3.1 controller? I found this one, but it is unlabeled. I suspect it is for a slightly different board: https://s3.amazonaws.com/linksprite/cnc/schematic+2.pdf I suppose the most important thing is the image above showing the bootloader pins. Thanks |
Good evening gojimmypi, For the update of GRBL, the explanations of previous posts and this wiring should be able to assist you. |
FYI, I found out there is a much simpler way of re-flashing my Woodpecker 3.0 board with just the onboard CH340 serial. Apparently the bootloader is already loaded on the chip, but the reset pin isn't hooked to the CH340. The key is to ground the reset pin, then release from ground and run avrdude at the exact same time. I used the two middle pins of the bottom row of the UART connector for this. Timing is critical here and starting avrdude and releasing RST from GND has to happen pretty much at the exact same time. |
Good day @hberjanin .
Regards |
Hello, I need to ask one question, because it‘s not clear for me. I‘ve got one question for my little machine. First to say, the Board is at the moment not in the machine. Sorry for the noob questions, but I don‘t want to toast my board g |
Hello, normally Nano or Uno it must work all the same if the wiring is good. PS: - Do not forget to change the programmer to AVR ISP and no longer USBasp.
|
I discovered a solution, what happens is that the boards are configured with an old bootloader and the arduino IDE recognizes it as an arduino nano in the old bootloader option (I am using version 1.8.9). I uploaded the GRBL 1.1 with the arduino IDE, place these settings (my board woodpecker is v3.3)
and the CNC worked |
Here's the stock settings from my Woodpecker CNC Grbl 0.9j board. Acceleration rates are much higher (like 5000 for X & Y) compared to the Default Grbl ones: $$ |
I have the woodpecker CNC board version 3.3. Are the pins for ISP programming the same as 3.2? |
Yeah! After lot of time away from hobbies, I could finally succeed to upgrade to grbl 1.1h using the @Orval14 connection: What I could not do is burning the bootloader. It says to be done but I cannot use the USB to upload a new scketch. Thanks to all |
@peagerfw hello i have the same problem 12 DC power converter is dead, i tried replace 470 capacitor but no way, what you do with this piece of :D ? btw i am from slovakia too bro. |
For anyone else coming across this, yes simply removing the stepper drivers makes it flash as usual from Arduino IDE! |
Not all the boards @calston. Mine didn’t go so easy and I tried that too. Only way working for me was the last one I commented. Even previous similar ones didn’t work for me. |
May be new versions of the Woodpecker? |
Mine doesn't have a version, it just says "Woodpecker CNC GRBL 0.9", but I do notice the reset button is rotated 90 degrees to the one in the pictures above. |
Thank you to everyone sharing your results here. I finally got my CNC PRO 3018 flashed to the latest version grbl v1.1h with some modifications. I would like to note that it already came with WOODPECKER 3.2 and grbl v1.1f.20170801 was already on it (purchased Nov 2018). Board and offline controller looks similar to this one here: JBSchueler mentioned this
avrdude -CC:\Users\XXX\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9/etc/avrdude.conf -v -patmega328p -carduino -PCOM11 -b115200 -Uflash:w:C:\projects\CNC\CNC3018\update_fw/grbl_v1.1f.20170801.hex:i Using This worked : I remembered seeing this in avrdude devices.txt and figured it was worth a shot to try the different
Strangely enough, /bin/avrdude -C/etc/avrdude.conf -v -patmega328p -carduino -P/dev/ttyUSB0 -b57600 -D -Uflash:w:/tmp/arduino_build/grblUpload.ino.hex:i No
Figured I may as well share this for anyone looking for optimal settings for the 3018: #ifdef DEFAULTS_CNC_PRO_3018
// Grbl custom settings.
#define DEFAULT_X_STEPS_PER_MM 800.0
#define DEFAULT_Y_STEPS_PER_MM 800.0
#define DEFAULT_Z_STEPS_PER_MM 800.0
#define DEFAULT_X_MAX_RATE 2500.0 // mm/min
#define DEFAULT_Y_MAX_RATE 2500.0 // mm/min
#define DEFAULT_Z_MAX_RATE 2000.0 // mm/min
// #define DEFAULT_X_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
// #define DEFAULT_Y_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
// #define DEFAULT_Z_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
#define DEFAULT_X_ACCELERATION 80.0
#define DEFAULT_Y_ACCELERATION 80.0
#define DEFAULT_Z_ACCELERATION 100.0
#define DEFAULT_X_MAX_TRAVEL 300.0 // mm NOTE: Must be a positive value.
#define DEFAULT_Y_MAX_TRAVEL 180.0 // mm NOTE: Must be a positive value.
#define DEFAULT_Z_MAX_TRAVEL 45.0 // mm NOTE: Must be a positive value.
#define DEFAULT_SPINDLE_RPM_MAX 255.0 // rpm (I use this setting for both laser and milling)
#define DEFAULT_SPINDLE_RPM_MIN 5.0 // rpm
#define DEFAULT_STEP_PULSE_MICROSECONDS 10
#define DEFAULT_STEPPING_INVERT_MASK 0
#define DEFAULT_DIRECTION_INVERT_MASK 5 // 0
#define DEFAULT_STEPPER_IDLE_LOCK_TIME 25 // msec (0-254, 255 keeps steppers enabled)
#define DEFAULT_STATUS_REPORT_MASK 3 // MPos enabled ($10=1 bCNC recommended $10=3 for v1.1)
#define DEFAULT_JUNCTION_DEVIATION 0.01 // mm
#define DEFAULT_ARC_TOLERANCE 0.002 // mm
#define DEFAULT_REPORT_INCHES 0 // false
#define DEFAULT_INVERT_ST_ENABLE 0 // false
#define DEFAULT_INVERT_LIMIT_PINS 0 // false
#define DEFAULT_SOFT_LIMIT_ENABLE 0 // false
#define DEFAULT_HARD_LIMIT_ENABLE 0 // false
#define DEFAULT_INVERT_PROBE_PIN 0 // false
#define DEFAULT_LASER_MODE 0 // false
#define DEFAULT_HOMING_ENABLE 0 // false
#define DEFAULT_HOMING_DIR_MASK 0 // move positive dir
#define DEFAULT_HOMING_FEED_RATE 25.0 // mm/min
#define DEFAULT_HOMING_SEEK_RATE 500.0 // mm/min
#define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
#define DEFAULT_HOMING_PULLOFF 1.0 // mm
#endif and change in #define DEFAULTS_GENERIC
#define CPU_MAP_ATMEGA328P // Arduino Uno CPU to // #define DEFAULTS_GENERIC
#define DEFAULTS_CNC_PRO_3018 // Custom
#define CPU_MAP_ATMEGA328P // Arduino Uno CPU Note: I did have all steppers disconnected and only the 24v power supply and usb cable hooked up. Hopefully that may help others out that stumbles here like I did |
I realize im late to the party but for anyone following, i was able to update my woodpecker board to grbl 1.1h with a usb connection and a combination of tutorials. |
Hello, I just recently decided to update my Chinese “Woodpecker CNC Board” to the most up-to-date grbl Version 1.1f.
I found Mariano Gaston’s YouTube video that promises the feasibility of this procedure and shows the necessary connections. I also read the issue about connecting limit switches to this board (#123) and as mentioned there I re-checked all pins from the header regarding there mapping to the 328P. For some reason I can’t get a direct connection between the pin associated with MISO and its counterpart on the chip itself. The connection seems to be bridged by something – maybe a diode? Nevertheless, I tried to connect my programmer (usbasp-clone and ArduinoISP). - Long story short, after several ours of fiddling around I finally managed to brick my controller board.
I know this is most probably not an issue with GRBL itself and thus should not be posted as an issue for that, but I have no idea where to look for support regarding this specific problem. So sorry for that, but any help is highly appreciated!
Following first what I’ve done to kill the board and then what I’ve tried to get it back up.
As described above I am using an usbasp-clone and an Arduino Nano as ArduinoISP. From the begin on I had problems connecting the Woodpecker using the usbasp-clone, so I mostly tried to update with the avrisp. With all connection in place and the external power supply connected I got something like this from avrdude:
`$ avrdude -c avrisp -p m328p -P com6 -b 19200 -B 100
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude.exe: Device signature = 0x0fca07
avrdude.exe: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.
avrdude.exe done. Thank you.`
After several hours I thought it would be a great idea to just modify Arduino’s avrdude configuration to expect this device signature. I clicked the “Burn bootloader” entry, it did something and then crashed. I’ve got no log from that procedure but now, the board is not serial-printing its version number on startup anymore.
Since then I’ve tried many different configurations, with and without external power supply using windows and linux hosts, testing my programmers with other 328p chips, etc.
My current test is just an avrdude invocation to query the device signature. Both programmers are working, I verified that with the other chip. For that reason, I assume the programmer-side wiring is correct as well. I checked the wiring to the Woodpecker board multiple times and for the MISO pin that is connected via an unknown component I also tried to bypass it by connecting the wire directly to the atmega pin.
Using the usbasp-clone I always get an ‘initialization failed’ (windows and linux host). With the ArduinoISP I get two different responses depending on the attachment of the programmers VCC line - despite the external supply – It’s either
0x0fca07
(with connected VCC) or0x1f9f0f
(with disconnected VCC) but never 0x1e950f what it should be. I tried different values for the -B parameter without any success.So, any suggestions?
The text was updated successfully, but these errors were encountered: