Skip to content

nneves/3DPrinterInterface

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

3D Printer Interface

3D Printer Interface using Node.js!

ChangeLog

Status: Core functionality is now in place. Started to prepare technical documentation for UI integration. UI interface still under development (at the moment there are only some basic test functionalities)

  • Update 4 (19-Jan-2013)

    • Added documentation for the REST API interface (required for UI implementation)
    • Refactored core module configurations to use config/*.json files
    • Fixed issues #12, #13, #14
    • .
  • Update3 (31-Dec-2012)

    • Added Socket.io for websockets communication (currently used to upload printer response to UI, should add support for bidirectional communication - will also maintain REST for API interface)
    • Added support in printer.js UI Library to map local callbacks with Socket.io Event Messages for easy integration with UI components
    • Fixed issues #2, #3, #4, #5, #6, #7, #8, #11
    • .
  • Update2 (29-Nov-2012):

    • Ported and re-factored R2C2 webinterface (including client javascript helper file)
    • Added app.js code to deploy initial WebInterface for UI testing
    • Added rest.js module code to deploy REST API
    • Created mainapp.js to bind upper rest.js module requests with lower level modules (core.js serial communications module, slicer.js, downloader.js, etc)
    • .
  • Update1 (06-Nov-2012): Initial ./modules/core.js module is now working with writable stream interface, serialport communication support completed and also internal minimal cache/stream data parser engine in place.

TODO

- Completlety redesign the frontend UI and add extra functionalities
- Create documentation to explain core modules communication/workflow

Techincal Specs initial draft (work in progress)

https://www.lucidchart.com/documents/view/4f5c-1f6c-50baa492-9d74-10150a442276

REST API documentation (required for UI integration)

https://github.com/nneves/3DPrinterInterface/blob/master/documentation/rest.md

How to test 3DPI

It is now possible to test the WebInterface and send a simple GCODE command to printer. There is also an initial support to print data from .gcode files located at /bin/gcode/ .

// clone repo

$ git clone git://github.com/nneves/3DPrinterInterface.git
$ cd 3DPrinterInterface

// update node required packages

$ npm update

// update configuration files (./config/*.json)

More info here: npm config package

# update rpi.json file and update the serialport property
nano ./config/rpi.json

// set node.js environment var to use ./config/rpi.json

// Note: when using default.json it is not required to export the variable, several config files can be set, only the exported will be used by node.js

export NODE_ENV=rpi

// launch demo WebInterface (will run on port 8080, REST API on 8081 and using the serialport defined in the exported config file)

$ node app.js

// Note: to test node app.js without a printer configure the serialport property with /dev/null to emulate printer serial port - printer response emulated by timer (default.js already configured with /dev/null)

3d Printers/electronic boards/microcontrollers tested hardware

License

Copyright (C) 2012 Nelson Neves

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/agpl-3.0.html

About

3D Printer Interface

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published