Share with:


In the case you heed to to upgrade the Woodpecker CNC control board, you will have to overcome some issues.

First one, the firmware upgrade via USB is almost(?) impossible, due to the CH340 chip between USB socket and Atmeg328.

Second one, the ISP header IS present on the PCB, but is has 1,27mm (0,05″ or 50 mils) pitch. Usual ISP connectors comes to 2,54 mm (0,1″ or 100 mils) pitch.The on-board ISP is unpopulated 1×6 connector right below the 2×17 header. The pinout (left to right) is VCC, empty, GND, RST, SCK, MOSI, MISO. MISO is connected via 100 Ohm resistor to Atmega.

The struggling point is MOSI has no corresponding pin on the 2×17 connector, while others do have: VCC – 2, GND – the bottom row, RST – 4, SCK – 6 (D13), MISO – 24, 26 (Zen). So you will need to solder extra pin for MOSI. Now, from GRBL wiki,

For Grbl v0.9 and v1.1+ default builds: (NOTE: Z-limit is on D12 and the spindle enable pin uses the hardware PWM on D11.)

As this for Arduino board, D12 maps to MISO ( pin #16 on TQFP) and D11 maps to MOSI ( pin #15 on TQFP) pins on Atmega328. Check carefully if pin #15 on Atmega328 is connected to the FET (IRF F540NS in my case) on the PCB.

So 2 ways to solve the problem:

  1. add extra MOSI pin to the 5th pad of ISP connector and use loose wiring to connect the programmer, or
  2. Make an adapter board from 1×7 1,27 pitch connector to the standard 6 pin AVR ISP connector. Going this way you will need a 1.27mm pith pins, which are not so common in every drawer. But may be worth purchasing.

And yes, a rant on the other pins (all active low):

 

Inputs (active low):
Name Designation
A5 Z probe
A4 not used right now
A2 cycle start or resume
A1 feed hold
Xen, Yen and Zen NO switches, connected in paralell,
with protective resistors and capacitors
Outputs (active high):
A3 coolant
D13 spindle

UPDATE:

it IS possible to upgrade via USB cable. Use XLoader and 57600 connection speed. Press RESET button on the PCB before the upload, start the uplaod via XLoader and release the RESET button when “Loading …” message appears.