Python library for controling Gestalt Nodes with 086-005 firmware. A control system framework for personal fabrication.
Pygestalt is a Python library with examples that enables the use of high-level language (Python) to control low-level things. So far G-code was used to describe what a CNC machine should do, which motor to spin, set the target temperature of an extruder etc. Pygestalt enables you to create your own language for the machine you are building.
First make sure that your Gestalt Node is there with the 086-005 firmware installed.
Second make sure that you have Python installed. You can check that by opening Terminal and using the following command.
It should output a line similar to the one below.
If that is not the case, consult the Python Beginners Guide or ask your favorite search engine!
Third make sure that you have the Python package manager or
pip installed. Follow the pip installation guide or, again, ask your favorite search engine.
Fourth install Python serial library or
pyserial. Open Terminal and use the command below.
pip install pyserial
Fifth (finally )download
pygestalt. To do that open Terminal, navigate to your secret machine project directory and use the following command (oh yes, you should have Git). You can also click on the green button above and download a .zip archive.
git clone https://github.com/nadya/pygestalt.git
Then you have to change directory to
pygestalt by using the
Make sure that you are there by using the
pwd (Print Working Directory) command. It should output a path with
/pygestalt at the end.
pygestalt. Run the following command to do that.
sudo python setup.py install
You can check if it is there with
pip show pyserial
It should print some basic information about the
pyserial library and its authors.
Seventh try it out! The best way is to pick the examples/machines/htmaa example, modify the
single_node.py and run it. Below is the line you should edit, look for the follwing part.
portName = '/dev/ttyUSB0'
ls /dev/cu* (on a Mac OS system) to find out your serial port. It should look similar to the one below.
/dev/ttyUSB0 with the one you got, save and run the
It will ask you to identify the X axis by pressing a button on the Gestalt Node board. If your motor is connected, it should move there and back.
Congratulations if you managed to get it working. For any comments feel free to add an issue or you see things missing, submit a pull request. Many people will be and remain thankful.
- pygestalt website
- A Gestalt Framework for Virtual Machine Control of Automated Tools - Master Thesis by Ilan Ellison Moyer (2013)
- Making machines that make - talk given by Nadya Peek touching on "pygestalt" given at 30C3 (2013)