

CNCFia
CNC Daughte Card for MCU based CNC controllers
- Size
- 81.3 × 85.7 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 57
- Nets
- 91
- Pads
- 268
- Tracks, vias
- 866, 53
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 5 (file 20200104)
- Created
- 5 Feb 2020
- Updated
- 15 Feb 2020
Overview
CNCFia is an open-source printed circuit board by coredump, from the coredump/CNCFia repository on GitHub. It is a 2-layer board of 81.3 × 85.7 mm with 57 parts on 91 nets, routed with 866 tracks and 53 vias.
It is built around the LM358P, NTJD5121NT1G and LTV-847, with the 24LC16B/P among its other parts. Its parts include 16 connectors, 12 ICs, 9 resistors, 4 diodes and 3 capacitors. It belongs with the robots and motor control boards of this library.
Main components
4LM358P
DIP-8-1.5V~18V 0℃~+70℃ 1MHz 2 2mV 3V~36V 3nA 40mA 45nA 500uA 85dB Built-in compensation DIP-8 Operational Amplifier ROHSSlkorOperational AmplifierNTJD5121NT1G
SC-88-55℃~+150℃ 1.6Ω@10V 2 N-Channel 2.5V 250mW 26pF 295mA 60V 900pC@4.5V N-Channel SC-88 MOSFETs ROHSonsemiMOSFETsLTV-847
DIP-16-30℃~+110℃ 1.2V 100mV@20mA,1mA 200mW 35V 3us 4 4us 50% 50mA 50mA 5kV 600% 6V DC Phototransistor DIP-16 Transistor, Photovoltaic Output Optoisolators ROHSLite-OnTransistor, Photovoltaic Output Optoisolators24LC16B/P
PDIP-81,000,000 cycles 16Kbit 2.5V~5.5V 200 Years 400kHz 5ms Hardware write protection function、Noise suppression function I2C PDIP-8 EEPROM ROHSMicrochip TechnologyEEPROM
README
README.mdCNCFia
The idea with this board is to provide a generic shield/daughter card for 3.3V MCUs running CNC firmwares like GRBL (and its ports) and g2core. For that, instead of making a shield with specific sockets, we decided to provide a pin header that can be used to connect to different MCUs.
Included capabilities
Switches
There are six opto-isolated connectors for limit switches (X, Y, and Z Min/Max limits), a Probe connector and an extra opto-isolated connector to be used for any generic function, and five non-opto isolated ones to be used for external controls (Door security, Emergency Stop, etc).
The opto-isolated switches have an option to be powered by an entirely separated power source to provide full electrical isolation.
All the switches are pulled UP via 4.7kΩ resistors, intended to be used with NC (normally closed) switches connected to the GND, making it an active low signal. Take that in consideration when wiring/configuring the software.
External driver control/level shifting
Support for nine voltage shifted outputs, mosfet (2n700X) driven. Enough to provide Step/Pulse/Enable signals for three external drivers (those usually have a 5V control voltage).
The mosfets connect the outputs to GND, so when wiring make sure to provide the 5V common wire to all positive (+) signals and the outputs to the negative (-) signals.
TODO example
Jumper Settings
| JP1 | Result |
|---|---|
| 1-2 | 5V voltage for board functions will be provided by external power source connected to EXTERNAL 5V IN |
| 1-3 | 5V to board functions will be provided by the MCU 5V Pin connected to the controller input |
Connector Descriptions
TODO add descriptions and image
Electrical notes
View this project on CADLAB.io.
All calculations were made considering a 3.3V output from the driving MCU pins, while keeping the output currents under 10 mA, what should be safe for most of the MCUs around.
The 3904s driving the relays have a base current (Ib) of ~ 7.8 mA, that should be enough to saturate the transistor and provide the 78 mA needed by the relay coil.
The LTV-847s are used with typical values for Vf and If, according to datasheet specs.
The OPAMP output for the spindle can be regulated with a potentiometer and from the 3.3V PWM it can get values close to 11V with a 12V power source. Simulated circuit shows a 0.4s approximately time to get to the stable voltage.
License, Copyright and disclaimers
Copyright Jose Junior jose.junior@gmail.com 2020.
This documentation describes Open Hardware and is licensed under the CERN OHL v. 1.2.
You may redistribute and modify this documentation under the terms of the CERN OHL v.1.2. This documentation is distributed WITHOUT ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING OF MERCHANTABILITY, SATISFACTORY QUALITY AND FITNESS FOR A PARTICULAR PURPOSE. Please see the CERN OHL v.1.2 for applicable conditions.
Parts
57| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | NTJD5121N | Package_TO_SOT_SMD:SOT-363_SC-70-6 | U3, U4, U7, U8, U9, U10, U11, U12 |
| 4 | 10k | Kicad_extra_components:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R1, R2, R3, R62 |
| 4 | 1N4148 | Diode_SMD:D_SOD-123 | D1, D2, D3, D4 |
| 4 | G6RL-1 DC5 | Kicad_extra_components:RELAY_G6RL-1_5VDC | RLY1, RLY2, RLY3, RLY4 |
| 4 | MountingHole_3.2mm_M3 | MountingHole:MountingHole_3.2mm_M3 | M1, M2, M3, M4 |
| 3 | 10u | Capacitor_SMD:C_1206_3216Metric_Pad1.42x1.75mm_HandSolder | C1, C2, C3 |
| 3 | 4k7 | Kicad_extra_components:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R59, R60, R61 |
| 2 | 2k2 | Kicad_extra_components:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R5, R6 |
| 2 | CAY17-472JALF | Kicad_extra_components:RESCAXS64P320X160X60-10N | RN1, RN3 |
| 2 | Extra SW 0 | Kicad_extra_components:CUI_TBP02R2-381-04BE | J5, J6 |
| 2 | LTV-847 | Kicad_extra_components:SOIC254P1016X460-16N | U1, U2 |
| 1 | 20k | Potentiometer_THT:Potentiometer_ACP_CA6-H2,5_Horizontal | RV1 |
| 1 | 24LC16 | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U6 |
| 1 | 5V Source | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | JP1 |
| 1 | 5V_OUT | Kicad_extra_components:CUI_TBP02R2-381-02BE | J1 |
| 1 | CAY17-221JALF | Kicad_extra_components:RESCAXS64P320X160X60-10N | RN2 |
| 1 | Coolant | Kicad_extra_components:CUI_TBP02R2-381-03BE | J13 |
| 1 | Driver_X | Kicad_extra_components:CUI_TBP02R2-381-04BE | J10 |
| 1 | Driver_Y | Kicad_extra_components:CUI_TBP02R2-381-04BE | J11 |
| 1 | Driver_Z | Kicad_extra_components:CUI_TBP02R2-381-04BE | J12 |
| 1 | IN_EXT_12V | Kicad_extra_components:CUI_TBP02R2-381-02BE | J7 |
| 1 | IN_EXT_5V | Kicad_extra_components:CUI_TBP02R2-381-02BE | J2 |
| 1 | LM358P | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U5 |
| 1 | Limit SW_XY | Kicad_extra_components:CUI_TBP02R2-381-04BE | J3 |
| 1 | Limit SW_ZA | Kicad_extra_components:CUI_TBP02R2-381-04BE | J4 |
| 1 | Mist | Kicad_extra_components:CUI_TBP02R2-381-03BE | J17 |
| 1 | Signal Input | Connector_PinHeader_2.54mm:PinHeader_2x16_P2.54mm_Vertical | J9 |
| 1 | Spin_10V | Kicad_extra_components:CUI_TBP02R2-381-02BE | J14 |
| 1 | Spin_Dir | Kicad_extra_components:CUI_TBP02R2-381-03BE | J16 |
| 1 | Spin_Enabl | Kicad_extra_components:CUI_TBP02R2-381-03BE | J15 |
Questions
How big is the CNCFia PCB?
It measures 81.3 × 85.7 mm and has 2 copper layers, 1.6 mm thick.
What parts does the CNCFia use?
57 parts, built around the LM358P, NTJD5121NT1G, LTV-847 and 24LC16B/P. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the CNCFia KiCad files?
From the coredump/CNCFia repository on GitHub, at the commit this page was made from: the board is CNCFia.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the CNCFia design in my own project?
Its repository states no licence, so its author keeps all rights: ask coredump before reusing the design.
Similar boards
- 4 layers60 × 50 mm

- 2 layers77.7 × 166.3 mm

Delta pico
AaronC81/delta-pico
Powerful scientific calculator based on the Raspberry Pi Pico
84 parts57MIT - 4 layers76 × 82.5 mm

Nucleo64 CNC
terjeio/CNC_Breakout_Nucleo64
CNC breakout for STM324F411 and ST32F446 development boards
120 parts22 - 4 layers58.4 × 62.5 mm

CNC Boosterpack
terjeio/CNC_Boosterpack
A BoosterPack that provides 3-axis motor support for some TI LaunchPads
74 parts13 - 4 layers47 × 47 mm

Motor Gen2
RoMeLaUCLA/romela-motor-driver
Motor driver PCB and firmware designed for RoMeLa actuators.
151 parts6MIT - 2 layers100 × 67 mm

Led controller
markus-k/led-controller-hardware
KiCAD schematics and design files for my LED controller.
91 parts5 - 2 layers102.1 × 119.4 mm

- 2 layers65 × 56 mm

PiADC2
capconix/PiADC2
PiADC open source project successor, the PiADC2 - A simple data acquisition board for use with the model B Raspberry Pis
72 parts1