====== PCB Mill ====== {{::generic-tool.png?200 |}} Make the pixies go down the right path. ^ Status | PLANNING as 2018-12-03 | ^ Training | YES (see below) | ^ Hackable | NO | ^ Usage Restrictions | Members Only | ^ Owner | Vancouver Hack Space | ^ If it Breaks | Turn off. Put a BROKEN sign on machine. Notify forums immediately; update this wiki. | ^ Loan Status | (will be) Owned by VHS | ^ Arrival Date | Planning | ^ Location | N/A | | ^ Champion | See [[tool:compendium_of_champions|Compendium of Champions]] | ===== Safety ===== Be safe; safety procedures will be similar to other automated rotary machines (such as the Taig) ===== Design ===== The design is currently underway, but it is likely to be a CoreXY machine and may re-use the Sherline spindle/z axis. ===== Getting Involved ===== Tell us how you can help: https://talk.vanhack.ca/t/pcb-cnc-machine-s-group-project/8540/28 ===== Components ===== ====== Gantry ====== The xy gantry will be made in a CoreXY style. The Z will likely be pillaged from the Sherline Mill. The grantry will be prototyped in acrylic or any readily available material. The design should support both NEMA17 and NEMA23 stepper mounts in case upgrades are made at a later date Some materials are being provided, but there are gaps, see forum post for latest. ====== Controller ====== The controller will be based on a Raspberry Pi. The Pi will be running Raspbian and will be running some form of gcode sender. So far it looks like we are going to use cnc.js. It allows the Pi to not run an X environment, and allows you to run via a webpage, the controller on your own laptop. This way you can use a familiar machine and we can reduce hardware requirements and keep the build physically small and cheap. We still need: An Enclosure A Keyboard (preferably debris-free such as a sealed rubber keyboard) A Screen (preferably a smallish touchscreen) An Enclosure ====== Pendant ====== It looks like cnc.js has methods for extending it via plugins. One downside of cnc.js mentioned by LukeC is that the jog is not mach-3 like where you can hold it. This project uses a PS3 and based on the code: https://github.com/cncjs/cncjs-pendant-ps3 ====== Driver ====== The driver will be a GRBL based Arduino+Driver Shield. https://www.amazon.ca/gp/product/B06XJKVLG3/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1 ===== Configuration Documentation ===== Mostly this setup was followed: https://github.com/cncjs/cncjs/wiki/Installation ====== Credentials ====== There is no physical security for this device, therefore, the credentials are physically on the device. Use if necessary; but please document changes. There are no credentials on the cnc.js service; so normal operation need only go to the website. ====== Service ====== The web service is simply started with a crontab @reboot declaration as follows: ''@reboot PATH=$PATH:/home/pi/.nvm/versions/node/v6.15.1/bin /home/pi/.nvm/versions/node/v6.15.1/bin/node /home/pi/.nvm/versions/node/v6.15.1/bin/cnc >> $HOME/cncjs.log 2>&1 '' There is also a portmapping from 80 to 8000; cnc.js runs on 8000 locally and translates external requests from external 80 to 8000.