LitePlacer

Accepts Gcode from USB port and interprets it locally on the board
Stepper drivers handle 2.5 amps per winding which will handle
most motors up thru
NEMA23 and some NEMA34 motors.

TinyG project is a many-axis motion control system. It is designed for small CNC applications and other applications that require highly controllable motion control. TinyG is meant to be a complete embedded solution for small/medium motor control.
https://github.com/synthetos/TinyG/wiki

./

B: Home X

Homing axis X, timeout value: 428000

==> {"gc":"G28.2 X0"}







X homing switch not enabled

==> {"xsn":1}

<== {"r":{"xsn":1},"f":[1,0,10,4745]}

ReadyEvent r

==> {"xsn":3}

<== {"r":{"xsn":3},"f":[1,0,10,6373]}

ReadyEvent r

==> {"xsx":2}

<== {"r":{"xsx":2},"f":[1,0,10,8631]}

ReadyEvent r



../



B: Home X

Homing axis X, timeout value: 25000

==> {"gc":"G28.2 X0"}

<== {"r":{},"f":[1,0,18,77]}

<== {"sr":{"coor":0,"dist":1,"stat":9}}

<== {"qr":32,"qi":1,"qo":1}

<== {"qr":31,"qi":1,"qo":0}

<== {"sr":{"posx":-4.500,"feed":2000.00,"vel":2000.00}}

<== {"sr":{"posx":-11.000}}

<== {"sr":{"posx":-17.500}}

<== {"sr":{"posx":-24.000}}

<== {"sr":{"posx":-30.333}}

<== {"sr":{"posx":-36.833}}

<== {"sr":{"posx":-43.333}}

<== {"sr":{"posx":-49.833}}

<== {"sr":{"posx":-56.333}}

<== {"sr":{"posx":-62.834}}

<== {"sr":{"posx":-69.333}}

<== {"sr":{"posx":-75.833}}

<== {"sr":{"posx":-82.167}}

<== {"sr":{"posx":-88.666}}

<== {"sr":{"posx":-91.166,"vel":0.16}}

<== {"sr":{"posx":-608.000,"feed":0.00,"vel":0.00,"coor":1,"dist":0,"stat":3}}

ReadyEvent stat



..*/





../

Application Start

Version: 1.0.8340.22961, build date: 11/01/2022 12:45:22

Reading application settings from C:\LitePlacer\LitePlacer.Appsettings

Creating data file backups to C:\LitePlacer\DataBackup\2024-07-17 12.10.06

Basic Setup tab begin

LoadVideoAlgorithms from C:\LitePlacer\LitePlacer.VideoAlgorithms

UpdateVideoProcessing()

BuildFunctionsList:

No saved temp CAD data file

No saved temp job data file

DownCamera already stopped

UpCamera already stopped

Downcamera moniker not found. Moniker: @device:pnp:\\?\usb#vid_f007&pid_a999&mi_00#6&1b900a24&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

Loading tapes with nozzles data

Reading v2 format file C:\LitePlacer\LitePlacer.TapesData_v2

Loading nozzles data

Reading v2 format file C:\LitePlacer\LitePlacer.NozzlesLoadData_v2

Reading v2 format file C:\LitePlacer\LitePlacer.NozzlesUnLoadData_v2

Reading v2 format file C:\LitePlacer\LitePlacer.NozzlesVisionParameters_v21

Loading nozzle calibration data from C:\LitePlacer\LitePlacer.NozzlesCalibrationData_v3

Connected to serial port COM3

==> {sr:n}

TinyG board found.

<== {"r":{"sr":{"posx":0.000,"posy":0.000,"posz":0.000,"posa":0.000,"feed":0.00,"vel":0.00,"unit":1,"coor":1,"dist":0,"frmo":1,"stat":3}},"f":[1,0,7,5317]}

ReadyEvent r:sr

Reading TinyG settings:

==> {"st":""}

<== {"r":{"st":0},"f":[1,0,10,8400]}

ReadyEvent r

==> {"mt":""}

<== {"r":{"mt":300.00},"f":[1,0,10,2825]}

mt value: 300

ReadyEvent r

==> {"jv":""}

<== {"r":{"jv":3},"f":[1,0,10,5886]}

ReadyEvent r

==> {"js":""}

<== {"r":{"js":1},"f":[1,0,10,5969]}

ReadyEvent r

==> {"tv":""}

<== {"r":{"tv":1},"f":[1,0,10,7227]}

ReadyEvent r

==> {"qv":""}

<== {"r":{"qv":2},"f":[1,0,10,4252]}

ReadyEvent r

==> {"sv":""}

<== {"r":{"sv":1},"f":[1,0,10,9297]}

ReadyEvent r

==> {"si":""}

<== {"r":{"si":200},"f":[1,0,10,4311]}

ReadyEvent r

==> {"gun":""}

<== {"r":{"gun":1},"f":[1,0,11,7651]}

ReadyEvent r

==> {"1ma":""}

<== {"r":{"1ma":0},"f":[1,0,11,7976]}

ReadyEvent r

==> {"1sa":""}

<== {"r":{"1sa":0.900},"f":[1,0,11,7161]}

ReadyEvent r

==> {"1tr":""}

<== {"r":{"1tr":40.0000},"f":[1,0,11,2474]}

ReadyEvent r

==> {"1mi":""}

<== {"r":{"1mi":8},"f":[1,0,11,7985]}

ReadyEvent r

==> {"1po":""}

<== {"r":{"1po":0},"f":[1,0,11,5004]}

ReadyEvent r

==> {"1pm":""}

<== {"r":{"1pm":2},"f":[1,0,11,3385]}

ReadyEvent r

==> {"2ma":""}

<== {"r":{"2ma":1},"f":[1,0,11,2464]}

ReadyEvent r

==> {"2sa":""}

<== {"r":{"2sa":0.900},"f":[1,0,11,9295]}

ReadyEvent r

==> {"2tr":""}

<== {"r":{"2tr":40.0000},"f":[1,0,11,2225]}

ReadyEvent r

==> {"2mi":""}

<== {"r":{"2mi":8},"f":[1,0,11,1659]}

ReadyEvent r

==> {"2po":""}

<== {"r":{"2po":0},"f":[1,0,11,5513]}

ReadyEvent r

==> {"2pm":""}

<== {"r":{"2pm":2},"f":[1,0,11,7058]}

ReadyEvent r

==> {"3ma":""}

<== {"r":{"3ma":2},"f":[1,0,11,3787]}

ReadyEvent r

==> {"3sa":""}

<== {"r":{"3sa":1.800},"f":[1,0,11,1431]}

ReadyEvent r

==> {"3tr":""}

<== {"r":{"3tr":8.0000},"f":[1,0,11,7613]}

ReadyEvent r

==> {"3mi":""}

<== {"r":{"3mi":8},"f":[1,0,11,5332]}

ReadyEvent r

==> {"3po":""}

<== {"r":{"3po":0},"f":[1,0,11,9186]}

ReadyEvent r

==> {"3pm":""}

<== {"r":{"3pm":2},"f":[1,0,11,7567]}

ReadyEvent r

==> {"4ma":""}

<== {"r":{"4ma":3},"f":[1,0,11,8274]}

ReadyEvent r

==> {"4sa":""}

<== {"r":{"4sa":0.900},"f":[1,0,11,7235]}

ReadyEvent r

==> {"4tr":""}

<== {"r":{"4tr":160.0000},"f":[1,0,11,2085]}

ReadyEvent r

==> {"4mi":""}

<== {"r":{"4mi":8},"f":[1,0,11,9005]}

ReadyEvent r

==> {"4po":""}

<== {"r":{"4po":0},"f":[1,0,11,2860]}

ReadyEvent r

==> {"4pm":""}

<== {"r":{"4pm":2},"f":[1,0,11,1241]}

ReadyEvent r

==> {"Xam":""}

<== {"r":{"xam":1},"f":[1,0,11,9625]}

ReadyEvent r

==> {"Xvm":""}

<== {"r":{"xvm":10000},"f":[1,0,11,3029]}

ReadyEvent r

==> {"Xfr":""}

<== {"r":{"xfr":10000},"f":[1,0,11,7270]}

ReadyEvent r

==> {"Xtn":""}

<== {"r":{"xtn":0.000},"f":[1,0,11,7296]}

ReadyEvent r

==> {"Xtm":""}

<== {"r":{"xtm":600.000},"f":[1,0,11,3084]}

ReadyEvent r

==> {"Xjm":""}

<== {"r":{"xjm":1000},"f":[1,0,11,1454]}

ReadyEvent r

