We will use @techninja's CNCserver as a bridge from Processing to the AxiDraw.
- Install Node.js. Obtain this from https://nodejs.org/en/download/
- Install NPM. Obtain this at the terminal with
curl https://www.npmjs.com/install.sh | sh
. - Download the files from this repo or use this locally-stashed copy, axidraw_processing_realtime/installs/cncserver.zip. Unzip these files to a cncserver folder.
- Install the CNCServer package. Following the instructions from here, navigate to the cncserver folder at the command line, and execute
npm install
- In the terminal, enter
node cncserver --botType=axidraw
- In Processing, run the program axidraw_processing_realtime.pde.
- Note that the file jna-4.1.0.jar is incompatible with Processing v4's video capture library.
We will use EMSL's pyaxidraw and axicli to control the AxiDraw from Python. Documentation is here.
- Be sure to have installed Python and installed pip.
- Install the EMSL libraries at the terminal:
python -m pip install https://cdn.evilmadscientist.com/dl/ad/public/AxiDraw_API.zip
. More detailed instructions are here. - Install pynput, which can access real-time mouse coordinates:
pip3 install pynput
- Run the program mouse_to_axidraw.py, or other demos that come in the AxiDraw API.
An alternative option for realtime AxiDraw control via Python is Fogleman's Axi library.
We will use Nick Hardeman's ofxHPGL as a bridge from openFrameworks (C++) to the HP7475A.
- This assumes that the HP7475A is connected and working, as per these instructions.
- This assumes that you have downloaded and installed an appropriate development envrironment (e.g. XCode) as well as openFrameworks, using the instructions from here
- Download the ofxHPGL addon, and install it in the OF addons folder.
- There is an example project provided here: hp7475a_openframeworks. (Note, this is not a full openFrameworks installation bundle).
- In ofApp.cpp on line 5, you'll see
hp.setup( "/dev/tty.usbserial-A101768Y" );
. You'll need to change this to whatever is your computer's name for its USB-to-serial adaptor. You can locate your adapter by executing this in the terminal:ls /dev/tty.*
.
- See the lineus_p5js_realtime.js example described here.