Skip to content
Snippets Groups Projects
README.md 2.52 KiB
Newer Older
  • Learn to ignore specific revisions
  • Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    # Todo
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - bugs
       - pan after window return
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - processes
        - three-axis finish cut
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
        - FDM slicer
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - editing
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
        - subgraph copy paste
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
        - nested module graphs
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - ui
        - collapse nodes
        - refactor for skinning
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - Cross-Origin Resource Sharing
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - formats
        - HPGL input
        - SVG export
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
        - DXF export
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    - ...
    
    # To install and run mods locally
    
    You need to first install [node.js](https://docs.npmjs.com/getting-started/installing-node).
    
    Install the [http-server](https://www.npmjs.com/package/http-server) npm package. Including '-g' sets the installs the package gloabally, allowing you to use it as a command line tool:
    
    <code>npm install http-server -g</code>
    
    Clone the mods repository:
    
    <code>git clone ssh://git@gitlab.cba.mit.edu:846/pub/mods.git</code>
    
    Use the command line to navigate to the root of the mods repository:
    
    <code>cd mods</code>
    
    Start up a server:
    
    <code>http-server</code>
    
    Open a browser tab and go to <code>127.0.0.1:8080</code> which is the same as <code>http://localhost:8080</code> to view the server that you just started.
    
    Depending on how to need to use mods you can start local servers located in <code>mods/js</code>, for example, if you start from the root of the mods repository:
    
    <code>cd js</code>
    
    <code>node printserver.js</code>
    
    Amanda Ghassaei's avatar
    Amanda Ghassaei committed
    # Mods Connection Debugging
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    
    
    Amanda Ghassaei's avatar
    Amanda Ghassaei committed
    set correct serial port permission (do this each time you reboot the machine): <code>chmod a+rwx /dev/ttyUSB0</code>
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    
    
    Amanda Ghassaei's avatar
    Amanda Ghassaei committed
    start serialserver in the terminal so you can see the logs as it tries to connect.  navigate to the mods/js folder in the terminal (probably use <code>cd ~/mods/js</code>) and type: <code>node serialserver.js ::ffff:127.0.0.1 1234</code>
    
    Amanda Ghassaei's avatar
    Amanda Ghassaei committed
    
    check serialserver is running with: <code>ps aux | grep node</code>
    
    Neil Gershenfeld's avatar
    Neil Gershenfeld committed
    
    
    Sam Calisch's avatar
    Sam Calisch committed
    # Common Issues
    
    
    Sam Calisch's avatar
    Sam Calisch committed
    1. **_Help! My SRM-20 won't work!_** You  must use deviceserver.js rather than printserver.js to connect to the machine.  Note: the start_mods_server script by default uses printserver.
    
    Sam Calisch's avatar
    Sam Calisch committed
    2. **_Argg... why do I need to reset permissions on /dev/usb/lp0 every restart?_**  You can use `sudo add_user username lp` and `sudo add_user username lpadmin` to make persistent permissions.
    3. **_Why is my web socket connection refused when the addresses are the same?_** This can happen due to a difference between IPV4 and IPV6 addresses.  In your start mods server script, try changing 127.0.0.1 to ::ffff:127.0.0.1 and see if it helps.
    
    Sam Calisch's avatar
    Sam Calisch committed
    4. **_Why is my address in use?_** You must run stop_mods_server to free the address.  The IPV4 vs. IPV6 issue can confuse the server, but you can always restart your machine to free all addresses.