==> {"Xjh":""}

<== {"r":{"xjh":2000},"f":[1,0,11,5217]}

ReadyEvent r

==> {"Xsv":""}

<== {"r":{"xsv":2000},"f":[1,0,11,8943]}

ReadyEvent r

==> {"Xlv":""}

<== {"r":{"xlv":100},"f":[1,0,11,1277]}

ReadyEvent r

==> {"Xlb":""}

<== {"r":{"xlb":8.000},"f":[1,0,11,3381]}

ReadyEvent r

==> {"Xzb":""}

<== {"r":{"xzb":2.000},"f":[1,0,11,5206]}

ReadyEvent r

==> {"Yam":""}

<== {"r":{"yam":1},"f":[1,0,11,3299]}

ReadyEvent r

==> {"Yvm":""}

<== {"r":{"yvm":10000},"f":[1,0,11,1999]}

ReadyEvent r

==> {"Yfr":""}

<== {"r":{"yfr":10000},"f":[1,0,11,9404]}

ReadyEvent r

==> {"Ytn":""}

<== {"r":{"ytn":0.000},"f":[1,0,11,6266]}

ReadyEvent r

==> {"Ytm":""}

<== {"r":{"ytm":400.000},"f":[1,0,11,6222]}

ReadyEvent r

==> {"Yjm":""}

<== {"r":{"yjm":1000},"f":[1,0,11,8174]}

ReadyEvent r

==> {"Yjh":""}

<== {"r":{"yjh":2000},"f":[1,0,11,1938]}

ReadyEvent r

==> {"Ysv":""}

<== {"r":{"ysv":2000},"f":[1,0,11,5664]}

ReadyEvent r

==> {"Ylv":""}

<== {"r":{"ylv":100},"f":[1,0,11,3327]}

ReadyEvent r

==> {"Ylb":""}

<== {"r":{"ylb":8.000},"f":[1,0,11,2351]}

ReadyEvent r

==> {"Yzb":""}

<== {"r":{"yzb":2.000},"f":[1,0,11,7340]}

ReadyEvent r

==> {"Zam":""}

<== {"r":{"zam":1},"f":[1,0,11,6972]}

ReadyEvent r

==> {"Zvm":""}

<== {"r":{"zvm":5000},"f":[1,0,11,9156]}

ReadyEvent r

==> {"Zfr":""}

<== {"r":{"zfr":2000},"f":[1,0,11,9342]}

ReadyEvent r

==> {"Ztn":""}

<== {"r":{"ztn":0.000},"f":[1,0,11,8400]}

ReadyEvent r

==> {"Ztm":""}

<== {"r":{"ztm":80.000},"f":[1,0,11,8706]}

ReadyEvent r

==> {"Zjm":""}

<== {"r":{"zjm":500},"f":[1,0,11,7926]}

ReadyEvent r

==> {"Zjh":""}

<== {"r":{"zjh":500},"f":[1,0,11,2724]}

ReadyEvent r

==> {"Zsv":""}

<== {"r":{"zsv":1000},"f":[1,0,11,508]}

ReadyEvent r

==> {"Zlv":""}

<== {"r":{"zlv":100},"f":[1,0,11,5377]}

ReadyEvent r

==> {"Zlb":""}

<== {"r":{"zlb":10.000},"f":[1,0,11,5156]}

ReadyEvent r

==> {"Zzb":""}

<== {"r":{"zzb":2.000},"f":[1,0,11,6310]}

ReadyEvent r

==> {"Aam":""}

<== {"r":{"aam":1},"f":[1,0,11,960]}

ReadyEvent r

==> {"Avm":""}

<== {"r":{"avm":50000},"f":[1,0,11,3126]}

ReadyEvent r

==> {"Afr":""}

<== {"r":{"afr":200000},"f":[1,0,11,1133]}

ReadyEvent r

==> {"Atn":""}

<== {"r":{"atn":0.000},"f":[1,0,11,2003]}

ReadyEvent r

==> {"Atm":""}

<== {"r":{"atm":600.000},"f":[1,0,11,840]}

ReadyEvent r

==> {"Ajm":""}

<== {"r":{"ajm":5000},"f":[1,0,11,2237]}

ReadyEvent r

==> {"Ajh":""}

<== {"r":{"ajh":5000},"f":[1,0,11,959]}

ReadyEvent r

==> {"Asv":""}

<== {"r":{"asv":2000},"f":[1,0,11,6396]}

ReadyEvent r

==> {"ec":""}

<== {"r":{"ec":0},"f":[1,0,10,5349]}

ValueUpdater, no operation(ec, 0)

ReadyEvent r

==> {"ee":""}

<== {"r":{"ee":0},"f":[1,0,10,5432]}

ValueUpdater, no operation(ee, 0)

ReadyEvent r

==> {"ex":""}

<== {"r":{"ex":1},"f":[1,0,10,1021]}

ValueUpdater, no operation(ex, 1)

ReadyEvent r

==> {"Xsn":""}

<== {"r":{"xsn":0},"f":[1,0,11,7096]}

ReadyEvent r

==> {"Xsx":""}

<== {"r":{"xsx":0},"f":[1,0,11,7004]}

ReadyEvent r

==> {"Ysn":""}

<== {"r":{"ysn":0},"f":[1,0,11,7605]}

ReadyEvent r

==> {"Ysx":""}

<== {"r":{"ysx":0},"f":[1,0,11,678]}

ReadyEvent r

==> {"Zsn":""}

<== {"r":{"zsn":0},"f":[1,0,11,1279]}

ReadyEvent r

==> {"Zsx":""}

<== {"r":{"zsx":0},"f":[1,0,11,1187]}

ReadyEvent r

==> {"Asn":""}

<== {"r":{"asn":0},"f":[1,0,11,5266]}

ReadyEvent r

==> {"Asx":""}

<== {"r":{"asx":0},"f":[1,0,11,5174]}

ReadyEvent r

==> {"me":""}

<== {"r":{"me":null},"f":[1,0,10,3586]}

PumpOff(), TinyG

==> {"gc":"M05"}

VacuumOff(), TinyG

==> {"gc":"M09"}

<== {"r":{},"f":[1,0,13,72]}

<== {"qr":32,"qi":1,"qo":1}

<== {"r":{},"f":[1,0,13,72]}

<== {"qr":32,"qi":1,"qo":1}

Startup completed.





..*//

../

./



Python GUI Development Using PyQt5

https://www.youtube.com/watch?v=MOItX2aKTGc

https://www.dobot-robots.com/products/dobot-series/m1-pro.html



./

documentation

https://www.riverbankcomputing.com/static/Docs/PyQt5/





Microsoft Windows [Version 10.0.19045.4529]

(c) Microsoft Corporation. All rights reserved.



C:\Users\admin>pip install PyQt5

Collecting PyQt5

Downloading PyQt5-5.15.10-cp37-abi3-win_amd64.whl (6.8 MB)

|████████████████████████████████| 6.8 MB 16 kB/s

Collecting PyQt5-sip<13,>=12.13

Downloading PyQt5_sip-12.15.0-cp39-cp39-win_amd64.whl (59 kB)

|████████████████████████████████| 59 kB 592 kB/s

Collecting PyQt5-Qt5>=5.15.2

Downloading PyQt5_Qt5-5.15.2-py3-none-win_amd64.whl (50.1 MB)

|████████████████████████████████| 50.1 MB 13 kB/s

Installing collected packages: PyQt5-sip, PyQt5-Qt5, PyQt5

Successfully installed PyQt5-5.15.10 PyQt5-Qt5-5.15.2 PyQt5-sip-12.15.0

WARNING: You are using pip version 21.1.3; however, version 24.1.2 is available.

You should consider upgrading via the 'c:\users\admin\appdata\local\programs\python\python39\python.exe -m pip install --upgrade pip' command.



C:\Users\admin>

./

.// program to write to serial port

import keyboard

import serial

import serial.tools.list_ports as port_list

#ports = list(port_list.comports())

#print(ports[0].device)

#port = ports[0].device

baudrate = 115200

serialPort = serial.Serial(port='COM3', baudrate=baudrate, parity = serial.PARITY_NONE,

                                bytesize=8, timeout=1, stopbits=serial.STOPBITS_ONE)

serialString = ""

# serialPort.write(bytes.fromhex("A551F6"))

#serialPort.write(bytes.fromhex("$"))

# Send character 'S' to start the program

#ser.write(bytearray('S','ascii'))

#serialPort.write(bytearray('?/r/n','ascii'))

    #"?\r\n".encode('Ascii'))

