-
Zach Fredin authoredZach Fredin authored
RNDMC
Reconfigurable Numeric Dataflow Machine Controller
aka project 'consistent-sandbox'
This is a piece of software that is designed to help you assemble high level controllers from dataflow software elements. It serves a graphical programming interface, and is meant to live with dataflow hardware elements from this project 'automatakit'.
It's in the early stages, so bear with us. Everything is going to be great.
Usage
Installing Node.js, WebSocket and SerialPort, and MathJS
To Run DMC, you'll need to install node.js, and then the packages serialport and ws (websocket).
Install Node.js
Node.js is a runtime environment for javascript, so you can write and run js locally. Download and install it here.
To check that node is installed, you can use
node -v
In Windows check that in Environment Variables, System Variables, Path there is a path for C:\Users\yourusername\npm folder. If the folder does not exist, create it and set the path.
Packages
I've added a package.json file to the repo, which is another cool node.js trick - this means that to install everything, you should be able to (after downloading the repo and cd-ing into it) run:
npm install
This should install everything else. If this fails, you can install things one-by-one as listed below.
Install Serialport
Node comes with a package controller called 'npm' - node package manager. You can use this to install dependencies for node programs.
Serialport is a package for node that allows it to interact with a hardware serial port.
Navigate to the directory where you'll be running from (atkapi). Do
npm install serialport
Install WS (WebSocket)
WebSockets are very simple web connections. We use them to chat between the 'server' / heap (node) and the 'view' (your browser).
To install ws, do
npm install ws
Install MathJS
MathJS is just a node package that does maths. To install, you guessed it, do
npm install mathjs
Installing Serial Port Drivers
The ATKRouter uses a CP2102N
USB-to-UART bridge to transmit and receive serial characters.
Drivers are available for all platforms at SiLabs' Website
Download and install drivers, and check in your system's device manager that a 'CP210x USB to UART Bridge' appears.
Running DMC
To run the program, we launch the main.js file with node, from the command line. One of the things this does is run a tiny HTTP server that we can use to access the UI.
cd to the rndmc folder and run:
node main
It's handy to keep a terminal window open beside a browser when running the software - it's not perfect yet - I do this: