73 lines
1.6 KiB
Markdown
73 lines
1.6 KiB
Markdown
# puredata class
|
|
|
|
This repo contains a short puredata class with some examples and a webserver.
|
|
Use pandoc to generate the index.html in the source directory.
|
|
The included webserver can be used to host the course on the LAN.
|
|
|
|
Dependencies:
|
|
|
|
* pandoc
|
|
* python3 bottle framework
|
|
|
|
It also includes a small OSC server that can be used to dispatch data to clients.
|
|
This server fetches JSON data from online sources and formats it to OSC bundles.
|
|
It currently dispatches:
|
|
|
|
* weather data
|
|
* bitcoin price data
|
|
* cpu and ram data
|
|
|
|
To run the server you need these python3 dependencies that can be installed with pip.
|
|
|
|
* python-osc
|
|
* psutil
|
|
|
|
The server **listens** on port **8080** and send OSC data back on port **8081** to the client who requested the data.
|
|
The following OSC messages can be sent to the server.
|
|
|
|
```python
|
|
/get/weather [CITY]
|
|
/get/bitcoin
|
|
/get/cpu
|
|
```
|
|
|
|
It's running as a systemd service with the following configuration at */etc/systemd/system/osc_server.service*.
|
|
|
|
```bash
|
|
[Unit]
|
|
Description=OSC server for puredata
|
|
After=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=pi
|
|
Group=pi
|
|
WorkingDirectory=/home/pi/sources/puredata/
|
|
ExecStart=/usr/bin/python3 osc_server.py
|
|
StandardOutput=syslog
|
|
StandardError=syslog
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
```
|
|
|
|
Controlling the service is done with the following commands.
|
|
|
|
```bash
|
|
sudo systemctl start osc_server.service
|
|
sudo systemctl stop osc_server.service
|
|
sudo systemctl restart osc_server.service
|
|
sudo systemctl status osc_server.service
|
|
|
|
```
|
|
|
|
# todo
|
|
|
|
* restructure so that there is a intro section with video examples of nice patches
|
|
* more robust end patches
|
|
* finish french translation
|
|
|
|
# done
|
|
|
|
* have each chapter be more verbose
|