#serialPort.write(bytearray('{"gc":"G28.2 X0"}\r\n','ascii'))

#serialPort.write(bytearray('{"gc":"G28.2 X0"}\r\n','ascii'))

#serialPort.write(bytearray('{"gc":"G28.2 X0"}\r\n','ascii'))

#serialPort.write(bytearray('{"gc":"G28.2 X0"}\r\n','ascii'))serialPort.write(bytearray('{"gc":"G28.2 X0"}\r\n','ascii'))

#serialPort.write(bytearray('{"gc":"G0  A0.800"}\r\n','ascii'))

serialPort.write(bytearray('G21G91G1X1F100\r\n','ascii'))

serialPort.write(bytearray('G90 G21\r\n','ascii'))

while True:

    try:

        # serialPort.reset_input_buffer()

        # serialPort.reset_output_buffer()

        # serialString = serialPort.read(10).hex()

        #serialString = serialPort.read()

        #print(serialString)

        message = serialPort.read()

        print(message)

        if keyboard.is_pressed('q'):

            print("quit")

            break

    except KeyboardInterrupt:

        break

serialPort.close()



…*//









..//



..*//




..//



..//









../







6/7/2024

tinyG limit switch

How do I get the GRBL log to give me the status of the limit switches?







..//



Startup completed.

B: Home X

Homing axis X, timeout value: 428000

==> {"gc":"G28.2 X0"}

<== {"r":{},"f":[1,0,18,77]}

<== {"sr":{"coor":0,"dist":1,"stat":9}}

<== {"sr":{"posx":-0.175,"feed":100.00,"vel":100.00}}

<== {"sr":{"posx":-0.500}}

<== {"sr":{"posx":-0.825}}

<== {"sr":{"posx":-1.150}}

<== {"sr":{"posx":-1.475}}

<== {"sr":{"posx":-1.800}}

<== {"sr":{"posx":-2.125}}

<== {"sr":{"posx":-2.450}}

<== {"sr":{"posx":-2.775}}

<== {"sr":{"posx":-3.100}}

<== {"sr":{"posx":-3.425}}

<== {"sr":{"posx":-3.750}}

<== {"sr":{"posx":-4.075}}

<== {"sr":{"posx":-4.400}}

<== {"sr":{"posx":-4.725}}

<== {"sr":{"posx":-5.050}}

<== {"sr":{"posx":-5.375}}

<== {"sr":{"posx":-5.699}}

<== {"sr":{"posx":-6.024}}

<== {"sr":{"posx":-6.358}}

<== {"sr":{"posx":-6.683}}

<== {"sr":{"posx":-7.008}}

<== {"sr":{"posx":-7.333}}

<== {"sr":{"posx":-7.656,"vel":92.23}}

<== {"sr":{"posx":-7.741,"vel":0.00}}

<== {"sr":{"posx":-155.000,"feed":0.00,"vel":0.00,"coor":1,"dist":0,"stat":3}}

ReadyEvent stat

Homing X done.





../





/?

{"r":{},"f":[1,3,3,7279]}

READY"},"f":[1,0,0,6941]}

{"sr":{"posx":0.000,"posy":0.000,"posz":0.000,"posa":0.000,"feed":0.00,"vel":0.00,"unit":1,"coor":1,"dist":0,"frmo":1,"stat":1}}



[st] switch type 0 [0=NO,1=NC]



../





$ylb=3



minimum

$ysn





[ysn] y switch min 1 [0=off,1=homing,2=limit,3=limit+homing]

[ysx] y switch max 0 [0=off,1=homing,2=limit,3=limit+homing]



..//

TinyG Support

https://teclausa.com/tinyg-support/

..//



Ask GRBL for the limit switch status - CNC Machines / Shapeoko - Carbide 3D Community Site

https://community.carbide3d.com/t/ask-grbl-for-the-limit-switch-status/12934









..//





The following settings are used for switch configuration.

Setting

Description

Setting Example

$ST

Switch Type

sets the type of switch used by the entire machine - 0=NO, 1=NC.

$XSN

X Minimum Switch Mode

3=limit-and-homing (See Modes, below)

$XSX

X Maximum Switch Mode

2=limit-only

$YSN

Y Minimum Switch Mode

3=limit-and-homing

$YSX

Y Maximum Switch Mode

2=limit-only

$ZSN

Z Minimum Switch Mode

0=disabled

$ZSX

Z Maximum Switch Mode

3=limit-and-homing

$ASN

A Minimum Switch Mode

0=disabled

$ASX

A Maximum Switch Mode

0=disabled









..//







[yam] y axis mode 1 [standard]

[yvm] y velocity maximum 800 mm/min

[yfr] y feedrate maximum 800 mm/min

[ytn] y travel minimum 0.000 mm

[ytm] y travel maximum 150.000 mm

[yjm] y jerk maximum 20 mm/min^3 * 1 million

[yjh] y jerk homing 40 mm/min^3 * 1 million

[yjd] y junction deviation 0.0500 mm (larger is faster)

[ysn] y switch min 3 [0=off,1=homing,2=limit,3=limit+homing]

[ysx] y switch max 2 [0=off,1=homing,2=limit,3=limit+homing]

[ysv] y search velocity 100 mm/min

[ylv] y latch velocity 100 mm/min

[ylb] y latch backoff 5.000 mm

[yzb] y zero backoff 1.000 mm

tinyg [mm] ok>

tinyg [mm] ok>



https://sites.google.com/site/cncnotebook/tinyg-configuration?pli=1

..//









Homing and Limits Description and Operation · synthetos/TinyG Wiki · GitHub

https://github.com/synthetos/TinyG/wiki/Homing-and-Limits-Description-and-Operation#homing-commands-and-operation





..//







/$$

.

[fb] firmware build 440.20

[fv] firmware version 0.97

[hp] hardware platform 1.00

[hv] hardware version 8.00

[id] TinyG ID 0Y0899-SPA

[ja] junction acceleration 100000 mm

[ct] chordal tolerance 0.0100 mm

[sl] soft limit enable 0

[st] switch type 0 [0=NO,1=NC]

[mt] motor idle timeout 2.00 Sec

[ej] enable json mode 0 [0=text,1=JSON]

[jv] json verbosity 4 [0=silent,1=footer,2=messages,3=configs,4=linenum,5=verbose]

[js] json serialize style 1 [0=relaxed,1=strict]

[tv] text verbosity 1 [0=silent,1=verbose]

[qv] queue report verbosity 0 [0=off,1=single,2=triple]

[sv] status report verbosity 1 [0=off,1=filtered,2=verbose]

[si] status interval 200 ms

[ec] expand LF to CRLF on TX 0 [0=off,1=on]

[ee] enable echo 0 [0=off,1=on]

[ex] enable flow control 1 [0=off,1=XON/XOFF, 2=RTS/CTS]

[baud] USB baud rate 5 [1=9600,2=19200,3=38400,4=57600,5=115200,6=230400]

[net] network mode 0 [0=master]

[gpl] default gcode plane 0 [0=G17,1=G18,2=G19]

[gun] default gcode units mode 1 [0=G20,1=G21]

[gco] default gcode coord system 1 [1-6 (G54-G59)]

[gpa] default gcode path control 2 [0=G61,1=G61.1,2=G64]

[gdi] default gcode distance mode 0 [0=G90,1=G91]

[1ma] m1 map to axis 0 [0=X,1=Y,2=Z...]

[1sa] m1 step angle 1.800 deg

[1tr] m1 travel per revolution 1.2500 mm

[1mi] m1 microsteps 8 [1,2,4,8]

[1po] m1 polarity 0 [0=normal,1=reverse]

[1pm] m1 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]

[2ma] m2 map to axis 1 [0=X,1=Y,2=Z...]

[2sa] m2 step angle 1.800 deg

[2tr] m2 travel per revolution 1.2500 mm

[2mi] m2 microsteps 8 [1,2,4,8]

[2po] m2 polarity 0 [0=normal,1=reverse]

[2pm] m2 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]

[3ma] m3 map to axis 2 [0=X,1=Y,2=Z...]

[3sa] m3 step angle 1.800 deg

[3tr] m3 travel per revolution 1.2500 mm

[3mi] m3 microsteps 8 [1,2,4,8]

[3po] m3 polarity 0 [0=normal,1=reverse]

[3pm] m3 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]

[4ma] m4 map to axis 3 [0=X,1=Y,2=Z...]

[4sa] m4 step angle 1.800 deg

[4tr] m4 travel per revolution 360.0000 mm

[4mi] m4 microsteps 8 [1,2,4,8]

[4po] m4 polarity 0 [0=normal,1=reverse]

