diff --git a/NatBrailleTools/simpleJavaGrblStreamer/ant/gcodestreamer_ant_build.xml b/NatBrailleTools/simpleJavaGrblStreamer/ant/gcodestreamer_ant_build.xml
deleted file mode 100644
index 7719f64..0000000
--- a/NatBrailleTools/simpleJavaGrblStreamer/ant/gcodestreamer_ant_build.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/NatBrailleTools/simpleJavaGrblStreamer/ant/jar-in-jar-loader.zip b/NatBrailleTools/simpleJavaGrblStreamer/ant/jar-in-jar-loader.zip
deleted file mode 100644
index 4ee2ee6..0000000
Binary files a/NatBrailleTools/simpleJavaGrblStreamer/ant/jar-in-jar-loader.zip and /dev/null differ
diff --git a/NatBrailleTools/simpleJavaGrblStreamer/src/main/java/com/willwinder/sjgs/simplejavagrblstreamer/SimpleJavaGrblStreamer.java b/NatBrailleTools/simpleJavaGrblStreamer/src/main/java/com/willwinder/sjgs/simplejavagrblstreamer/SimpleJavaGrblStreamer.java
deleted file mode 100644
index ba97fc3..0000000
--- a/NatBrailleTools/simpleJavaGrblStreamer/src/main/java/com/willwinder/sjgs/simplejavagrblstreamer/SimpleJavaGrblStreamer.java
+++ /dev/null
@@ -1,176 +0,0 @@
-package com.willwinder.sjgs.simplejavagrblstreamer;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.LinkedList;
-import java.util.concurrent.BlockingQueue;
-import java.util.concurrent.LinkedBlockingQueue;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import jssc.SerialPort;
-import jssc.SerialPortEvent;
-import jssc.SerialPortEventListener;
-import jssc.SerialPortException;
-
-/**
- *
- * @author wwinder
- */
-public class SimpleJavaGrblStreamer {
- static int GRBL_BUFFER_SIZE = 125;
-
- public static void main(String argv[]) throws SerialPortException, IOException, InterruptedException {
- if (argv.length == 0)
- {
- System.out.println("Arguments: ");
- return;
- }
- if (argv.length != 3 && argv.length != 2) {
- System.out.println("Arguments: ");
- return;
- }
-
- String commPort = argv[0];
- Integer baud = Integer.parseInt(argv[1]);
- InputStream file = null;
- if (argv.length == 2)
- file = System.in;
- else {
- file = new FileInputStream(argv[2]);
- System.out.println("Streaming file " + argv[2]);
- }
-
- System.out.println("Streaming to port <" + commPort + " : " + baud + ">");
- SimpleJavaGrblStreamer s = new SimpleJavaGrblStreamer(commPort, baud);
- s.send(file);
-
- System.out.println("Done senting file.");
- }
-
- String commPort = null;
- Integer baud = null;
-
- private SimpleJavaGrblStreamer(String commPort, Integer baud) {
- this.commPort = commPort;
- this.baud = baud;
- }
-
- private void send(InputStream f) throws SerialPortException, IOException, InterruptedException {
- BlockingQueue commandComplete = new LinkedBlockingQueue();
-
- SerialPort serialPort = new SerialPort(commPort);
- serialPort.openPort();
- serialPort.setParams(baud, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE, true, true);
-
- Thread.sleep(5000);
-
- serialPort.addEventListener(new GrblSerialListener(serialPort, commandComplete));
- GrblSerialSender sender = new GrblSerialSender(f, serialPort, commandComplete, GRBL_BUFFER_SIZE);
- sender.send();
- serialPort.closePort();
- }
-
- private static class GrblSerialListener implements SerialPortEventListener {
- SerialPort serialPort = null;
- BlockingQueue completedCommands;
- StringBuilder inputBuffer;
- private GrblSerialListener(SerialPort port, BlockingQueue completedCommands) {
- this.serialPort = port;
- this.completedCommands = completedCommands;
- inputBuffer = new StringBuilder();
- }
-
- @Override
- public void serialEvent(SerialPortEvent event) {
- if(event.isRXCHAR() && event.getEventValue() > 0){
- try {
- byte buffer[] = serialPort.readBytes();
- for (byte b: buffer) {
- if (b == '\n') {
- //System.out.println("Received command: " + inputBuffer.toString());
- if (inputBuffer.toString().startsWith("ok") || inputBuffer.toString().startsWith("error"))
- completedCommands.add(1);
- inputBuffer.setLength(0);
- } else {
- inputBuffer.append((char)b);
- }
- }
- }
- catch (SerialPortException ex) {
- System.out.println(ex);
- System.out.println("serialEvent");
- }
- }
- }
- }
-
- private static class GrblSerialSender {
- InputStream file = null;
- SerialPort port = null;
- Integer currentBufferSize = null;
- Integer maxBufferSize = null;
-
- BlockingQueue completedCommands = null;
- LinkedList activeCommandSizes;
-
- private GrblSerialSender(InputStream f, SerialPort sp, BlockingQueue completedCommands, Integer activeBufferSize) {
- file = f;
- port = sp;
- maxBufferSize = activeBufferSize;
- currentBufferSize = 0;
- this.completedCommands = completedCommands;
- activeCommandSizes = new LinkedList();
- }
-
- private void send() throws IOException {
- // Java 8
- //try(Stream lines = Files.lines(Paths.get(file.getAbsolutePath()))){
- // lines.forEach(s -> sendLine(s));
- //}
-
- BufferedReader br = null;
- try {
- String sCurrentLine;
- br = new BufferedReader(new InputStreamReader(file));
- while ((sCurrentLine = br.readLine()) != null) {
- sendLine(sCurrentLine);
- }
- } finally {
- if (br != null)br.close();
- }
- }
-
- private void sendLine(String s) {
- // Wait until there is room, if necessary.
- while (maxBufferSize < (currentBufferSize + s.length() + 1)) {
- try {
- //System.out.println("waiting for room.... active command count: " + this.activeCommandSizes.size());
-
- // Wait for a command to complete
- completedCommands.take();
- currentBufferSize -= this.activeCommandSizes.removeFirst();
- } catch (InterruptedException ex) {
- Logger.getLogger(SimpleJavaGrblStreamer.class.getName()).log(Level.SEVERE, null, ex);
- return;
- }
- }
-
- try {
- System.out.println("Sending command: " + s.trim());
- //System.out.printf(".");
- this.port.writeString(s.trim() + "\n");
- int commandSize = s.length() + 1;
- activeCommandSizes.add(commandSize);
- currentBufferSize += commandSize;
- } catch (SerialPortException ex) {
- Logger.getLogger(SimpleJavaGrblStreamer.class.getName()).log(Level.SEVERE, null, ex);
- return;
- }
- }
- }
-}
diff --git a/docs/IMG/mks.jpg b/docs/IMG/mks.jpg
new file mode 100644
index 0000000..9ae9f77
Binary files /dev/null and b/docs/IMG/mks.jpg differ
diff --git a/docs/IMG/nema17.jpg b/docs/IMG/nema17.jpg
new file mode 100644
index 0000000..b445fe6
Binary files /dev/null and b/docs/IMG/nema17.jpg differ