[4pm] m4 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]

[xam] x axis mode 1 [standard]

[xvm] x velocity maximum 800 mm/min

[xfr] x feedrate maximum 800 mm/min

[xtn] x travel minimum 0.000 mm

[xtm] x travel maximum 150.000 mm

[xjm] x jerk maximum 20 mm/min^3 * 1 million

[xjh] x jerk homing 40 mm/min^3 * 1 million

[xjd] x junction deviation 0.0500 mm (larger is faster)

[xsn] x switch min 3 [0=off,1=homing,2=limit,3=limit+homing]

[xsx] x switch max 2 [0=off,1=homing,2=limit,3=limit+homing]

[xsv] x search velocity 100 mm/min

[xlv] x latch velocity 100 mm/min

[xlb] x latch backoff 5.000 mm

[xzb] x zero backoff 1.000 mm

[yam] y axis mode 1 [standard]

[yvm] y velocity maximum 800 mm/min

[yfr] y feedrate maximum 800 mm/min

[ytn] y travel minimum 0.000 mm

[ytm] y travel maximum 150.000 mm

[yjm] y jerk maximum 20 mm/min^3 * 1 million

[yjh] y jerk homing 40 mm/min^3 * 1 million

[yjd] y junction deviation 0.0500 mm (larger is faster)

[ysn] y switch min 3 [0=off,1=homing,2=limit,3=limit+homing]

[ysx] y switch max 2 [0=off,1=homing,2=limit,3=limit+homing]

[ysv] y search velocity 100 mm/min

[ylv] y latch velocity 100 mm/min

[ylb] y latch backoff 5.000 mm

[yzb] y zero backoff 1.000 mm

[zam] z axis mode 1 [standard]

[zvm] z velocity maximum 8 mm/min

[zfr] z feedrate maximum 8 mm/min

[ztn] z travel minimum 0.000 mm

[ztm] z travel maximum 75.000 mm

[zjm] z jerk maximum 20 mm/min^3 * 1 million

[zjh] z jerk homing 40 mm/min^3 * 1 million

[zjd] z junction deviation 0.0500 mm (larger is faster)

[zsn] z switch min 3 [0=off,1=homing,2=limit,3=limit+homing]

[zsx] z switch max 2 [0=off,1=homing,2=limit,3=limit+homing]

[zsv] z search velocity 5 mm/min

[zlv] z latch velocity 100 mm/min

[zlb] z latch backoff 5.000 mm

[zzb] z zero backoff 1.000 mm

[aam] a axis mode 3 [radius]

[avm] a velocity maximum 10000 deg/min

[afr] a feedrate maximum 10000 deg/min

[atn] a travel minimum -1.000 deg

[atm] a travel maximum -1.000 deg

[ajm] a jerk maximum 20 deg/min^3 * 1 million

[ajh] a jerk homing 11520 deg/min^3 * 1 million

[ajd] a junction deviation 0.0500 deg (larger is faster)

[ara] a radius value 0.1989 deg

[asn] a switch min 1 [0=off,1=homing,2=limit,3=limit+homing]

[asx] a switch max 0 [0=off,1=homing,2=limit,3=limit+homing]

[asv] a search velocity 600 deg/min

[alv] a latch velocity 100 deg/min

[alb] a latch backoff 5.000 deg

[azb] a zero backoff 2.000 deg

[bam] b axis mode 0 [disabled]

[bvm] b velocity maximum 3600 deg/min

[bfr] b feedrate maximum 3600 deg/min

[btn] b travel minimum -1.000 deg

[btm] b travel maximum -1.000 deg

[bjm] b jerk maximum 20 deg/min^3 * 1 million

[bjd] b junction deviation 0.0500 deg (larger is faster)

[bra] b radius value 1.0000 deg

[cam] c axis mode 0 [disabled]

[cvm] c velocity maximum 3600 deg/min

[cfr] c feedrate maximum 3600 deg/min

[ctn] c travel minimum -1.000 deg

[ctm] c travel maximum -1.000 deg

[cjm] c jerk maximum 20 deg/min^3 * 1 million

[cjd] c junction deviation 0.0500 deg (larger is faster)

[cra] c radius value 1.0000 deg

[p1frq] pwm frequency 100 Hz

[p1csl] pwm cw speed lo 1000 RPM

[p1csh] pwm cw speed hi 2000 RPM

[p1cpl] pwm cw phase lo 0.125 [0..1]

[p1cph] pwm cw phase hi 0.200 [0..1]

[p1wsl] pwm ccw speed lo 1000 RPM

[p1wsh] pwm ccw speed hi 2000 RPM

[p1wpl] pwm ccw phase lo 0.125 [0..1]

[p1wph] pwm ccw phase hi 0.200 [0..1]

[p1pof] pwm phase off 0.100 [0..1]

[g54x] g54 x offset 0.000 mm

[g54y] g54 y offset 0.000 mm

[g54z] g54 z offset 0.000 mm

[g54a] g54 a offset 0.000 deg

[g54b] g54 b offset 0.000 deg

[g54c] g54 c offset 0.000 deg

[g55x] g55 x offset 75.000 mm

[g55y] g55 y offset 75.000 mm

[g55z] g55 z offset 0.000 mm

[g55a] g55 a offset 0.000 deg

[g55b] g55 b offset 0.000 deg

[g55c] g55 c offset 0.000 deg

[g56x] g56 x offset 0.000 mm

[g56y] g56 y offset 0.000 mm

[g56z] g56 z offset 0.000 mm

[g56a] g56 a offset 0.000 deg

[g56b] g56 b offset 0.000 deg

[g56c] g56 c offset 0.000 deg

[g57x] g57 x offset 0.000 mm

[g57y] g57 y offset 0.000 mm

[g57z] g57 z offset 0.000 mm

[g57a] g57 a offset 0.000 deg

[g57b] g57 b offset 0.000 deg

[g57c] g57 c offset 0.000 deg

[g58x] g58 x offset 0.000 mm

[g58y] g58 y offset 0.000 mm

[g58z] g58 z offset 0.000 mm

[g58a] g58 a offset 0.000 deg

[g58b] g58 b offset 0.000 deg

[g58c] g58 c offset 0.000 deg

[g59x] g59 x offset 0.000 mm

[g59y] g59 y offset 0.000 mm

[g59z] g59 z offset 0.000 mm

[g59a] g59 a offset 0.000 deg

[g59b] g59 b offset 0.000 deg

[g59c] g59 c offset 0.000 deg

[g92x] g92 x offset 0.000 mm

[g92y] g92 y offset 0.000 mm

[g92z] g92 z offset 0.000 mm

[g92a] g92 a offset 0.000 deg

[g92b] g92 b offset 0.000 deg

[g92c] g92 c offset 0.000 deg

[g28x] g28 x position 0.000 mm

[g28y] g28 y position 0.000 mm

[g28z] g28 z position 0.000 mm

[g28a] g28 a position 0.000 deg

[g28b] g28 b position 0.000 deg

[g28c] g28 c position 0.000 deg

[g30x] g30 x position 0.000 mm

[g30y] g30 y position 0.000 mm

[g30z] g30 z position 0.000 mm

[g30a] g30 a position 0.000 deg

[g30b] g30 b position 0.000 deg

[g30c] g30 c position 0.000 deg

tinyg [mm] ok>

tinyg [mm] ok>















..//









Application Start

Version: 1.0.8340.22961, build date: 11/01/2022 12:45:22

Reading application settings from C:\LitePlacer\LitePlacer.Appsettings

Creating data file backups to C:\LitePlacer\DataBackup\2024-06-07 15.32.18

Basic Setup tab begin

LoadVideoAlgorithms from C:\LitePlacer\LitePlacer.VideoAlgorithms

UpdateVideoProcessing()

BuildFunctionsList:

No saved temp CAD data file

No saved temp job data file

DownCamera already stopped

UpCamera already stopped

Downcamera moniker not found. Moniker: @device:pnp:\\?\usb#vid_f007&pid_a999&mi_00#6&1b900a24&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

camera resolution not set.

Loading tapes with nozzles data

Reading v2 format file C:\LitePlacer\LitePlacer.TapesData_v2

Loading nozzles data

Reading v2 format file C:\LitePlacer\LitePlacer.NozzlesLoadData_v2

Reading v2 format file C:\LitePlacer\LitePlacer.NozzlesUnLoadData_v2

Reading v2 format file C:\LitePlacer\LitePlacer.NozzlesVisionParameters_v21

Loading nozzle calibration data from C:\LitePlacer\LitePlacer.NozzlesCalibrationData_v3

Connected to serial port COM3

==> {sr:n}

TinyG board found.

<== {"r":{"sr":{"posx":0.000,"posy":0.000,"posz":0.000,"posa":0.000,"feed":0.00,"vel":0.00,"unit":1,"coor":1,"dist":0,"frmo":1,"stat":1}},"f":[1,0,7,3689]}

ReadyEvent r:sr

Reading TinyG settings:

==> {"st":""}

<== {"r":{"st":0},"f":[1,0,10,8400]}

ReadyEvent r

==> {"mt":""}

<== {"r":{"mt":2.00},"f":[1,0,10,273]}

mt value: 2

ReadyEvent r

==> {"jv":""}

<== {"r":{"jv":4},"f":[1,0,10,6700]}

ReadyEvent r

==> {"js":""}

<== {"r":{"js":1},"f":[1,0,10,5969]}

ReadyEvent r

==> {"tv":""}

<== {"r":{"tv":1},"f":[1,0,10,7227]}

ReadyEvent r

==> {"qv":""}

<== {"r":{"qv":0},"f":[1,0,10,5788]}

ReadyEvent r

==> {"sv":""}

<== {"r":{"sv":1},"f":[1,0,10,9297]}

ReadyEvent r

==> {"si":""}

<== {"r":{"si":200},"f":[1,0,10,4311]}

ReadyEvent r

==> {"gun":""}

<== {"r":{"gun":1},"f":[1,0,11,7651]}

ReadyEvent r

==> {"1ma":""}

<== {"r":{"1ma":0},"f":[1,0,11,7976]}

ReadyEvent r

==> {"1sa":""}

<== {"r":{"1sa":1.800},"f":[1,0,11,327]}

ReadyEvent r

==> {"1tr":""}

<== {"r":{"1tr":1.2500},"f":[1,0,11,5878]}

ReadyEvent r

==> {"1mi":""}

<== {"r":{"1mi":8},"f":[1,0,11,7985]}

ReadyEvent r

==> {"1po":""}

<== {"r":{"1po":0},"f":[1,0,11,5004]}

ReadyEvent r

==> {"1pm":""}

<== {"r":{"1pm":2},"f":[1,0,11,3385]}

ReadyEvent r

==> {"2ma":""}

<== {"r":{"2ma":1},"f":[1,0,11,2464]}

ReadyEvent r

==> {"2sa":""}

<== {"r":{"2sa":1.800},"f":[1,0,11,2461]}

ReadyEvent r

==> {"2tr":""}

<== {"r":{"2tr":1.2500},"f":[1,0,11,2424]}

ReadyEvent r

==> {"2mi":""}

<== {"r":{"2mi":8},"f":[1,0,11,1659]}

ReadyEvent r

==> {"2po":""}

<== {"r":{"2po":0},"f":[1,0,11,5513]}

ReadyEvent r

==> {"2pm":""}

<== {"r":{"2pm":2},"f":[1,0,11,7058]}

ReadyEvent r

==> {"3ma":""}

<== {"r":{"3ma":2},"f":[1,0,11,3787]}

ReadyEvent r

==> {"3sa":""}

<== {"r":{"3sa":1.800},"f":[1,0,11,1431]}

ReadyEvent r

==> {"3tr":""}

<== {"r":{"3tr":1.2500},"f":[1,0,11,8969]}

ReadyEvent r

==> {"3mi":""}

<== {"r":{"3mi":8},"f":[1,0,11,5332]}

ReadyEvent r

==> {"3po":""}

<== {"r":{"3po":0},"f":[1,0,11,9186]}

ReadyEvent r

==> {"3pm":""}

<== {"r":{"3pm":2},"f":[1,0,11,7567]}

ReadyEvent r

==> {"4ma":""}

<== {"r":{"4ma":3},"f":[1,0,11,8274]}

ReadyEvent r

==> {"4sa":""}

<== {"r":{"4sa":1.800},"f":[1,0,11,401]}

ReadyEvent r

==> {"4tr":""}

<== {"r":{"4tr":360.0000},"f":[1,0,11,6185]}

ReadyEvent r

==> {"4mi":""}

<== {"r":{"4mi":8},"f":[1,0,11,9005]}

ReadyEvent r

==> {"4po":""}

<== {"r":{"4po":0},"f":[1,0,11,2860]}

ReadyEvent r

==> {"4pm":""}

<== {"r":{"4pm":2},"f":[1,0,11,1241]}

ReadyEvent r

==> {"Xam":""}

<== {"r":{"xam":1},"f":[1,0,11,9625]}

ReadyEvent r

==> {"Xvm":""}

<== {"r":{"xvm":800},"f":[1,0,11,453]}

ReadyEvent r

==> {"Xfr":""}

<== {"r":{"xfr":800},"f":[1,0,11,3768]}

ReadyEvent r

==> {"Xtn":""}

<== {"r":{"xtn":0.000},"f":[1,0,11,7296]}

ReadyEvent r

==> {"Xtm":""}

<== {"r":{"xtm":150.000},"f":[1,0,11,3844]}

ReadyEvent r

==> {"Xjm":""}

<== {"r":{"xjm":20},"f":[1,0,11,7168]}

ReadyEvent r

==> {"Xjh":""}

<== {"r":{"xjh":40},"f":[1,0,11,9006]}

ReadyEvent r

==> {"Xsv":""}

<== {"r":{"xsv":100},"f":[1,0,11,5496]}

ReadyEvent r

==> {"Xlv":""}

<== {"r":{"xlv":100},"f":[1,0,11,1277]}

ReadyEvent r

==> {"Xlb":""}

<== {"r":{"xlb":5.000},"f":[1,0,11,9591]}

ReadyEvent r

==> {"Xzb":""}

<== {"r":{"xzb":1.000},"f":[1,0,11,441]}

ReadyEvent r

==> {"Yam":""}

<== {"r":{"yam":1},"f":[1,0,11,3299]}

ReadyEvent r

==> {"Yvm":""}

<== {"r":{"yvm":800},"f":[1,0,11,2503]}

ReadyEvent r

==> {"Yfr":""}

<== {"r":{"yfr":800},"f":[1,0,11,5818]}

ReadyEvent r

==> {"Ytn":""}

<== {"r":{"ytn":0.000},"f":[1,0,11,6266]}

ReadyEvent r

==> {"Ytm":""}

<== {"r":{"ytm":150.000},"f":[1,0,11,6759]}

ReadyEvent r

==> {"Yjm":""}

<== {"r":{"yjm":20},"f":[1,0,11,2057]}

ReadyEvent r

==> {"Yjh":""}

<== {"r":{"yjh":40},"f":[1,0,11,3895]}

ReadyEvent r

==> {"Ysv":""}

<== {"r":{"ysv":100},"f":[1,0,11,7546]}

ReadyEvent r

==> {"Ylv":""}

<== {"r":{"ylv":100},"f":[1,0,11,3327]}

ReadyEvent r

==> {"Ylb":""}

<== {"r":{"ylb":5.000},"f":[1,0,11,1726]}

ReadyEvent r

==> {"Yzb":""}

<== {"r":{"yzb":1.000},"f":[1,0,11,9410]}

ReadyEvent r

==> {"Zam":""}

<== {"r":{"zam":1},"f":[1,0,11,6972]}

ReadyEvent r

==> {"Zvm":""}

<== {"r":{"zvm":8},"f":[1,0,11,211]}

ReadyEvent r

==> {"Zfr":""}

<== {"r":{"zfr":8},"f":[1,0,11,7527]}

ReadyEvent r

==> {"Ztn":""}

<== {"r":{"ztn":0.000},"f":[1,0,11,8400]}

ReadyEvent r

==> {"Ztm":""}

<== {"r":{"ztm":75.000},"f":[1,0,11,1518]}

ReadyEvent r

==> {"Zjm":""}

<== {"r":{"zjm":20},"f":[1,0,11,6945]}

ReadyEvent r

==> {"Zjh":""}

<== {"r":{"zjh":40},"f":[1,0,11,8783]}

ReadyEvent r

==> {"Zsv":""}

<== {"r":{"zsv":5},"f":[1,0,11,2010]}

ReadyEvent r

==> {"Zlv":""}

<== {"r":{"zlv":100},"f":[1,0,11,5377]}

ReadyEvent r

==> {"Zlb":""}

<== {"r":{"zlb":5.000},"f":[1,0,11,696]}

ReadyEvent r

==> {"Zzb":""}

<== {"r":{"zzb":1.000},"f":[1,0,11,8380]}

ReadyEvent r

==> {"Aam":""}

<== {"r":{"aam":3},"f":[1,0,11,2588]}

ReadyEvent r

==> {"Avm":""}

<== {"r":{"avm":10000},"f":[1,0,11,4571]}

ReadyEvent r

==> {"Afr":""}

<== {"r":{"afr":10000},"f":[1,0,11,1977]}

ReadyEvent r

==> {"Atn":""}

<== {"r":{"atn":-1.000},"f":[1,0,11,8801]}

ReadyEvent r

==> {"Atm":""}

<== {"r":{"atm":-1.000},"f":[1,0,11,8916]}

ReadyEvent r

==> {"Ajm":""}

<== {"r":{"ajm":20},"f":[1,0,11,1062]}

ReadyEvent r

==> {"Ajh":""}

<== {"r":{"ajh":11520},"f":[1,0,11,8708]}

ReadyEvent r

==> {"Asv":""}

<== {"r":{"asv":600},"f":[1,0,11,5835]}

ReadyEvent r

==> {"ec":""}

<== {"r":{"ec":0},"f":[1,0,10,5349]}

ValueUpdater, no operation(ec, 0)

ReadyEvent r

==> {"ee":""}

<== {"r":{"ee":0},"f":[1,0,10,5432]}

ValueUpdater, no operation(ee, 0)

ReadyEvent r

==> {"ex":""}

<== {"r":{"ex":1},"f":[1,0,10,1021]}

ValueUpdater, no operation(ex, 1)

ReadyEvent r

==> {"Xsn":""}

<== {"r":{"xsn":3},"f":[1,0,11,6374]}

ReadyEvent r

==> {"Xsx":""}

<== {"r":{"xsx":2},"f":[1,0,11,8632]}

ReadyEvent r

==> {"Ysn":""}

<== {"r":{"ysn":3},"f":[1,0,11,48]}

ReadyEvent r

==> {"Ysx":""}

<== {"r":{"ysx":2},"f":[1,0,11,9141]}

ReadyEvent r

==> {"Zsn":""}

<== {"r":{"zsn":3},"f":[1,0,11,3721]}

ReadyEvent r

==> {"Zsx":""}

<== {"r":{"zsx":2},"f":[1,0,11,2815]}

ReadyEvent r

==> {"Asn":""}

<== {"r":{"asn":1},"f":[1,0,11,6080]}

ReadyEvent r

==> {"Asx":""}

<== {"r":{"asx":0},"f":[1,0,11,5174]}

ReadyEvent r

==> {"me":""}

<== {"r":{"me":null},"f":[1,0,10,3586]}

PumpOff(), TinyG

==> {"gc":"M05"}

VacuumOff(), TinyG

==> {"gc":"M09"}

<== {"r":{},"f":[1,0,13,72]}

<== {"r":{},"f":[1,0,13,72]}

<== {"er":{"fb":440.20,"st":204,"msg":"Limit switch hit - Shutdown occurred"}}

<== {"r":{"fv":0.970,"fb":440.20,"hp":1,"hv":8,"id":"0Y0899-SPA","msg":"SYSTEM READY"},"f":[1,0,0,6941]}

Startup completed.

B: Clear Err.

Com closing delay:

Done.

Connected to serial port COM3

==> {sr:n}

TinyG board found.

<== {"r":{"sr":{"posx":0.000,"posy":0.000,"posz":0.000,"posa":0.000,"feed":0.00,"vel":0.00,"unit":1,"coor":1,"dist":0,"frmo":1,"stat":1}},"f":[1,0,7,3689]}

ReadyEvent r:sr

Reading TinyG settings:

==> {"st":""}

<== {"r":{"st":0},"f":[1,0,10,8400]}

ReadyEvent r

==> {"mt":""}

<== {"r":{"mt":2.00},"f":[1,0,10,273]}

mt value: 2

ReadyEvent r

==> {"jv":""}

<== {"r":{"jv":4},"f":[1,0,10,6700]}

ReadyEvent r

==> {"js":""}

<== {"r":{"js":1},"f":[1,0,10,5969]}

ReadyEvent r

==> {"tv":""}

<== {"r":{"tv":1},"f":[1,0,10,7227]}

ReadyEvent r

==> {"qv":""}

<== {"r":{"qv":0},"f":[1,0,10,5788]}

ReadyEvent r

==> {"sv":""}

<== {"r":{"sv":1},"f":[1,0,10,9297]}

ReadyEvent r

==> {"si":""}

<== {"r":{"si":200},"f":[1,0,10,4311]}

ReadyEvent r

==> {"gun":""}

<== {"r":{"gun":1},"f":[1,0,11,7651]}

ReadyEvent r

==> {"1ma":""}

<== {"r":{"1ma":0},"f":[1,0,11,7976]}

ReadyEvent r

==> {"1sa":""}

<== {"r":{"1sa":1.800},"f":[1,0,11,327]}

ReadyEvent r

==> {"1tr":""}

<== {"r":{"1tr":1.2500},"f":[1,0,11,5878]}

ReadyEvent r

==> {"1mi":""}

<== {"r":{"1mi":8},"f":[1,0,11,7985]}

ReadyEvent r

==> {"1po":""}

<== {"r":{"1po":0},"f":[1,0,11,5004]}

ReadyEvent r

==> {"1pm":""}

<== {"r":{"1pm":2},"f":[1,0,11,3385]}

ReadyEvent r

==> {"2ma":""}

<== {"r":{"2ma":1},"f":[1,0,11,2464]}

ReadyEvent r

==> {"2sa":""}

<== {"r":{"2sa":1.800},"f":[1,0,11,2461]}

ReadyEvent r

==> {"2tr":""}

<== {"r":{"2tr":1.2500},"f":[1,0,11,2424]}

ReadyEvent r

==> {"2mi":""}

<== {"r":{"2mi":8},"f":[1,0,11,1659]}

ReadyEvent r

==> {"2po":""}

<== {"r":{"2po":0},"f":[1,0,11,5513]}

ReadyEvent r

==> {"2pm":""}

<== {"r":{"2pm":2},"f":[1,0,11,7058]}

ReadyEvent r

==> {"3ma":""}

<== {"r":{"3ma":2},"f":[1,0,11,3787]}

ReadyEvent r

==> {"3sa":""}

<== {"r":{"3sa":1.800},"f":[1,0,11,1431]}

ReadyEvent r

==> {"3tr":""}

<== {"r":{"3tr":1.2500},"f":[1,0,11,8969]}

ReadyEvent r

==> {"3mi":""}

<== {"r":{"3mi":8},"f":[1,0,11,5332]}

ReadyEvent r

==> {"3po":""}

<== {"r":{"3po":0},"f":[1,0,11,9186]}

ReadyEvent r

==> {"3pm":""}

<== {"r":{"3pm":2},"f":[1,0,11,7567]}

ReadyEvent r

==> {"4ma":""}

<== {"r":{"4ma":3},"f":[1,0,11,8274]}

ReadyEvent r

==> {"4sa":""}

<== {"r":{"4sa":1.800},"f":[1,0,11,401]}

ReadyEvent r

==> {"4tr":""}

<== {"r":{"4tr":360.0000},"f":[1,0,11,6185]}

ReadyEvent r

==> {"4mi":""}

<== {"r":{"4mi":8},"f":[1,0,11,9005]}

ReadyEvent r

==> {"4po":""}

<== {"r":{"4po":0},"f":[1,0,11,2860]}

ReadyEvent r

==> {"4pm":""}

<== {"r":{"4pm":2},"f":[1,0,11,1241]}

ReadyEvent r

==> {"Xam":""}

<== {"r":{"xam":1},"f":[1,0,11,9625]}

ReadyEvent r

==> {"Xvm":""}

<== {"r":{"xvm":800},"f":[1,0,11,453]}

ReadyEvent r

==> {"Xfr":""}

<== {"r":{"xfr":800},"f":[1,0,11,3768]}

ReadyEvent r

==> {"Xtn":""}

<== {"r":{"xtn":0.000},"f":[1,0,11,7296]}

ReadyEvent r

==> {"Xtm":""}

<== {"r":{"xtm":150.000},"f":[1,0,11,3844]}

ReadyEvent r

==> {"Xjm":""}

<== {"r":{"xjm":20},"f":[1,0,11,7168]}

ReadyEvent r

==> {"Xjh":""}

<== {"r":{"xjh":40},"f":[1,0,11,9006]}

ReadyEvent r

==> {"Xsv":""}

<== {"r":{"xsv":100},"f":[1,0,11,5496]}

ReadyEvent r

==> {"Xlv":""}

<== {"r":{"xlv":100},"f":[1,0,11,1277]}

ReadyEvent r

==> {"Xlb":""}

<== {"r":{"xlb":5.000},"f":[1,0,11,9591]}

ReadyEvent r

==> {"Xzb":""}

<== {"r":{"xzb":1.000},"f":[1,0,11,441]}

ReadyEvent r

==> {"Yam":""}

<== {"r":{"yam":1},"f":[1,0,11,3299]}

ReadyEvent r

==> {"Yvm":""}

<== {"r":{"yvm":800},"f":[1,0,11,2503]}

ReadyEvent r

==> {"Yfr":""}

<== {"r":{"yfr":800},"f":[1,0,11,5818]}

ReadyEvent r

==> {"Ytn":""}

<== {"r":{"ytn":0.000},"f":[1,0,11,6266]}

ReadyEvent r

==> {"Ytm":""}

<== {"r":{"ytm":150.000},"f":[1,0,11,6759]}

ReadyEvent r

==> {"Yjm":""}

<== {"r":{"yjm":20},"f":[1,0,11,2057]}

ReadyEvent r

==> {"Yjh":""}

<== {"r":{"yjh":40},"f":[1,0,11,3895]}

ReadyEvent r

==> {"Ysv":""}

<== {"r":{"ysv":100},"f":[1,0,11,7546]}

ReadyEvent r

==> {"Ylv":""}

<== {"r":{"ylv":100},"f":[1,0,11,3327]}

ReadyEvent r

==> {"Ylb":""}

<== {"r":{"ylb":5.000},"f":[1,0,11,1726]}

ReadyEvent r

==> {"Yzb":""}

<== {"r":{"yzb":1.000},"f":[1,0,11,9410]}

ReadyEvent r

==> {"Zam":""}

<== {"r":{"zam":1},"f":[1,0,11,6972]}

ReadyEvent r

==> {"Zvm":""}

<== {"r":{"zvm":8},"f":[1,0,11,211]}

ReadyEvent r

==> {"Zfr":""}

<== {"r":{"zfr":8},"f":[1,0,11,7527]}

ReadyEvent r

==> {"Ztn":""}

<== {"r":{"ztn":0.000},"f":[1,0,11,8400]}

ReadyEvent r

==> {"Ztm":""}

<== {"r":{"ztm":75.000},"f":[1,0,11,1518]}

ReadyEvent r

==> {"Zjm":""}

<== {"r":{"zjm":20},"f":[1,0,11,6945]}

ReadyEvent r

==> {"Zjh":""}

<== {"r":{"zjh":40},"f":[1,0,11,8783]}

ReadyEvent r

==> {"Zsv":""}

<== {"r":{"zsv":5},"f":[1,0,11,2010]}

ReadyEvent r

==> {"Zlv":""}

<== {"r":{"zlv":100},"f":[1,0,11,5377]}

ReadyEvent r

==> {"Zlb":""}

<== {"r":{"zlb":5.000},"f":[1,0,11,696]}

ReadyEvent r

==> {"Zzb":""}

<== {"r":{"zzb":1.000},"f":[1,0,11,8380]}

ReadyEvent r

==> {"Aam":""}

<== {"r":{"aam":3},"f":[1,0,11,2588]}

ReadyEvent r

==> {"Avm":""}

<== {"r":{"avm":10000},"f":[1,0,11,4571]}

ReadyEvent r

==> {"Afr":""}

<== {"r":{"afr":10000},"f":[1,0,11,1977]}

ReadyEvent r

==> {"Atn":""}

<== {"r":{"atn":-1.000},"f":[1,0,11,8801]}

ReadyEvent r

==> {"Atm":""}

<== {"r":{"atm":-1.000},"f":[1,0,11,8916]}

ReadyEvent r

==> {"Ajm":""}

<== {"r":{"ajm":20},"f":[1,0,11,1062]}

ReadyEvent r

==> {"Ajh":""}

<== {"r":{"ajh":11520},"f":[1,0,11,8708]}

ReadyEvent r

==> {"Asv":""}

<== {"r":{"asv":600},"f":[1,0,11,5835]}

ReadyEvent r

==> {"ec":""}

<== {"r":{"ec":0},"f":[1,0,10,5349]}

ValueUpdater, no operation(ec, 0)

ReadyEvent r

==> {"ee":""}

<== {"r":{"ee":0},"f":[1,0,10,5432]}

ValueUpdater, no operation(ee, 0)

ReadyEvent r

==> {"ex":""}

<== {"r":{"ex":1},"f":[1,0,10,1021]}

ValueUpdater, no operation(ex, 1)

ReadyEvent r

==> {"Xsn":""}

<== {"r":{"xsn":3},"f":[1,0,11,6374]}

ReadyEvent r

==> {"Xsx":""}

<== {"r":{"xsx":2},"f":[1,0,11,8632]}

ReadyEvent r

==> {"Ysn":""}

<== {"r":{"ysn":3},"f":[1,0,11,48]}

ReadyEvent r

==> {"Ysx":""}

<== {"r":{"ysx":2},"f":[1,0,11,9141]}

ReadyEvent r

==> {"Zsn":""}

<== {"r":{"zsn":3},"f":[1,0,11,3721]}

ReadyEvent r

==> {"Zsx":""}

<== {"r":{"zsx":2},"f":[1,0,11,2815]}

ReadyEvent r

==> {"Asn":""}

<== {"r":{"asn":1},"f":[1,0,11,6080]}

ReadyEvent r

==> {"Asx":""}

<== {"r":{"asx":0},"f":[1,0,11,5174]}

ReadyEvent r

==> {"me":""}

<== {"r":{"me":null},"f":[1,0,10,3586]}

PumpOff(), TinyG

==> {"gc":"M05"}

VacuumOff(), TinyG

==> {"gc":"M09"}

<== {"r":{},"f":[1,0,13,72]}

<== {"r":{},"f":[1,0,13,72]}






Connected to serial port COM3

==> #{sr:n}

TinyG board found.

<== {"r":{"sr":{"posx":0.000,"posy":0.000,"posz":0.000,"posa":0.000,"feed":0.00,"vel":0.00,"unit":1,"coor":1,"dist":0,"frmo":1,"stat":1}},"f":[1,0,7,3689]}

ReadyEvent r:sr

Reading TinyG settings:

==> {"st":""}

<== {"r":{"st":0},"f":[1,0,10,8400]}

ReadyEvent r

==> {"mt":""}

<== {"r":{"mt":2.00},"f":[1,0,10,273]}

mt value: 2

ReadyEvent r

==> {"jv":""}

<== {"r":{"jv":4},"f":[1,0,10,6700]}

ReadyEvent r

==> {"js":""}

<== {"r":{"js":1},"f":[1,0,10,5969]}

ReadyEvent r

==> {"tv":""}

<== {"r":{"tv":1},"f":[1,0,10,7227]}

ReadyEvent r

==> {"qv":""}

<== {"r":{"qv":0},"f":[1,0,10,5788]}

ReadyEvent r

==> {"sv":""}

<== {"r":{"sv":1},"f":[1,0,10,9297]}

ReadyEvent r

==> {"si":""}

<== {"r":{"si":200},"f":[1,0,10,4311]}

ReadyEvent r

==> {"gun":""}

<== {"r":{"gun":1},"f":[1,0,11,7651]}

ReadyEvent r

==> {"1ma":""}

<== {"r":{"1ma":0},"f":[1,0,11,7976]}

ReadyEvent r

==> {"1sa":""}

<== {"r":{"1sa":1.800},"f":[1,0,11,327]}

ReadyEvent r

==> {"1tr":""}

<== {"r":{"1tr":1.2500},"f":[1,0,11,5878]}

ReadyEvent r

==> {"1mi":""}

<== {"r":{"1mi":8},"f":[1,0,11,7985]}

ReadyEvent r

==> {"1po":""}

<== {"r":{"1po":0},"f":[1,0,11,5004]}

ReadyEvent r

==> {"1pm":""}

<== {"r":{"1pm":2},"f":[1,0,11,3385]}

ReadyEvent r

==> {"2ma":""}

<== {"r":{"2ma":1},"f":[1,0,11,2464]}

ReadyEvent r

==> {"2sa":""}

<== {"r":{"2sa":1.800},"f":[1,0,11,2461]}

ReadyEvent r

==> {"2tr":""}

<== {"r":{"2tr":1.2500},"f":[1,0,11,2424]}

ReadyEvent r

==> {"2mi":""}

<== {"r":{"2mi":8},"f":[1,0,11,1659]}

ReadyEvent r

==> {"2po":""}

<== {"r":{"2po":0},"f":[1,0,11,5513]}

ReadyEvent r

==> {"2pm":""}

<== {"r":{"2pm":2},"f":[1,0,11,7058]}

ReadyEvent r

==> {"3ma":""}

<== {"r":{"3ma":2},"f":[1,0,11,3787]}

ReadyEvent r

==> {"3sa":""}

<== {"r":{"3sa":1.800},"f":[1,0,11,1431]}

ReadyEvent r

==> {"3tr":""}

<== {"r":{"3tr":1.2500},"f":[1,0,11,8969]}

ReadyEvent r

==> {"3mi":""}

<== {"r":{"3mi":8},"f":[1,0,11,5332]}

ReadyEvent r

==> {"3po":""}

<== {"r":{"3po":0},"f":[1,0,11,9186]}

ReadyEvent r

==> {"3pm":""}

<== {"r":{"3pm":2},"f":[1,0,11,7567]}

ReadyEvent r

==> {"4ma":""}

<== {"r":{"4ma":3},"f":[1,0,11,8274]}

ReadyEvent r

==> {"4sa":""}

<== {"r":{"4sa":1.800},"f":[1,0,11,401]}

ReadyEvent r

==> {"4tr":""}

<== {"r":{"4tr":360.0000},"f":[1,0,11,6185]}

ReadyEvent r

==> {"4mi":""}

<== {"r":{"4mi":8},"f":[1,0,11,9005]}

ReadyEvent r

==> {"4po":""}

<== {"r":{"4po":0},"f":[1,0,11,2860]}

ReadyEvent r

==> {"4pm":""}

<== {"r":{"4pm":2},"f":[1,0,11,1241]}

ReadyEvent r

==> {"Xam":""}

<== {"r":{"xam":1},"f":[1,0,11,9625]}

ReadyEvent r

==> {"Xvm":""}

<== {"r":{"xvm":800},"f":[1,0,11,453]}

ReadyEvent r

==> {"Xfr":""}

<== {"r":{"xfr":800},"f":[1,0,11,3768]}

ReadyEvent r

==> {"Xtn":""}

<== {"r":{"xtn":0.000},"f":[1,0,11,7296]}

ReadyEvent r

==> {"Xtm":""}

<== {"r":{"xtm":150.000},"f":[1,0,11,3844]}

ReadyEvent r

==> {"Xjm":""}

<== {"r":{"xjm":20},"f":[1,0,11,7168]}


ReadyEvent r

==> {"Xjh":""}

<== {"r":{"xjh":40},"f":[1,0,11,9006]}

ReadyEvent r

==> {"Xsv":""}

<== {"r":{"xsv":100},"f":[1,0,11,5496]}

ReadyEvent r

==> {"Xlv":""}

<== {"r":{"xlv":100},"f":[1,0,11,1277]}

ReadyEvent r

==> {"Xlb":""}

<== {"r":{"xlb":5.000},"f":[1,0,11,9591]}

ReadyEvent r

==> {"Xzb":""}

<== {"r":{"xzb":1.000},"f":[1,0,11,441]}

ReadyEvent r

==> {"Yam":""}

<== {"r":{"yam":1},"f":[1,0,11,3299]}

ReadyEvent r

==> {"Yvm":""}

<== {"r":{"yvm":800},"f":[1,0,11,2503]}

ReadyEvent r

==> {"Yfr":""}

<== {"r":{"yfr":800},"f":[1,0,11,5818]}

ReadyEvent r

==> {"Ytn":""}

<== {"r":{"ytn":0.000},"f":[1,0,11,6266]}

ReadyEvent r

==> {"Ytm":""}

<== {"r":{"ytm":150.000},"f":[1,0,11,6759]}

ReadyEvent r

==> {"Yjm":""}

<== {"r":{"yjm":20},"f":[1,0,11,2057]}

ReadyEvent r

==> {"Yjh":""}

<== {"r":{"yjh":40},"f":[1,0,11,3895]}

ReadyEvent r

==> {"Ysv":""}

<== {"r":{"ysv":100},"f":[1,0,11,7546]}

ReadyEvent r

==> {"Ylv":""}

<== {"r":{"ylv":100},"f":[1,0,11,3327]}

ReadyEvent r

==> {"Ylb":""}

<== {"r":{"ylb":5.000},"f":[1,0,11,1726]}

ReadyEvent r

==> {"Yzb":""}

<== {"r":{"yzb":1.000},"f":[1,0,11,9410]}

ReadyEvent r

==> {"Zam":""}

<== {"r":{"zam":1},"f":[1,0,11,6972]}

ReadyEvent r

==> {"Zvm":""}

<== {"r":{"zvm":8},"f":[1,0,11,211]}

ReadyEvent r

==> {"Zfr":""}

<== {"r":{"zfr":8},"f":[1,0,11,7527]}

ReadyEvent r

==> {"Ztn":""}

<== {"r":{"ztn":0.000},"f":[1,0,11,8400]}

ReadyEvent r

==> {"Ztm":""}

<== {"r":{"ztm":75.000},"f":[1,0,11,1518]}

ReadyEvent r

==> {"Zjm":""}

<== {"r":{"zjm":20},"f":[1,0,11,6945]}

ReadyEvent r

==> {"Zjh":""}

<== {"r":{"zjh":40},"f":[1,0,11,8783]}

ReadyEvent r

==> {"Zsv":""}

<== {"r":{"zsv":5},"f":[1,0,11,2010]}

ReadyEvent r

==> {"Zlv":""}

<== {"r":{"zlv":100},"f":[1,0,11,5377]}

ReadyEvent r

==> {"Zlb":""}

<== {"r":{"zlb":5.000},"f":[1,0,11,696]}

ReadyEvent r

==> {"Zzb":""}

<== {"r":{"zzb":1.000},"f":[1,0,11,8380]}

ReadyEvent r

==> {"Aam":""}

<== {"r":{"aam":3},"f":[1,0,11,2588]}

ReadyEvent r

==> {"Avm":""}

<== {"r":{"avm":10000},"f":[1,0,11,4571]}

ReadyEvent r

==> {"Afr":""}

<== {"r":{"afr":10000},"f":[1,0,11,1977]}

ReadyEvent r

==> {"Atn":""}

<== {"r":{"atn":-1.000},"f":[1,0,11,8801]}

ReadyEvent r

==> {"Atm":""}

<== {"r":{"atm":-1.000},"f":[1,0,11,8916]}

ReadyEvent r

==> {"Ajm":""}

<== {"r":{"ajm":20},"f":[1,0,11,1062]}

ReadyEvent r

==> {"Ajh":""}

<== {"r":{"ajh":11520},"f":[1,0,11,8708]}

ReadyEvent r

==> {"Asv":""}

<== {"r":{"asv":600},"f":[1,0,11,5835]}

ReadyEvent r

==> {"ec":""}

<== {"r":{"ec":0},"f":[1,0,10,5349]}

ValueUpdater, no operation(ec, 0)

ReadyEvent r

==> {"ee":""}

<== {"r":{"ee":0},"f":[1,0,10,5432]}

ValueUpdater, no operation(ee, 0)

ReadyEvent r

==> {"ex":""}

<== {"r":{"ex":1},"f":[1,0,10,1021]}

ValueUpdater, no operation(ex, 1)

ReadyEvent r

==> {"Xsn":""}

<== {"r":{"xsn":3},"f":[1,0,11,6374]}

ReadyEvent r

==> {"Xsx":""}

<== {"r":{"xsx":2},"f":[1,0,11,8632]}

ReadyEvent r

==> {"Ysn":""}

<== {"r":{"ysn":3},"f":[1,0,11,48]}

ReadyEvent r

==> {"Ysx":""}

<== {"r":{"ysx":2},"f":[1,0,11,9141]}

ReadyEvent r

==> {"Zsn":""}

<== {"r":{"zsn":3},"f":[1,0,11,3721]}

ReadyEvent r

==> {"Zsx":""}

<== {"r":{"zsx":2},"f":[1,0,11,2815]}

ReadyEvent r

==> {"Asn":""}

<== {"r":{"asn":1},"f":[1,0,11,6080]}

ReadyEvent r

==> {"Asx":""}

<== {"r":{"asx":0},"f":[1,0,11,5174]}

ReadyEvent r

==> {"me":""}

<== {"r":{"me":null},"f":[1,0,10,3586]}

PumpOff(), TinyG

==> {"gc":"M05"}

VacuumOff(), TinyG

==> {"gc":"M09"}

<== {"r":{},"f":[1,0,13,72]}

<== {"r":{},"f":[1,0,13,72]}

Startup completed.