[
    {
        "alias": "R(DUAL)",
        "baudrate": [
            115200
        ],
        "extruder_count": 2,
        "min_coords_corner": "RF",
        "name": "MakerBot The Replicator (Dual)",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "D314",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "The Replicator (Dual)",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "D314"
            ]
        ]
    },
    {
        "alias": "R(SINGLE)",
        "baudrate": [
            115200
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "MakerBot The Replicator",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "D314",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "The Replicator",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "D314"
            ]
        ]
    },
    {
        "alias": "Virtual",
        "allow_comments": true,
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Generic Virtual Printer",
        "sender": "virtual_printer",
        "v2": {
            "model": "Virtual Printer",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "ZZZZ"
            ]
        ]
    },
    {
        "alias": "U",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G91",
            "G1 E-6 F30",
            "G1 Z+1 E-5 X-20 Y-20 F9000",
            "G28 X0 Y0",
            "M84",
            "G90",
            "M117 Ultimaker Ready."
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "Ultimaker",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "4745"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ultimaker",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "4745",
                "0001"
            ]
        ]
    },
    {
        "alias": "LULZTAZ",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "LulzBot TAZ1-4",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "TAZ1-4",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "R3DLite200",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "Rapide3D Lite 200",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Lite 200",
            "vendor": "Rapide3D"
        },
        "vids_pids": [
            [
                "03EB",
                "204B"
            ],
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "MP_PHARAOH_ED",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "CC",
        "name": "Mass Portal Pharaoh ED",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "003D",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Portal Pharaoh ED",
            "vendor": "Mass"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "2341",
                "003D"
            ]
        ]
    },
    {
        "alias": "LULZMINI",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "LulzBot Mini",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Mini",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "HEPHESTOS",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "G1 Y140 F4800",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "BQ Prusa i3 Hephestos",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Prusa i3 Hephestos",
            "vendor": "BQ"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "HEPHESTOS_XL",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "G1 Y180 F4800",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "BQ Prusa i3 Hephestos XL",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Prusa i3 Hephestos XL",
            "vendor": "BQ"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "WB",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "BQ WitBox",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "WitBox",
            "vendor": "BQ"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "ZMORPH",
        "end_gcodes": [
            "G28 X0 Y0",
            "M104 S0",
            "M140 S0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "ZMorph",
        "sender": "smoothie_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6015",
                            "VID": "1D50"
                        }
                    ],
                    "module": "smoothie_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "ZMorph",
            "vendor": "ZMorph"
        },
        "vids_pids": [
            [
                "1D50",
                "6015"
            ]
        ]
    },
    {
        "alias": "LFCXL",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "G28 X0 Y0",
            "M104 S0",
            "M140 S0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LN",
        "name": "LeapFrog Creatr XL",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Creatr XL",
            "vendor": "LeapFrog"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "Marlin",
        "baudrate": [
            250000,
            115200
        ],
        "cooldown_on_pause": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "heatup_on_resume": true,
        "min_coords_corner": "LF",
        "name": "Generic Marlin",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "003E",
                            "VID": "2341"
                        },
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Marlin",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "2341",
                "0010"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "27B1",
                "0001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "2341",
                "003E"
            ],
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "LULZTAZ5",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "LulzBot TAZ5",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "TAZ5",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "U2_GO",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "G28 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "force_port_close": false,
        "min_coords_corner": "LF",
        "name": "Ultimaker 2 Go",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0001",
                            "VID": "4745"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "2 Go",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "4745",
                "0001"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "U2",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "force_port_close": false,
        "min_coords_corner": "LF",
        "name": "Ultimaker 2(+)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0001",
                            "VID": "4745"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "2(+)",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "4745",
                "0001"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "KOSSEL_MINI",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "Kossel Mini",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Mini",
            "vendor": "Kossel"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ]
        ]
    },
    {
        "alias": "BUKITO",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "Bukito - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "- Experimental",
            "vendor": "Bukito"
        },
        "vids_pids": [
            [
                "16C0",
                "0483"
            ]
        ]
    },
    {
        "alias": "LFC",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "G28 X0 Y0",
            "M104 S0",
            "M140 S0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LN",
        "name": "LeapFrog Creatr",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Creatr",
            "vendor": "LeapFrog"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "U2_EXTENDED",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Ultimaker 2 Extended(+)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0001",
                            "VID": "4745"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "2 Extended(+)",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "4745",
                "0001"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "LFCHS",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "G28 X0 Y0",
            "M104 S0",
            "M140 S0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LN",
        "name": "LeapFrog Creatr HS",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Creatr HS",
            "vendor": "LeapFrog"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "FELIX3",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Felix 3.0",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "3.0",
            "vendor": "Felix"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "BUKOBOT",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "Bukobot - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "- Experimental",
            "vendor": "Bukobot"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "BEETF",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "BeeVeryCreative BeeTheFirst - Experimental (Only for GNU/Linux)",
        "sender": "beeverycreative",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "014E",
                            "VID": "FFFF"
                        },
                        {
                            "PID": "0001",
                            "VID": "29C9"
                        }
                    ],
                    "module": "beeverycreative",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "BeeTheFirst - Experimental (Only for GNU/Linux)",
            "vendor": "BeeVeryCreative"
        },
        "vids_pids": [
            [
                "FFFF",
                "014E"
            ],
            [
                "29C9",
                "0001"
            ]
        ]
    },
    {
        "alias": "AUP3S",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "AUP3Steel",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "AUP3Steel",
            "vendor": "AUP3Steel"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "EVOLUTION",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Stuffmaker Evolution - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Evolution - Experimental",
            "vendor": "Stuffmaker"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "AIRWOLF3DXL",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Airwolf3D XL - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "XL - Experimental",
            "vendor": "Airwolf3D"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "US5",
        "allow_comments": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Ultimaker S5",
        "sender": "u3_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By installing 3DPrinterOS into a printer",
                    "hostless_printing": true,
                    "id": "sh",
                    "ids": [
                        {
                            "PID": "0US5",
                            "VID": "ZZZZ"
                        }
                    ],
                    "install_": "Oneliner script",
                    "module": "u3_sender",
                    "tooltip": "Follow to this page and run a script from there on your printer using ssh. 3DPrinterOS would work side by side with existing printer firmware",
                    "type": "IN_PRINTER"
                }
            ],
            "model": "S5",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0US5"
            ]
        ]
    },
    {
        "alias": "ROSTOCK2",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "SeeMeCNC Rostock Max v2 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Rostock Max v2 - Experimental",
            "vendor": "SeeMeCNC"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "HERCULES_STRONG",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "Hercules Strong",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Strong",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "HORI_H1_GOLD",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "Hori H1 GOLD",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "H1 GOLD",
            "vendor": "Hori"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "PRUSA_I3",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Generic Prusa i3",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "003E",
                            "VID": "2341"
                        },
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Prusa i3",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "27B1",
                "0001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "2341",
                "003E"
            ],
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "AIRWOLF_HD2X",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Airwolf HD2x - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "HD2x - Experimental",
            "vendor": "Airwolf"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "VELLEMAN_K8400",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "Velleman K8400 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "K8400 - Experimental",
            "vendor": "Velleman"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "POLYPRINTER_229",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PolyPrinter 229 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "229 - Experimental",
            "vendor": "PolyPrinter"
        },
        "vids_pids": [
            [
                "16C0",
                "0483"
            ]
        ]
    },
    {
        "alias": "ATOM",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "THE ATOM - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "ATOM - Experimental",
            "vendor": "THE"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "ECUBMAKER_FANTASY",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LN",
        "name": "EcubMaker FANTASY - Experimental",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "EA60",
                            "VID": "10C4"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "FANTASY - Experimental",
            "vendor": "EcubMaker"
        },
        "vids_pids": [
            [
                "10C4",
                "EA60"
            ]
        ]
    },
    {
        "alias": "PrintrBot_PLAY",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PrintrBot Play",
        "no_DTR": true,
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0503",
                            "VID": "2974"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Play",
            "vendor": "PrintrBot"
        },
        "vids_pids": [
            [
                "2974",
                "0503"
            ],
            [
                "16C0",
                "0483"
            ]
        ]
    },
    {
        "alias": "D4",
        "baudrate": [
            115200
        ],
        "extruder_count": 2,
        "min_coords_corner": "LN",
        "name": "Wanhao Duplicator 4",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "D314",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Duplicator 4",
            "vendor": "Wanhao"
        },
        "vids_pids": [
            [
                "23C1",
                "D314"
            ]
        ]
    },
    {
        "alias": "ROBO3D",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "Robo3D R1",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "R1",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "03EB",
                "204B"
            ]
        ]
    },
    {
        "alias": "PrintrBotHB",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PrintrBot Simple Metal With Heated Bed",
        "no_DTR": true,
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0503",
                            "VID": "2974"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Simple Metal With Heated Bed",
            "vendor": "PrintrBot"
        },
        "vids_pids": [
            [
                "2974",
                "0503"
            ],
            [
                "16C0",
                "0483"
            ]
        ]
    },
    {
        "alias": "MBOT_GRID_II_PLUS",
        "baudrate": [
            115200
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "MBot Grid II+",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "D314",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Grid II+",
            "vendor": "MBot"
        },
        "vids_pids": [
            [
                "23C1",
                "D314"
            ]
        ]
    },
    {
        "alias": "MP_ORCA_.30",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Mendelparts Orca .30",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Orca .30",
            "vendor": "Mendelparts"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "3DPOS_BE",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "force_port_close": false,
        "min_coords_corner": "LF",
        "name": "Black Edition",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0B3A",
                            "VID": "16D0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Edition",
            "vendor": "Black"
        },
        "vids_pids": [
            [
                "16D0",
                "0B3A"
            ]
        ]
    },
    {
        "alias": "TD_PRO",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "force_port_close": false,
        "min_coords_corner": "LF",
        "name": "Tinkerine Ditto PRO",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0010",
                            "VID": "2341"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ditto PRO",
            "vendor": "Tinkerine"
        },
        "vids_pids": [
            [
                "2341",
                "0010"
            ],
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "U3E",
        "allow_comments": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Ultimaker 3 Extended",
        "sender": "u3_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By installing 3DPrinterOS into a printer",
                    "hostless_printing": true,
                    "id": "sh",
                    "ids": [
                        {
                            "PID": "0U3E",
                            "VID": "ZZZZ"
                        }
                    ],
                    "install_": "Oneliner script",
                    "module": "u3_sender",
                    "tooltip": "Follow to this page and run a script from there on your printer using ssh. 3DPrinterOS would work side by side with existing printer firmware",
                    "type": "IN_PRINTER"
                }
            ],
            "model": "3 Extended",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0U3E"
            ]
        ]
    },
    {
        "alias": "FT_RR2020_PRUSA_I3",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Folger Tech RepRap 2020 Prusa i3",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "RepRap 2020 Prusa i3",
            "vendor": "Folger Tech"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "VOLGOBOT",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "VolgoBot FFF1.0",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "FFF1.0",
            "vendor": "VolgoBot"
        },
        "vids_pids": [
            [
                "03EB",
                "204B"
            ]
        ]
    },
    {
        "alias": "Repetier",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Generic Repetier",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "003E",
                            "VID": "2341"
                        },
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Repetier",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "0403",
                "6001"
            ],
            [
                "2341",
                "0010"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "2341",
                "003E"
            ],
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "AIRWOLF_AXIOM",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "G1 Z260 F1000",
            "M104 S0",
            "M140 S0",
            "M107",
            "G92 E0",
            "G1 E-3 F300",
            "G28 X0 Y0 F8000",
            "G1 Z260 F1000",
            "M84",
            "G90",
            "M42 P6 S0"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Airwolf AXIOM",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "AXIOM",
            "vendor": "Airwolf"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "PrintrBotPlus",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PrintrBot Plus",
        "no_DTR": true,
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0620",
                            "VID": "2974"
                        },
                        {
                            "PID": "0503",
                            "VID": "2974"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Plus",
            "vendor": "PrintrBot"
        },
        "vids_pids": [
            [
                "16C0",
                "0483"
            ],
            [
                "2974",
                "0620"
            ],
            [
                "2974",
                "0503"
            ]
        ]
    },
    {
        "alias": "MBotMini",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MBot Mini",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "D314",
                            "VID": "23C1"
                        },
                        {
                            "PID": "XXXX",
                            "VID": "XXXX"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Mini",
            "vendor": "MBot"
        },
        "vids_pids": [
            [
                "23C1",
                "D314"
            ],
            [
                "XXXX",
                "XXXX"
            ]
        ]
    },
    {
        "alias": "MB5thMini",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MakerBot 5th Mini",
        "network_detect": {
            "IP_field": "ip",
            "PID_field": "pid",
            "SNR_field": "iserial",
            "VID_field": "vid",
            "broadcast_port": 12309,
            "json_message": true,
            "json_response": true,
            "listen_port": 12308,
            "message": {
                "command": "broadcast"
            },
            "scanner": "broadcast",
            "target_port": 12307
        },
        "operational_timeout": 60,
        "sender": "birdwing_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0004",
                            "VID": "23C1"
                        }
                    ],
                    "module": "birdwing_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "5th Mini",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "0004"
            ]
        ]
    },
    {
        "alias": "PrintrBotMPlus",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PrintrBot Metal Plus",
        "no_DTR": true,
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0503",
                            "VID": "2974"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Metal Plus",
            "vendor": "PrintrBot"
        },
        "vids_pids": [
            [
                "16C0",
                "0483"
            ],
            [
                "2974",
                "0503"
            ]
        ]
    },
    {
        "alias": "Di3",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Wanhao Duplicator i3",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Duplicator i3",
            "vendor": "Wanhao"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "R2",
        "baudrate": [
            115200
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "Makerbot Replicator 2",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "B015",
                            "VID": "23C1"
                        },
                        {
                            "PID": "B016",
                            "VID": "23C1"
                        },
                        {
                            "PID": "B017",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Replicator 2",
            "vendor": "Makerbot"
        },
        "vids_pids": [
            [
                "23C1",
                "B015"
            ],
            [
                "23C1",
                "B016"
            ],
            [
                "23C1",
                "B017"
            ]
        ]
    },
    {
        "alias": "MB5thReplicatorZ18",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MakerBot 5th Replicator Z18",
        "network_detect": {
            "IP_field": "ip",
            "PID_field": "pid",
            "SNR_field": "iserial",
            "VID_field": "vid",
            "broadcast_port": 12309,
            "json_message": true,
            "json_response": true,
            "listen_port": 12308,
            "message": {
                "command": "broadcast"
            },
            "scanner": "broadcast",
            "target_port": 12307
        },
        "operational_timeout": 60,
        "sender": "birdwing_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0006",
                            "VID": "23C1"
                        },
                        {
                            "PID": "XXXX",
                            "VID": "XXXX"
                        }
                    ],
                    "module": "birdwing_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "5th Replicator Z18",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "0006"
            ],
            [
                "XXXX",
                "XXXX"
            ]
        ]
    },
    {
        "alias": "K_PORTRAIT",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "crazy_serial_number": false,
        "end_gcodes": [
            "M104 T0 S0",
            "M104 T1 S0",
            "M140 S0",
            "M107",
            "G28 X0 Y0",
            "M18"
        ],
        "extruder_count": 2,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "ulti-marlim.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "KODAK Portrait",
        "no_DTR": true,
        "nozzle_offset_y": 0,
        "offset_x": "0",
        "offset_y": "200",
        "sender": "kodak_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "0KDK"
                        }
                    ],
                    "module": "kodak_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "Portrait",
            "vendor": "KODAK"
        },
        "vids_pids": [
            [
                "0KDK",
                "0001"
            ]
        ],
        "x": "200",
        "y": "200",
        "z": "250"
    },
    {
        "alias": "LOOP3D",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "T0",
            "M108",
            "G28 XY",
            "M83",
            "M106 S0",
            "G10 S0 T0",
            "M140 S0",
            "M84 S10"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "LOOP PRO X",
        "offset_x": "0",
        "offset_y": "349",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "60EC",
                            "VID": "1D50"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "PRO X",
            "vendor": "LOOP"
        },
        "vids_pids": [
            [
                "1D50",
                "60EC"
            ]
        ],
        "x": "500",
        "y": "349",
        "z": "500"
    },
    {
        "alias": "LOOP3DPXP",
        "baudrate": [
            250000
        ],
        "crazy_serial_number": false,
        "end_gcodes": [],
        "extruder_count": 2,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "LOOP PRO X+",
        "no_DTR": true,
        "no_homing_on_connect": true,
        "no_ok_timeout": true,
        "offset_x": "0",
        "offset_y": "349",
        "on_cancel_gcodes": [
            "M104 T0 S0",
            "M104 T1 S0",
            "M140 S0",
            "M107",
            "G28 X0 Y0",
            "M18"
        ],
        "sender": "sdcard_print_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "60EC",
                            "VID": "1D50"
                        },
                        {
                            "PID": "60EE",
                            "VID": "1D50"
                        }
                    ],
                    "module": "sdcard_print_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "PRO X+",
            "vendor": "LOOP"
        },
        "vids_pids": [
            [
                "1D50",
                "60EC"
            ],
            [
                "1D50",
                "60EE"
            ]
        ],
        "x": "500",
        "y": "349",
        "z": "500"
    },
    {
        "alias": "LOOP3DPXPT",
        "baudrate": [
            115200
        ],
        "crazy_serial_number": false,
        "end_gcodes": [],
        "extruder_count": 2,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "LOOP PRO X+ TURBO",
        "no_DTR": true,
        "no_homing_on_connect": true,
        "no_ok_timeout": true,
        "offset_x": "0",
        "offset_y": "349",
        "on_cancel_gcodes": [
            "M104 T0 S0",
            "M104 T1 S0",
            "M140 S0",
            "M107",
            "G28 X0 Y0",
            "M18"
        ],
        "sender": "sdcard_print_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "60EC",
                            "VID": "1D50"
                        },
                        {
                            "PID": "60EE",
                            "VID": "1D50"
                        }
                    ],
                    "module": "sdcard_print_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "PRO X+ TURBO",
            "vendor": "LOOP"
        },
        "vids_pids": [
            [
                "1D50",
                "60EC"
            ],
            [
                "1D50",
                "60EE"
            ]
        ],
        "x": "500",
        "y": "349",
        "z": "500"
    },
    {
        "alias": "MGEARM2",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Makergear M2",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "M2",
            "vendor": "Makergear"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "CraftBot_PLUS",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "CraftBot PLUS",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "000A",
                            "VID": "04D8"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "PLUS",
            "vendor": "CraftBot"
        },
        "vids_pids": [
            [
                "04D8",
                "000A"
            ]
        ]
    },
    {
        "alias": "R2X",
        "baudrate": [
            115200
        ],
        "extruder_count": 2,
        "min_coords_corner": "LN",
        "name": "Makerbot Replicator 2X",
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "B017",
                            "VID": "23C1"
                        },
                        {
                            "PID": "B017",
                            "VID": "21C1"
                        },
                        {
                            "PID": "B015",
                            "VID": "23C1"
                        },
                        {
                            "PID": "B016",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Replicator 2X",
            "vendor": "Makerbot"
        },
        "vids_pids": [
            [
                "23C1",
                "B017"
            ],
            [
                "21C1",
                "B017"
            ],
            [
                "23C1",
                "B015"
            ],
            [
                "23C1",
                "B016"
            ]
        ]
    },
    {
        "alias": "type_a_machines_series_1",
        "baudrate": [
            250000,
            230400
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Type A Machines Series 1",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Series 1",
            "vendor": "Type A Machines"
        },
        "vids_pids": [
            [
                "03EB",
                "204B"
            ],
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "LULZTAZ6",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "LulzBot TAZ6",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "TAZ6",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "KOSSEL_PRO",
        "baudrate": [
            "250000",
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "OpenBeam Kossel Pro - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "YYYY",
                            "VID": "YYYY"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Kossel Pro - Experimental",
            "vendor": "OpenBeam"
        },
        "vids_pids": [
            [
                "YYYY",
                "YYYY"
            ]
        ]
    },
    {
        "alias": "MZ3D256",
        "baudrate": [
            "115200",
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MZ3D-256 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "- Experimental",
            "vendor": "MZ3D-256"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "FABX2.0",
        "baudrate": [
            "250000",
            "115200",
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "FABX v2.0 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "YYYY",
                            "VID": "YYYY"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "v2.0 - Experimental",
            "vendor": "FABX"
        },
        "vids_pids": [
            [
                "YYYY",
                "YYYY"
            ]
        ]
    },
    {
        "alias": "DREMEL2",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M107",
            "M104 S0 T0",
            "G28 X0 Y0",
            "M132 X Y Z A",
            "G91",
            "M18"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Dremel 3D40 Idea Builder",
        "offset_toolpath": true,
        "sender": "dremel_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "888B",
                            "VID": "2A89"
                        }
                    ],
                    "module": "dremel_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "3D40 Idea Builder",
            "vendor": "Dremel"
        },
        "vids_pids": [
            [
                "2A89",
                "888B"
            ]
        ]
    },
    {
        "alias": "FOLGER_PRUSA_I3",
        "baudrate": [
            "250000",
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Folger Tech RepRap 2020 Prusa i3 Full Aluminum - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "RepRap 2020 Prusa i3 Full Aluminum - Experimental",
            "vendor": "Folger Tech"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "BCN3D_SIGMA",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "G1 Y140 F4800",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "BCN3D Sigma",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Sigma",
            "vendor": "BCN3D"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "Hyvision_Cubicon_Single_110F",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hyvision Cubicon Single 110F",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "003E",
                            "VID": "2341"
                        },
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Cubicon Single 110F",
            "vendor": "Hyvision"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "27B1",
                "0001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "2341",
                "003E"
            ],
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "PrintrBotSMEB",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Printrbot Simple Metal With Extended Bed - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0503",
                            "VID": "2974"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Simple Metal With Extended Bed - Experimental",
            "vendor": "Printrbot"
        },
        "vids_pids": [
            [
                "2974",
                "0503"
            ],
            [
                "16C0",
                "0483"
            ]
        ]
    },
    {
        "alias": "SHAPERJET",
        "baudrate": [
            "250000",
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "ShaperJet - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "- Experimental",
            "vendor": "ShaperJet"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "XCORE2",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Xplorer 3D X-CORE II - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "3D X-CORE II - Experimental",
            "vendor": "Xplorer"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "DREMEL",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M107",
            "M104 S0 T0",
            "G28 X0 Y0",
            "M132 X Y Z A",
            "G91",
            "M18"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Dremel 3D20 Idea Builder",
        "offset_toolpath": true,
        "read_packet_length": 512,
        "sender": "dremel_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "8889",
                            "VID": "2A89"
                        }
                    ],
                    "module": "dremel_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "3D20 Idea Builder",
            "vendor": "Dremel"
        },
        "vids_pids": [
            [
                "2A89",
                "8889"
            ]
        ]
    },
    {
        "alias": "DAVINCI1.0",
        "baudrate": [
            "250000",
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "XYZ Da Vinci 1.0 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "003E",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Da Vinci 1.0 - Experimental",
            "vendor": "XYZ"
        },
        "vids_pids": [
            [
                "2341",
                "003E"
            ]
        ]
    },
    {
        "alias": "ROSTOCK1",
        "baudrate": [
            "250000",
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "SeeMeCNC Rostock Max - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "YYYY",
                            "VID": "YYYY"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Rostock Max - Experimental",
            "vendor": "SeeMeCNC"
        },
        "vids_pids": [
            [
                "YYYY",
                "YYYY"
            ]
        ]
    },
    {
        "alias": "SEEMECNC_ORION_DELTA",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "SeeMeCNC Orion Delta - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Orion Delta - Experimental",
            "vendor": "SeeMeCNC"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "FF_DREAMER",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "RF",
        "name": "FlashForge Dreamer",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "0315"
                        },
                        {
                            "PID": "0001",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Dreamer",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "0315",
                "0001"
            ],
            [
                "2B71",
                "0001"
            ]
        ]
    },
    {
        "alias": "ROBO3D_R1PLUS",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Robo3D R1+",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "R1+",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "COLIDO_DIY",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "CoLiDo DIY - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "DIY - Experimental",
            "vendor": "CoLiDo"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "MB5thReplicatorPLUS",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MakerBot 5th Replicator+",
        "network_detect": {
            "IP_field": "ip",
            "PID_field": "pid",
            "SNR_field": "iserial",
            "VID_field": "vid",
            "broadcast_port": 12309,
            "json_message": true,
            "json_response": true,
            "listen_port": 12308,
            "message": {
                "command": "broadcast"
            },
            "scanner": "broadcast",
            "target_port": 12307
        },
        "operational_timeout": 60,
        "sender": "birdwing_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0008",
                            "VID": "23C1"
                        },
                        {
                            "PID": "XXXX",
                            "VID": "XXXX"
                        }
                    ],
                    "module": "birdwing_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "5th Replicator+",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "0008"
            ],
            [
                "XXXX",
                "XXXX"
            ]
        ]
    },
    {
        "alias": "MBMethod",
        "extruder_count": 2,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp\n",
        "min_coords_corner": "LF",
        "name": "MakerBot Method",
        "network_detect": {
            "scanner": "noscanner"
        },
        "offset_x": "126",
        "offset_y": "99.5",
        "operational_timeout": 60,
        "sender": "mb_method_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "000E",
                            "VID": "23C1"
                        }
                    ],
                    "module": "mb_method_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Method",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "000E"
            ]
        ],
        "x": "190",
        "y": "190",
        "z": "196"
    },
    {
        "alias": "MBMethodX",
        "extruder_count": 2,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp\n",
        "min_coords_corner": "LF",
        "name": "MakerBot Method X",
        "network_detect": {
            "scanner": "noscanner"
        },
        "offset_x": "126",
        "offset_y": "99.5",
        "operational_timeout": 60,
        "sender": "mb_method_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "000F",
                            "VID": "23C1"
                        }
                    ],
                    "module": "mb_method_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Method X",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "000F"
            ]
        ],
        "x": "190",
        "y": "190",
        "z": "196"
    },
    {
        "alias": "KOSSEL_XL",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "Kossel XL (Experimental)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "XL (Experimental)",
            "vendor": "Kossel"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ]
        ]
    },
    {
        "alias": "FF_FINDER",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "FlashForge Finder",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0002",
                            "VID": "2B71"
                        },
                        {
                            "PID": "0007",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Finder",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "0002"
            ],
            [
                "2B71",
                "0007"
            ]
        ]
    },
    {
        "alias": "U3",
        "allow_comments": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Ultimaker 3",
        "sender": "u3_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By installing 3DPrinterOS into a printer",
                    "hostless_printing": true,
                    "id": "sh",
                    "ids": [
                        {
                            "PID": "00U3",
                            "VID": "ZZZZ"
                        }
                    ],
                    "install_": "Oneliner script",
                    "module": "u3_sender",
                    "tooltip": "Follow to this page and run a script from there on your printer using ssh. 3DPrinterOS would work side by side with existing printer firmware",
                    "type": "IN_PRINTER"
                }
            ],
            "model": "3",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "00U3"
            ]
        ]
    },
    {
        "alias": "ANET_A8_I3",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anet A8 Desktop Prusa i3 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "A8 Desktop Prusa i3 - Experimental",
            "vendor": "Anet"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "MPRICE_SELECT_V2",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Monoprice Maker Select v2 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Maker Select v2 - Experimental",
            "vendor": "Monoprice"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "MPRICE_SELECT_ULT",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Monoprice Maker Ultimate - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Maker Ultimate - Experimental",
            "vendor": "Monoprice"
        },
        "vids_pids": [
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "DK300",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "G1 Y140 F4800",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "DK-300 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "- Experimental",
            "vendor": "DK-300"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "DK200",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "G1 Y140 F4800",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "DK-200 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "- Experimental",
            "vendor": "DK-200"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "D3",
        "name": "Duplicator 3",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "3",
            "vendor": "Duplicator"
        },
        "vids_pids": []
    },
    {
        "alias": "AE3D_IM_WIDE",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "AE3D Impressora Wide",
        "no_DTR": true,
        "sender": "smoothie_serial_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6015",
                            "VID": "1D50"
                        }
                    ],
                    "module": "smoothie_serial_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Impressora Wide",
            "vendor": "AE3D"
        },
        "vids_pids": [
            [
                "1D50",
                "6015"
            ]
        ]
    },
    {
        "alias": "FF_CREATOR_PRO",
        "baudrate": [
            115200
        ],
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "RF",
        "name": "FlashForge Creator Pro",
        "offset_toolpath": true,
        "sender": "makerbot_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "D314",
                            "VID": "23C1"
                        }
                    ],
                    "module": "makerbot_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Creator Pro",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "23C1",
                "D314"
            ]
        ]
    },
    {
        "alias": "ATTROBOT_M",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Attrobot Mini - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "003E",
                            "VID": "2341"
                        },
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Mini - Experimental",
            "vendor": "Attrobot"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "27B1",
                "0001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "2341",
                "003E"
            ],
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "DREMEL3D45",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M107",
            "M104 S0 T0",
            "G28 X0 Y0",
            "M132 X Y Z A",
            "G91",
            "M18"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Dremel 3D45 Idea Builder",
        "offset_toolpath": true,
        "sender": "dremel_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "888D",
                            "VID": "2A89"
                        }
                    ],
                    "module": "dremel_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "3D45 Idea Builder",
            "vendor": "Dremel"
        },
        "vids_pids": [
            [
                "2A89",
                "888D"
            ]
        ]
    },
    {
        "alias": "PrintrBotSM",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PrintrBot Simple Metal",
        "no_DTR": true,
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0503",
                            "VID": "2974"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0610",
                            "VID": "2974"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Simple Metal",
            "vendor": "PrintrBot"
        },
        "vids_pids": [
            [
                "2974",
                "0503"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2974",
                "0610"
            ]
        ]
    },
    {
        "alias": "PRUSA_I3_MK2",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Original Prusa i3 MK2/2S/2.5",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "2C99"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        },
                        {
                            "PID": "0PIN",
                            "VID": "UART"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "i3 MK2/2S/2.5",
            "vendor": "Original Prusa"
        },
        "vids_pids": [
            [
                "2C99",
                "0001"
            ],
            [
                "27B1",
                "0001"
            ],
            [
                "UART",
                "0PIN"
            ]
        ]
    },
    {
        "alias": "DEXBOT",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "3Dexter Dexbot - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Dexbot - Experimental",
            "vendor": "3Dexter"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "FF_GUIDER2",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "file_endpoint_out": "0x4",
        "min_coords_corner": "RF",
        "name": "FlashForge Guider 2(S)",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0004",
                            "VID": "2B71"
                        },
                        {
                            "PID": "0009",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Guider 2(S)",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "0004"
            ],
            [
                "2B71",
                "0009"
            ]
        ]
    },
    {
        "alias": "FF_INVENTOR2",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "file_endpoint_out": "0x4",
        "min_coords_corner": "RF",
        "name": "FlashForge Inventor 2",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0006",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Inventor 2",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "0006"
            ]
        ]
    },
    {
        "alias": "FF_GUIDER",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "FlashForge Guider",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0003",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Guider",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "0003"
            ]
        ]
    },
    {
        "alias": "C_CR10",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality CR-10(S)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "KLPR",
                            "VID": "KLPR"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "CR-10(S)",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "KLPR",
                "KLPR"
            ]
        ]
    },
    {
        "alias": "PRUSA_I3_MK3",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Original Prusa i3 MK3(S/S+)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0002",
                            "VID": "2C99"
                        },
                        {
                            "PID": "0PIN",
                            "VID": "UART"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "i3 MK3(S/S+)",
            "vendor": "Original Prusa"
        },
        "vids_pids": [
            [
                "2C99",
                "0002"
            ],
            [
                "UART",
                "0PIN"
            ]
        ]
    },
    {
        "alias": "PS_ULTRA",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "RF",
        "name": "PowerSpec Ultra",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "00FF",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ultra",
            "vendor": "PowerSpec"
        },
        "vids_pids": [
            [
                "2B71",
                "00FF"
            ]
        ]
    },
    {
        "alias": "MB5thReplicator",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MakerBot 5th Replicator",
        "network_detect": {
            "IP_field": "ip",
            "PID_field": "pid",
            "SNR_field": "iserial",
            "VID_field": "vid",
            "broadcast_port": 12309,
            "json_message": true,
            "json_response": true,
            "listen_port": 12308,
            "message": {
                "command": "broadcast"
            },
            "scanner": "broadcast",
            "target_port": 12307
        },
        "operational_timeout": 60,
        "sender": "birdwing_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0005",
                            "VID": "23C1"
                        },
                        {
                            "PID": "000B",
                            "VID": "23C1"
                        },
                        {
                            "PID": "XXXX",
                            "VID": "XXXX"
                        }
                    ],
                    "module": "birdwing_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "5th Replicator",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "0005"
            ],
            [
                "23C1",
                "000B"
            ],
            [
                "XXXX",
                "XXXX"
            ]
        ]
    },
    {
        "alias": "3DP_P1",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "3DPrinter Prime 1",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Prime 1",
            "vendor": "3DPrinter"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ],
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "SM_3IN1",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Snapmaker 3-in-1",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "3-in-1",
            "vendor": "Snapmaker"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "DUET3D",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "G1 X0 Y0",
            "M107",
            "G91",
            "M83",
            "T0",
            "G1 E-1",
            "M104 T0 S0",
            "G90",
            "M140 S0",
            "M84 S10",
            "G28"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Generic Duet3D",
        "offset_x": "0",
        "offset_y": "0",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "60EC",
                            "VID": "1D50"
                        },
                        {
                            "PID": "60EE",
                            "VID": "1D50"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                },
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "detector": "NetworkDetector",
                    "scanner": "rrfw",
                    "id": "duetweb",
                    "ids": [
                        {

                            "PID": "GENH",
                            "VID": "RRFW"
                        },
                        {
                            "PID": "DWU0",
                            "VID": "DUET"
                        }
                    ],
                    "module": "duetweb_sender",
                    "name": "LAN connection using same API as DWU",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Duet3D",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "1D50",
                "60EC"
            ],
            [
                "1D50",
                "60EE"
            ]
        ],
        "x": "200",
        "y": "200",
        "z": "200"
    },
    {
        "alias": "SMOTHIEWARE",
        "baudrate": [
            250000,
            115200
        ],
        "crazy_serial_number": false,
        "end_gcodes": [
            "M104 T0 S0",
            "M104 T1 S0",
            "M140 S0",
            "M107",
            "G28 X0 Y0",
            "M18"
        ],
        "extruder_count": 2,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "RF",
        "name": "Generic Smoothieware",
        "no_DTR": true,
        "nozzle_offset_y": 0,
        "offset_x": "0",
        "offset_y": "200",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6015",
                            "VID": "1D50"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Smoothieware",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "1D50",
                "6015"
            ]
        ],
        "x": "200",
        "y": "200",
        "z": "200"
    },
    {
        "alias": "HERCULES_INDUSTRIAL",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "crazy_serial_number": false,
        "end_gcodes": [
            "M104 T0 S0",
            "M104 T1 S0",
            "M140 S0",
            "M107",
            "G28 X0 Y0",
            "M18"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Hercules Industrial",
        "no_DTR": true,
        "offset_x": "0",
        "offset_y": "300",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "6015",
                            "VID": "1D50"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "Industrial",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "1D50",
                "6015"
            ]
        ],
        "x": "300",
        "y": "300",
        "z": "300"
    },
    {
        "alias": "FUSION3_F400",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M107",
            "M84"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Fusion3 F400",
        "no_homing_on_connect": true,
        "operational_timeout": 30,
        "sender": "telnet_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "detector": "NetworkDetector",
                    "scanner": "rrfw",
                    "id": "duetweb",
                    "ids": [
                        {

                            "PID": "GENH",
                            "VID": "RRFW"
                        },
                        {
                            "PID": "F400",
                            "VID": "FUS3"
                        }
                    ],
                    "module": "duetweb_sender",
                    "name": "LAN connection using same API as DWU",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                },
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "GENT",
                            "VID": "RRFW"
                        },
                        {
                            "PID": "F400",
                            "VID": "FUS3"
                        }
                    ],
                    "module": "telnet_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "F400",
            "vendor": "Fusion3"
        },
        "vids_pids": [
            [
                "FUS3",
                "F400"
            ]
        ],
        "x": "355",
        "y": "355",
        "z": "315"
    },
    {
        "alias": "FUSION3_F410",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M107",
            "M84"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Fusion3 F410",
        "no_homing_on_connect": true,
        "operational_timeout": 30,
        "sender": "telnet_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "detector": "NetworkDetector",
                    "scanner": "rrfw",
                    "id": "duetweb",
                    "ids": [
                        {

                            "PID": "GENH",
                            "VID": "RRFW"
                        },
                        {
                            "PID": "F410",
                            "VID": "FUS3"
                        }
                    ],
                    "module": "duetweb_sender",
                    "name": "LAN connection using same API as DWU",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                },
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "GENT",
                            "VID": "RRFW"
                        },
                        {
                            "PID": "F410",
                            "VID": "FUS3"
                        }
                    ],
                    "module": "telnet_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "F410",
            "vendor": "Fusion3"
        },
        "vids_pids": [
            [
                "FUS3",
                "F410"
            ]
        ],
        "x": "355",
        "y": "355",
        "z": "315"
    },
    {
        "alias": "TELNET_RRFW",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M107",
            "M84"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Generic RepRapFirmware by telnet",
        "no_homing_on_connect": true,
        "operational_timeout": 30,
        "sender": "telnet_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "GENT",
                            "VID": "RRFW"
                        }
                    ],
                    "module": "telnet_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "RepRapFirmware by telnet",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "GENR",
                "RRFW"
            ],
            [
                "RRFW",
                "GENT"
            ]
        ],
        "x": "200",
        "y": "200",
        "z": "200"
    },
    {
        "alias": "REPETIER_SERVER",
        "end_gcodes": [],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Generic RepetierServer",
        "network_detect": {
            "scanner": "repetier"
        },
        "operational_timeout": 8,
        "sender": "repetier_server_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "SERV",
                            "VID": "REPE"
                        }
                    ],
                    "module": "repetier_server_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "RepetierServer",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "REPE",
                "SERV"
            ]
        ],
        "x": "200",
        "y": "200",
        "z": "200"
    },
    {
        "alias": "GTMAX_AB400",
        "end_gcodes": [],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "GTMax3D Core AB400",
        "network_detect": {
            "scanner": "repetier"
        },
        "operational_timeout": 8,
        "sender": "repetier_server_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "SERV",
                            "VID": "REPE"
                        }
                    ],
                    "module": "repetier_server_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Core AB400",
            "vendor": "GTMax3D"
        },
        "vids_pids": [
            [
                "REPE",
                "SERV"
            ]
        ],
        "x": "400",
        "y": "400",
        "z": "400"
    },
    {
        "alias": "GTMAX_A3",
        "end_gcodes": [],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "GTMax3D Core A3",
        "network_detect": {
            "scanner": "repetier"
        },
        "operational_timeout": 8,
        "sender": "repetier_server_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "SERV",
                            "VID": "REPE"
                        }
                    ],
                    "module": "repetier_server_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Core A3",
            "vendor": "GTMax3D"
        },
        "vids_pids": [
            [
                "REPE",
                "SERV"
            ]
        ],
        "x": "300",
        "y": "300",
        "z": "300"
    },
    {
        "alias": "GTMAX_H5",
        "end_gcodes": [],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "GTMax3D H5",
        "network_detect": {
            "scanner": "repetier"
        },
        "operational_timeout": 8,
        "sender": "repetier_server_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "SERV",
                            "VID": "REPE"
                        }
                    ],
                    "module": "repetier_server_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "H5",
            "vendor": "GTMax3D"
        },
        "vids_pids": [
            [
                "REPE",
                "SERV"
            ]
        ],
        "x": "300",
        "y": "300",
        "z": "500"
    },
    {
        "alias": "FL_FORM2",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Form 2 (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FORM-2-",
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRM2",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 2 (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRM2"
            ]
        ],
        "x": "145.0",
        "y": "145.0",
        "z": "175.0"
    },
    {
        "alias": "FL_FORM3",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Form 3 (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": ["FORM-3-", "DGJR-1-"],
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRM3",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 3 (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRM3"
            ]
        ],
        "x": "145.0",
        "y": "145.0",
        "z": "185.0"
    },
    {
        "alias": "FL_FRM3B",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Form 3B/3B+ (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FRMB-3-",
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRMB",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 3B/3B+ (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRMB"
            ]
        ],
        "x": "145.0",
        "y": "145.0",
        "z": "185.0"
    },
    {
        "alias": "FL_FRM3L",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Form 3L (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": ["FRML-3-", "DGSR-1-"],
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRML",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 3L (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRML"
            ]
        ],
        "x": "335.0",
        "y": "200.0",
        "z": "300.0"
    },
    {
        "alias": "FL_FRM3BL",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Form 3BL (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FRBL-3-",
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRBL",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 3BL (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRBL"
            ]
        ],
        "x": "335.0",
        "y": "200.0",
        "z": "300.0"
    },
    {
        "alias": "FL_FUSE1",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Fuse 1 (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "PILK-1-",
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FUS1",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Fuse 1 (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FUS1"
            ]
        ],
        "x": "165.0",
        "y": "165.0",
        "z": "300.0"
    },
    {
        "alias": "FL_FUSE1P",
        "extruder_count": 1,
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Formlabs Fuse 1+ (Beta)",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FS30-1-",
            "scanner": "zeroconf_formlabs"
        },
        "sender": "formlabs_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FU1P",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Fuse 1+ (Beta)",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FU1P"
            ]
        ],
        "x": "165.0",
        "y": "165.0",
        "z": "300.0"
    },
    {
        "name": "Formlabs Form 4 (Beta)",
        "alias": "FL_FORM4",
        "sender": "formlabs_sender",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "network_detect": {
          "filter": "_formlabs_formule._tcp",
          "port": 35,
          "machine_type_id": "FORM-4-",
          "scanner": "zeroconf_formlabs"
        },
        "v2": {
          "connections": [
              {
                  "auth_fields": [
                      {
                          "display": "IP",
                          "id": "IP"
                      }
                  ],
                  "hostless_print": true,
                  "id": "lan",
                  "ids": [
                      {
                          "PID": "FRM4",
                          "VID": "FORM"
                      }
                  ],
                  "module": "formlabs_sender",
                  "name": "Network",
                  "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                  "type": "LAN"
              }
          ],
          "model": "Form 4",
          "vendor": "Formlabs"
        },
        "vids_pids": [
          [
              "FORM",
              "FRM4"
          ]
        ],
        "x": "200.0",
        "y": "125.0",
        "z": "210.0",
        "keep_warm_gcode": "",
        "gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
        "name": "Formlabs Form 4B (Beta)",
        "alias": "FL_FRM4B",
        "sender": "formlabs_sender",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FORM-4-",
            "scanner": "zeroconf_formlabs"
        },
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_print": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRM4",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 4B",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRM4"
            ]
        ],
        "x": "200.0",
        "y": "125.0",
        "z": "210.0",
        "keep_warm_gcode": "",
        "gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
        "name": "Formlabs Form 4L (Beta)",
        "alias": "FL_FRM4L",
        "sender": "formlabs_sender",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FRML-4-",
            "scanner": "zeroconf_formlabs"
        },
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_print": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FR4L",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 4L",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FR4L"
            ]
        ],
        "x": "353.0",
        "y": "196.0",
        "z": "350.0",
        "keep_warm_gcode": "",
        "gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
        "name": "Formlabs Form 4BL (Beta)",
        "alias": "FL_FRM4BL",
        "sender": "formlabs_sender",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "network_detect": {
            "filter": "_formlabs_formule._tcp",
            "port": 35,
            "machine_type_id": "FRML-4-",
            "scanner": "zeroconf_formlabs"
        },
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_print": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FR4L",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 4BL",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FR4L"
            ]
        ],
        "x": "353.0",
        "y": "196.0",
        "z": "350.0",
        "keep_warm_gcode": "",
        "gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
        "alias": "KLIPPER",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
        "min_coords_corner": "LF",
        "name": "Generic Klipper",
        "on_pause_gcodes": [],
        "on_resume_gcodes": [],
        "operational_timeout": 6,
        "sender": "threaded_sender",
        "v2": {
            "model": "Klipper",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "KLPR",
                "KLPR"
            ]
        ],
        "x": "300",
        "y": "300",
        "z": "500"
    },
    {
        "alias": "PRUSA_MINI",
        "baudrate": [
            115200
        ],
        "cooldown_on_pause": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "heatup_on_resume": true,
        "min_coords_corner": "LF",
        "name": "Original Prusa MINI",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0409",
                            "VID": "2C99"
                        },
                        {
                            "PID": "000C",
                            "VID": "2C99"
                        },
                        {
                            "PID": "0015",
                            "VID": "2C99"
                        },
                        {
                            "PID": "0PIN",
                            "VID": "UART"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                },
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "prusalink",
                    "ids": [
                        {
                            "PID": "MINI",
                            "VID": "PRSA"
                        }
                    ],
                    "module": "prusalink_sender",
                    "name": "Network(Prusalink)",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN",
                    "scanner": "prusalink"
                }
            ],
            "model": "MINI",
            "vendor": "Original Prusa"
        },
        "vids_pids": [
            [
                "2C99",
                "0409"
            ],
            [
                "2C99",
                "000C"
            ],
            [
                "UART",
                "0PIN"
            ],
            [
                "2C99",
                "0015"
            ]
        ]
    },
    {
        "alias": "BAMBU_P1P",
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Bambu Lab P1P",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "C11"
        },
        "self_printing": true,
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0P1P",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "P1P",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "0P1P"
            ]
        ],
        "x": "256",
        "y": "256",
        "z": "256"
    },
    {
        "alias": "BAMBU_P1S",
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Bambu Lab P1S",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "C12"
        },
        "self_printing": true,
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0P1S",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "P1S",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "0P1S"
            ]
        ],
        "x": "256",
        "y": "256",
        "z": "256"
    },
    {
        "alias": "BAMBU_X1",
        "camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Bambu Lab X1",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "BL-P002"
        },
        "self_printing": true,
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "00X1",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "X1",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "00X1"
            ]
        ],
        "x": "256",
        "y": "256",
        "z": "256"
    },
    {
        "alias": "BAMBU_X1C",
        "camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Bambu Lab X1 Carbon",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "BL-P001"
        },
        "self_printing": true,
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0X1C",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "X1 Carbon",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "0X1C"
            ]
        ],
        "x": "256",
        "y": "256",
        "z": "256"
    },
    {
        "alias": "BAMBU_A1M",
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "gcodecheck_re_file": "marlin-marlin.txt",
        "keep_warm_gcode": "",
        "min_coords_corner": "LF",
        "name": "Bambu Lab A1 Mini",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "N1"
        },
        "self_printing": true,
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0A1M",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "A1 Mini",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "0A1M"
            ]
        ],
        "x": "180",
        "y": "180",
        "z": "180"
    },
    {
        "alias": "BAMBU_A1",
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "min_coords_corner": "LF",
        "name": "Bambu Lab A1 (Experimental)",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "N2S"
        },
        "self_printing": true,
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0A10",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "A1 (Experimental)",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "0A10"
            ]
        ],
        "x": "256",
        "y": "256",
        "z": "256"
    },
    {
        "alias": "RR2",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Robo3D R2",
        "sender": "octoprint_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "0RR2",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "octoprint_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "R2",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "OCTO",
                "0RR2"
            ]
        ]
    },
    {
        "alias": "RC2",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Robo3D C2",
        "sender": "octoprint_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "0RC2",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "octoprint_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "C2",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "OCTO",
                "0RC2"
            ]
        ]
    },
    {
        "alias": "MGM3",
        "end_gcodes": [
            "M104 S0",
            "M104 T0 S0",
            "M104 T1 S0",
            "T0",
            "M104 S0",
            "T1",
            "M104 S0",
            "T0",
            "M140 S0",
            "M106 S0",
            "G28 X0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "MakerGear M3-ID",
        "sender": "octoprint_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "MGM3",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "octoprint_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "M3-ID",
            "vendor": "MakerGear"
        },
        "vids_pids": [
            [
                "OCTO",
                "MGM3"
            ]
        ]
    },
    {
        "alias": "TLDQ2",
        "extruder_count": 1,
        "min_coords_corner": "RN",
        "name": "TRILAB DeltiQ 2",
        "sender": "octoprint_sender",
        "v2": {
            "model": "DeltiQ 2",
            "vendor": "TRILAB"
        },
        "vids_pids": [
            [
                "OCTO",
                "0TD2"
            ]
        ]
    },
    {
        "alias": "MOONRAKER",
        "min_coords_corner": "LF",
        "name": "Generic Moonraker",
        "network_detect": {
            "required_fields": [
                "username",
                "password"
            ],
            "scanner": "noscanner"
        },
        "operational_timeout": 30,
        "sender": "moonraker_sender",
        "timeout": 6,
        "v2": {
            "model": "Moonraker",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "MNRK",
                "GENE"
            ]
        ]
    },
    {
        "alias": "PRUSA_MK4",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "filament_diameter": "1.75",
        "min_coords_corner": "LF",
        "name": "Original Prusa MK4",
        "offset_x": "0",
        "offset_y": "210",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "000D",
                            "VID": "2C99"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                },
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "prusalink",
                    "ids": [
                        {
                            "PID": "0MK4",
                            "VID": "PRSA"
                        }
                    ],
                    "module": "prusalink_sender",
                    "name": "Network(Prusalink)",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "detector": "prusa",
                    "type": "LAN",
                    "scanner": "prusalink"
                }
            ],
            "model": "MK4",
            "vendor": "Original Prusa"
        },
        "vids_pids": [
            [
                "2C99",
                "000D"
            ]
        ],
        "x": "250",
        "y": "210",
        "z": "220"
    },
    {
        "name": "Original Prusa MK4S",
        "alias": "PRUSA_MK4S",
        "sender": "printrun_sender",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "001A",
                            "VID": "2C99"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                },
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_print": true,
                    "id": "prusalink",
                    "ids": [
                        {
                            "PID": "MK4S",
                            "VID": "PRSA"
                        }
                    ],
                    "module": "prusalink_sender",
                    "name": "Network(Prusalink)",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN",
                    "scanner": "prusalink"
                }
            ],
            "model": "MK4S",
            "vendor": "Original Prusa"
        },
        "vids_pids": [
            [
                "2C99",
                "001A"
            ]
        ],
        "x": "250",
        "y": "210",
        "z": "220",
        "filament_diameter": "1.75",
        "offset_x": "0",
        "offset_y": "210"
    },
    {
        "alias": "HOST_CMD_EMUL",
        "allow_no_sender": true,
        "name": "Host command interface",
        "sender": "dummy_sender",
        "vids_pids": [
            [
                "HOST",
                "HOST"
            ]
        ]
    },
    {
        "alias": "FORTUS_450MC",
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Fortus 450mc",
        "network_detect": {
            "filter": "",
            "scanner": "upnp_strat"
        },
        "sender": "grabcad_strat_api_sender",
        "v2": {
            "model": "450mc",
            "vendor": "Fortus"
        },
        "vids_pids": [
            [
                "FRTS",
                "45MC"
            ]
        ]
    },
    {
        "alias": "FORTUS_380MC",
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Fortus 380mc",
        "network_detect": {
            "filter": "",
            "scanner": "upnp_strat"
        },
        "sender": "grabcad_strat_api_sender",
        "v2": {
            "model": "380mc",
            "vendor": "Fortus"
        },
        "vids_pids": [
            [
                "FRTS",
                "38MC"
            ]
        ]
    },
    {
        "alias": "FL_FORM1",
        "extruder_count": 1,
        "name": "Formlabs Form 1",
        "sender": "formlabs_preform_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRM1",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_preform_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 1",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRM1"
            ]
        ]
    },
    {
        "alias": "HP_F5210",
        "end_gcodes": [],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "HP 5210",
        "network_detect": {
            "scanner": "hp_gatewayapi"
        },
        "not_operational_status": "not_detected",
        "operational_timeout": 8,
        "sender": "hp_gatewayapi_sender",
        "v2": {
            "model": "5210",
            "vendor": "HP"
        },
        "vids_pids": [
            [
                "HPHP",
                "F521"
            ]
        ]
    },
    {
        "alias": "SCALAR_XL",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "3DMS Scalar XL - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Scalar XL - Experimental",
            "vendor": "3DMS"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "PrintrBot",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "PrintrBot",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0503",
                            "VID": "2974"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "PrintrBot",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "2974",
                "0503"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "16C0",
                "0483"
            ]
        ]
    },
    {
        "alias": "uPrint",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "uPrint",
        "network_detect": {
            "broadcast_port": null,
            "json_message": true,
            "json_response": true,
            "listen_port": null,
            "target_port": null
        },
        "operational_timeout": 60,
        "sender": "uprint_sender",
        "v2": {
            "model": "uPrint",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "XXXX",
                "XXXX"
            ]
        ]
    },
    {
        "alias": "SCALAR_M",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "3DMS Scalar M - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0042",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Scalar M - Experimental",
            "vendor": "3DMS"
        },
        "vids_pids": [
            [
                "2341",
                "0042"
            ]
        ]
    },
    {
        "alias": "RRV3_500",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Rat Rig V-Core 3 500mm (on Klipper host)",
        "no_n_and_checksum_for": [
            "END_PRINT",
            "BED_MESH_CLEAR"
        ],
        "operational_timeout": 6,
        "sender": "threaded_sender",
        "v2": {
            "model": "V-Core 3 500mm (on Klipper host)",
            "vendor": "Rat Rig"
        },
        "vids_pids": [
            [
                "KLPR",
                "KLPR"
            ]
        ]
    },
    {
        "alias": "MALYAN_M200",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Malyan M200 - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0503",
                            "VID": "2974"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "M200 - Experimental",
            "vendor": "Malyan"
        },
        "vids_pids": [
            [
                "2974",
                "0503"
            ]
        ]
    },
    {
        "alias": "FF_INVENTOR",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "file_endpoint_out": "0x4",
        "min_coords_corner": "RF",
        "name": "FlashForge Inventor",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0005",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Inventor",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "0005"
            ]
        ]
    },
    {
        "alias": "C_ENDER3",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality Ender-3",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "0004",
                            "VID": "1EAF"
                        },
                        {
                            "PID": "5740",
                            "VID": "0483"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ender-3",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "1EAF",
                "0004"
            ],
            [
                "0483",
                "5740"
            ]
        ]
    },
    {
        "alias": "RC2_USB",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Robo3D C2 (USB)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "C2 (USB)",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "RE3",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Robo3D E3",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "0RE3",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "E3",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0RE3"
            ]
        ]
    },
    {
        "alias": "PMAGNA",
        "allow_comments": true,
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Photocentric LC Magna",
        "sender": "photocentric_sender",
        "v2": {
            "model": "LC Magna",
            "vendor": "Photocentric"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "00PM"
            ]
        ]
    },
    {
        "alias": "XLM",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Xerox 3D Liquid Metal",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "0XRX"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "3D Liquid Metal",
            "vendor": "Xerox"
        },
        "vids_pids": [
            [
                "0XRX",
                "0001"
            ]
        ]
    },
    {
        "alias": "LULZTAZPRO",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "LulzBot TAZ Pro",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "TAZ Pro",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "LULZMINI2",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "M107",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "LulzBot Mini 2",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Mini 2",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "ASWX1",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84",
            "M106 S0"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Artillery Sidewinder X1",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Sidewinder X1",
            "vendor": "Artillery"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "HG2",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules G2",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHG2",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G2",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHG2"
            ]
        ]
    },
    {
        "alias": "HP_F5200",
        "end_gcodes": [],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "HP 5200",
        "network_detect": {
            "scanner": "hp_gatewayapi"
        },
        "not_operational_status": "not_detected",
        "operational_timeout": 8,
        "sender": "hp_gatewayapi_sender",
        "v2": {
            "model": "5200",
            "vendor": "HP"
        },
        "vids_pids": [
            [
                "HPHP",
                "F520"
            ]
        ]
    },
    {
        "alias": "ANYCUBIC_I3MEGAS",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "M84",
            "M107",
            "G91",
            "G1 E-1 F300",
            "G1 Z+0.5 E-5 ;X-20 Y-20 F300",
            "G28 X0 Y0",
            "G1 Y180 F2000",
            "M84",
            "G90",
            "M300 P300 S4000"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anycubic i3 Mega S",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "EA60",
                            "VID": "10C4"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "i3 Mega S",
            "vendor": "Anycubic"
        },
        "vids_pids": [
            [
                "10C4",
                "EA60"
            ]
        ]
    },
    {
        "alias": "HO",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules Original",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHO0",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Original",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHO0"
            ]
        ]
    },
    {
        "alias": "HSD",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Hercules Strong Duo",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHSD",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Strong Duo",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHSD"
            ]
        ]
    },
    {
        "alias": "ANYCUBIC_MEGAX",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "M84",
            "M107",
            "G91",
            "G1 E-1 F300",
            "G1 Z+0.5 E-5 ;X-20 Y-20 F300",
            "G28 X0 Y0",
            "G1 Y180 F2000",
            "M84",
            "G90",
            "M300 P300 S4000"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anycubic Mega X",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "EA60",
                            "VID": "10C4"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Mega X",
            "vendor": "Anycubic"
        },
        "vids_pids": [
            [
                "10C4",
                "EA60"
            ]
        ]
    },
    {
        "alias": "S_F900",
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Stratasys F900",
        "network_detect": {
            "scanner": ""
        },
        "sender": "stratasys_sender",
        "v2": {
            "model": "F900",
            "vendor": "Stratasys"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "SF900"
            ]
        ]
    },
    {
        "alias": "TRONXY_X5SA_P",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "TRONXY X5SA Pro",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "X5SA Pro",
            "vendor": "TRONXY"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "HG4",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules G4",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHG4",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G4",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHG4"
            ]
        ]
    },
    {
        "alias": "STRAT_F370",
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Stratasys F370",
        "network_detect": {
            "filter": "",
            "scanner": "upnp_strat"
        },
        "sender": "grabcad_strat_api_sender",
        "v2": {
            "model": "F370",
            "vendor": "Stratasys"
        },
        "vids_pids": [
            [
                "STRS",
                "F370"
            ]
        ]
    },
    {
        "alias": "STRAT_F270",
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Stratasys F270",
        "network_detect": {
            "filter": "",
            "scanner": "upnp_strat"
        },
        "sender": "grabcad_strat_api_sender",
        "v2": {
            "model": "F270",
            "vendor": "Stratasys"
        },
        "vids_pids": [
            [
                "STRS",
                "F270"
            ]
        ]
    },
    {
        "alias": "HP_F580",
        "end_gcodes": [],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "HP 580",
        "network_detect": {
            "scanner": "hp_gatewayapi"
        },
        "operational_timeout": 8,
        "sender": "hp_gatewayapi_sender",
        "v2": {
            "model": "580",
            "vendor": "HP"
        },
        "vids_pids": [
            [
                "HPHP",
                "F580"
            ]
        ]
    },
    {
        "alias": "STRAT_F120",
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Stratasys F120",
        "network_detect": {
            "filter": "",
            "scanner": "upnp_strat"
        },
        "sender": "grabcad_strat_api_sender",
        "v2": {
            "model": "F120",
            "vendor": "Stratasys"
        },
        "vids_pids": [
            [
                "STRS",
                "F120"
            ]
        ]
    },
    {
        "alias": "HG4D",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Hercules G4 Duo",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "HG4D",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G4 Duo",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "HG4D"
            ]
        ]
    },
    {
        "alias": "HG6",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules G6",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHG6",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G6",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHG6"
            ]
        ]
    },
    {
        "alias": "HSO",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules Strong One",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHSO",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Strong One",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHSO"
            ]
        ]
    },
    {
        "alias": "LULZTAZW",
        "allow_comments": true,
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "LulzBot TAZ Workhorse",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "TAZ Workhorse",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "FF_CREATORP2",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "file_endpoint_out": "0x4",
        "min_coords_corner": "RF",
        "name": "FlashForge Creator Pro 2",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "000E",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Creator Pro 2",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "000E"
            ]
        ]
    },
    {
        "alias": "HG9D",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Hercules G9 Duo",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "HG9D",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G9 Duo",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "HG9D"
            ]
        ]
    },
    {
        "alias": "HP_4200",
        "end_gcodes": [],
        "extruder_count": 2,
        "filter_mask": "[\\s^]54\\d\\s",
        "min_coords_corner": "LF",
        "name": "HP 4200",
        "network_detect": {
            "scanner": "hp_gatewayapi"
        },
        "operational_timeout": 8,
        "sender": "hp_gatewayapi_sender",
        "v2": {
            "model": "4200",
            "vendor": "HP"
        },
        "vids_pids": [
            [
                "__HP",
                "4200"
            ]
        ]
    },
    {
        "alias": "STRAT_F170",
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Stratasys F170",
        "network_detect": {
            "filter": "",
            "scanner": "upnp_strat"
        },
        "sender": "grabcad_strat_api_sender",
        "v2": {
            "model": "F170",
            "vendor": "Stratasys"
        },
        "vids_pids": [
            [
                "STRS",
                "F170"
            ]
        ]
    },
    {
        "alias": "FF_C4",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "RF",
        "name": "Flashforge Creator 4",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "FFC4",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Creator 4",
            "vendor": "Flashforge"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "FFC4"
            ]
        ]
    },
    {
        "alias": "FF_G3",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "FlashForge Guider 3",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "FFG3",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Guider 3",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "FFG3"
            ]
        ]
    },
    {
        "alias": "C_CR30",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality CR-30 3DPrintMill - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "7525",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "CR-30 3DPrintMill - Experimental",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ],
            [
                "1A86",
                "7525"
            ]
        ]
    },
    {
        "alias": "FF_A4",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Flashforge Adventurer 4",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "FFA4",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Adventurer 4",
            "vendor": "Flashforge"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "FFA4"
            ]
        ]
    },
    {
        "alias": "ANYCUBIC_KOBRA_MAX",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "M107",
            "G91",
            "G1 E-1 F300",
            "G1 Z+0.5 E-5 F300",
            "G28 X0 Y0",
            "M84",
            "G90"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anycubic Kobra Max",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Kobra Max",
            "vendor": "Anycubic"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "PRUSA_XL",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Original Prusa XL",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0011",
                            "VID": "2C99"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "XL",
            "vendor": "Original Prusa"
        },
        "vids_pids": [
            [
                "2C99",
                "0011"
            ]
        ]
    },
    {
        "alias": "U2_PC",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Ultimaker 2+ Connect",
        "sender": "",
        "v2": {
            "model": "2+ Connect",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "ULTM",
                "U2PC"
            ]
        ]
    },
    {
        "alias": "U2_UG",
        "allow_comments": true,
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "force_port_close": false,
        "min_coords_corner": "LF",
        "name": "Ultimaker 2 UltiGcode",
        "sender": "ultigcode_sender",
        "v2": {
            "model": "2 UltiGcode",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "4745",
                "0001"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "RE4",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Robo3D E4",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "0RE4",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "E4",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0RE4"
            ]
        ]
    },
    {
        "alias": "RE4P",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "Robo3D E4 Pro",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "RE4P",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "E4 Pro",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "RE4P"
            ]
        ]
    },
    {
        "alias": "US7",
        "allow_comments": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Ultimaker S7",
        "sender": "u3_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By installing 3DPrinterOS into a printer",
                    "hostless_printing": true,
                    "id": "sh",
                    "ids": [
                        {
                            "PID": "0US7",
                            "VID": "ZZZZ"
                        }
                    ],
                    "install_": "Oneliner script",
                    "module": "u3_sender",
                    "tooltip": "Follow to this page and run a script from there on your printer using ssh. 3DPrinterOS would work side by side with existing printer firmware",
                    "type": "IN_PRINTER"
                }
            ],
            "model": "S7",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0US7"
            ]
        ]
    },
    {
        "alias": "BAMBU_X1E",
        "camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Bambu Lab X1E (Experimental)",
        "network_detect": {
            "required_fields": [
                "forced_SNR",
                "password"
            ],
            "scanner": "bambulab_scanner",
            "machine_type_id": "C13"
        },
        "sender": "bambulab_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Serial number",
                            "id": "serial_number"
                        },
                        {
                            "display": "Access code",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "0X1E",
                            "VID": "BMBL"
                        }
                    ],
                    "module": "bambulab_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "X1E (Experimental)",
            "vendor": "Bambu Lab"
        },
        "vids_pids": [
            [
                "BMBL",
                "0X1E"
            ]
        ]
    },
    {
        "alias": "FL_FORM1PLUS",
        "extruder_count": 1,
        "name": "Formlabs Form 1+",
        "sender": "formlabs_preform_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FRM1P",
                            "VID": "FORM"
                        }
                    ],
                    "module": "formlabs_preform_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Form 1+",
            "vendor": "Formlabs"
        },
        "vids_pids": [
            [
                "FORM",
                "FRM1P"
            ]
        ]
    },
    {
        "alias": "MB5thMiniPlus",
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "MakerBot 5th Mini+",
        "network_detect": {
            "IP_field": "ip",
            "PID_field": "pid",
            "SNR_field": "iserial",
            "VID_field": "vid",
            "broadcast_port": 12309,
            "json_message": true,
            "json_response": true,
            "listen_port": 12308,
            "message": {
                "command": "broadcast"
            },
            "scanner": "broadcast",
            "target_port": 12307
        },
        "operational_timeout": 60,
        "sender": "birdwing_sender",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "MINP",
                            "VID": "23C1"
                        }
                    ],
                    "module": "birdwing_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "5th Mini+",
            "vendor": "MakerBot"
        },
        "vids_pids": [
            [
                "23C1",
                "MINP"
            ]
        ]
    },
    {
        "alias": "RR2_USB",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Robo3D R2 (USB)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0010",
                            "VID": "2341"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "R2 (USB)",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "2341",
                "0010"
            ]
        ]
    },
    {
        "alias": "C_CR10S5",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality CR-10 S5",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "CR-10 S5",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "C_CR10S4",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality CR-10 S4",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "CR-10 S4",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "FF_A3",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "FlashForge Adventurer 3",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "FFA3",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Adventurer 3",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "FFA3"
            ]
        ]
    },
    {
        "alias": "SW1",
        "allow_comments": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Sindoh 3DWOX 1",
        "sender": "sindoh_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "0SW1",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "sindoh_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "3DWOX 1",
            "vendor": "Sindoh"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0SW1"
            ]
        ]
    },
    {
        "alias": "US3",
        "allow_comments": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Ultimaker S3",
        "sender": "u3_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By installing 3DPrinterOS into a printer",
                    "hostless_printing": true,
                    "id": "sh",
                    "ids": [
                        {
                            "PID": "0US3",
                            "VID": "ZZZZ"
                        }
                    ],
                    "install_": "Oneliner script",
                    "module": "u3_sender",
                    "tooltip": "Follow to this page and run a script from there on your printer using ssh. 3DPrinterOS would work side by side with existing printer firmware",
                    "type": "IN_PRINTER"
                }
            ],
            "model": "S3",
            "vendor": "Ultimaker"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "0US3"
            ]
        ]
    },
    {
        "alias": "RE3P",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "file_endpoint_out": "0x4",
        "min_coords_corner": "RF",
        "name": "Robo3D E3 Pro",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "RE3P",
                            "VID": "ZZZZ"
                        },
                        {
                            "PID": "00E4",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "E3 Pro",
            "vendor": "Robo3D"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "RE3P"
            ],
            [
                "2B71",
                "00E4"
            ]
        ]
    },
    {
        "alias": "MGEARM2DUAL",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M104 T0 S0",
            "M104 T1 S0",
            "T0",
            "M104 S0",
            "T1",
            "M104 S0",
            "T0",
            "M140 S0",
            "M106 S0",
            "G28 X0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Makergear M2 Dual",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "M2 Dual",
            "vendor": "Makergear"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "ANYCUBIC_CHIRON",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M106 S0",
            "M140 S0",
            "M84",
            "M107",
            "G91",
            "G1 E-5 F300",
            "G1 Z+0.5 F300",
            "G90",
            "G28 X0 Y0",
            "G1 Y400 F2000",
            "M84",
            "M300 P300 S4000"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anycubic Chiron",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "EA60",
                            "VID": "10C4"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Chiron",
            "vendor": "Anycubic"
        },
        "vids_pids": [
            [
                "10C4",
                "EA60"
            ]
        ]
    },
    {
        "alias": "HG3",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules G3",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHG3",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G3",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHG3"
            ]
        ]
    },
    {
        "alias": "HG3D",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Hercules G3 Duo",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "HG3D",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G3 Duo",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "HG3D"
            ]
        ]
    },
    {
        "alias": "C_ENDER3_S1",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality Ender-3 S1",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ender-3 S1",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "C_CR6SE",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality CR-6 SE",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "CR-6 SE",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "HG6D",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "Hercules G6 Duo",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "HG6D",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G6 Duo",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "HG6D"
            ]
        ]
    },
    {
        "alias": "HP_F540",
        "end_gcodes": [],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "HP 540",
        "network_detect": {
            "scanner": "hp_gatewayapi"
        },
        "operational_timeout": 8,
        "sender": "hp_gatewayapi_sender",
        "v2": {
            "model": "540",
            "vendor": "HP"
        },
        "vids_pids": [
            [
                "HPHP",
                "F540"
            ]
        ]
    },
    {
        "alias": "C_ENDER5PL",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality Ender-5 Plus",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "KLPR",
                            "VID": "KLPR"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ender-5 Plus",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "KLPR",
                "KLPR"
            ]
        ]
    },
    {
        "alias": "C_ENDER5",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality Ender-5 (Pro)",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ender-5 (Pro)",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "HG9",
        "allow_comments": true,
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Hercules G9",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "IHG9",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "G9",
            "vendor": "Hercules"
        },
        "vids_pids": [
            [
                "OCTO",
                "IHG9"
            ]
        ]
    },
    {
        "alias": "LULZTAZ_SK747",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LN",
        "name": "LulzBot TAZ SideKick 747",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "TAZ SideKick 747",
            "vendor": "LulzBot"
        },
        "vids_pids": [
            [
                "27B1",
                "0001"
            ]
        ]
    },
    {
        "alias": "FF_G3P",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "name": "FlashForge Guider 3 Plus",
        "offset_toolpath": true,
        "sender": "ffd_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "FG3P",
                            "VID": "ZZZZ"
                        }
                    ],
                    "module": "ffd_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Guider 3 Plus",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "ZZZZ",
                "FG3P"
            ]
        ]
    },
    {
        "alias": "ANYCUBIC_I3MEGA",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "M84",
            "M107",
            "G91",
            "G1 E-1 F300",
            "G1 Z+0.5 E-5 ;X-20 Y-20 F300",
            "G28 X0 Y0",
            "G1 Y180 F2000",
            "M84",
            "G90",
            "M300 P300 S4000"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anycubic i3 Mega",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "EA60",
                            "VID": "10C4"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "i3 Mega",
            "vendor": "Anycubic"
        },
        "vids_pids": [
            [
                "10C4",
                "EA60"
            ]
        ]
    },
    {
        "alias": "C_CR10M",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality CR-10 Max",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "CR-10 Max",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "C_ENDER3M",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality Ender-3 Max",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ender-3 Max",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "MAKEIT_PM",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "MAKEiT PRO-M - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "PRO-M - Experimental",
            "vendor": "MAKEiT"
        },
        "vids_pids": [
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "DREMEL3D1000",
        "crazy_serial_number": true,
        "end_gcodes": [
            "M107",
            "M104 S0 T0",
            "G28 X0 Y0",
            "M132 X Y Z A",
            "G91",
            "M18"
        ],
        "extruder_count": 2,
        "min_coords_corner": "RF",
        "name": "Dremel 3D1000",
        "offset_toolpath": true,
        "sender": "dremel_sender",
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "1000",
                            "VID": "DRML"
                        }
                    ],
                    "module": "dremel_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "3D1000",
            "vendor": "Dremel"
        },
        "vids_pids": [
            [
                "DRML",
                "1000"
            ]
        ]
    },
    {
        "alias": "TEVO_BW",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "TEVO Black Widow - Experimental",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Black Widow - Experimental",
            "vendor": "TEVO"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ]
        ]
    },
    {
        "alias": "CISH",
        "baudrate": [
            250000
        ],
        "end_gcodes": [
            "M107",
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0 Z0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "CI SAAM HT",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "CISH",
                            "VID": "OCTO"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "SAAM HT",
            "vendor": "CI"
        },
        "vids_pids": [
            [
                "OCTO",
                "CISH"
            ]
        ]
    },
    {
        "alias": "CraftBot_FIXL",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 2,
        "min_coords_corner": "LF",
        "name": "CraftBot FLOW IDEX XL",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "FLOW IDEX XL",
            "vendor": "CraftBot"
        },
        "vids_pids": [
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "ANYCUBIC_KOBRA",
        "baudrate": [
            115200
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "M107",
            "G91",
            "G1 E-1 F300",
            "G1 Z+0.5 E-5 F300",
            "G28 X0 Y0",
            "M84",
            "G90"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Anycubic Kobra",
        "sender": "threaded_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "threaded_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Kobra",
            "vendor": "Anycubic"
        },
        "vids_pids": [
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "GIUNMOLIN",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [
            "G90",
            "G0 Z120"
        ],
        "extruder_count": 0,
        "min_coords_corner": "LF",
        "name": "GiunchiMolinari",
        "projector_resolution": [
            1444,
            2540
        ],
        "sender": "dlp_sender",
        "start_gcodes": [
            "G91",
            "G28 Z"
        ],
        "v2": {
            "connections": [
                {
                    "display_name": "By entering a PIN code",
                    "hostless_printing": true,
                    "id": "apiprinter",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "0483",
                            "VID": "16C0"
                        },
                        {
                            "PID": "0042",
                            "VID": "2341"
                        },
                        {
                            "PID": "0010",
                            "VID": "2341"
                        },
                        {
                            "PID": "204B",
                            "VID": "03EB"
                        },
                        {
                            "PID": "0001",
                            "VID": "27B1"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        },
                        {
                            "PID": "003E",
                            "VID": "2341"
                        },
                        {
                            "PID": "6015",
                            "VID": "0403"
                        }
                    ],
                    "module": "dlp_sender",
                    "name": "Pin code",
                    "tooltip": "Simply bind a printer to your 3DPrinterOS account by entering a PIN code from printer screen",
                    "type": "APIPRINTER"
                }
            ],
            "model": "GiunchiMolinari",
            "vendor": "Generic"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "16C0",
                "0483"
            ],
            [
                "2341",
                "0042"
            ],
            [
                "2341",
                "0010"
            ],
            [
                "03EB",
                "204B"
            ],
            [
                "27B1",
                "0001"
            ],
            [
                "1A86",
                "7523"
            ],
            [
                "2341",
                "003E"
            ],
            [
                "0403",
                "6015"
            ]
        ]
    },
    {
        "alias": "C_ENDER6",
        "baudrate": [
            115200,
            250000
        ],
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Creality Ender-6",
        "sender": "printrun_sender",
        "v2": {
            "connections": [
                {
                    "detector": "USBDetector",
                    "id": "serial",
                    "ids": [
                        {
                            "PID": "6001",
                            "VID": "0403"
                        },
                        {
                            "PID": "7523",
                            "VID": "1A86"
                        }
                    ],
                    "module": "printrun_sender",
                    "name": "USB connection",
                    "tooltip": "A printer is connected a host running 3DPrinterOS with USB cable",
                    "type": "USB_SERIAL"
                }
            ],
            "model": "Ender-6",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "0403",
                "6001"
            ],
            [
                "1A86",
                "7523"
            ]
        ]
    },
    {
        "alias": "VIRT_NETWORK",
        "end_gcodes": [
            "M104 S0",
            "M140 S0",
            "G28 X0 Y0",
            "M84"
        ],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "name": "Virtual network printer",
        "network_detect": {
            "required_fields": [
                "password"
            ],
            "scanner": "noscanner"
        },
        "sender": "virtual_printer",
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "NETW",
                            "VID": "VIRT"
                        }
                    ],
                    "module": "virtual_printer",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Virtual network printer",
            "vendor": "3DPrinterOS"
        },
        "vids_pids": [
            [
                "VIRT",
                "NETW"
            ]
        ]
    },
    {
        "name": "FlashForge Adventurer 3",
        "alias": "FF_A3",
        "sender": "ff_socket_sender",
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "offset_toolpath": true,
        "operational_timeout": 90,
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_print": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FFA3",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ff_socket_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Adventurer 3",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "FFA3"
            ]
        ]
    },
    {
        "name": "FlashForge Adventurer 4",
        "alias": "FF_A4",
        "sender": "ff_socket_sender",
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "offset_toolpath": true,
        "operational_timeout": 90,
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_print": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FFA4",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ff_socket_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Adventurer 4",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "FFA4"
            ]
        ]
    },
    {
        "name": "FlashForge Adventurer 5M Pro",
        "alias": "FF_A5P",
        "sender": "ff_socket_sender",
        "extruder_count": 1,
        "min_coords_corner": "RF",
        "offset_toolpath": true,
        "operational_timeout": 90,
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        }
                    ],
                    "hostless_print": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "FA5P",
                            "VID": "2B71"
                        }
                    ],
                    "module": "ff_socket_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Adventurer 5M Pro",
            "vendor": "FlashForge"
        },
        "vids_pids": [
            [
                "2B71",
                "FA5P"
            ]
        ]
    },
    {
        "alias": "RAISE3D_PRO2",
        "min_coords_corner": "LF",
        "name": "Raise3D Pro 2",
        "extruder_count": 2,
        "network_detect": {
            "required_fields": [
                "password",
                "ssh_password"
            ],
            "scanner": "noscanner"
        },
        "operational_timeout": 30,
        "sender": "raise3d_sender",
        "timeout": 6,
        "vids_pids": [
            [
                "RA3D",
                "PRO2"
            ]
        ],
        "x": "305",
        "y": "305",
        "z": "300",
        "self_printing": true,
        "v2": {
            "connections": [
                {
                    "auth_fields": [
                        {
                            "display": "IP",
                            "id": "IP"
                        },
                        {
                            "display": "Password",
                            "id": "password"
                        },
                        {
                            "display": "SSH password",
                            "id": "ssh_password"
                        }
                    ],
                    "hostless_printing": true,
                    "id": "lan",
                    "ids": [
                        {
                            "PID": "PRO2",
                            "VID": "RA3D"
                        }
                    ],
                    "module": "raise3d_sender",
                    "name": "Network",
                    "tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
                    "type": "LAN"
                }
            ],
            "model": "Pro 2",
            "vendor": "Raise 3D"
        }
    },
    {
        "name": "Creality Ender-3 V3 KE (Moonraker)",
        "alias": "C_ENDER3_V3_KE",
        "sender": "moonraker_sender",
        "baudrate": [
            250000,
            115200
        ],
        "end_gcodes": [],
        "extruder_count": 1,
        "min_coords_corner": "LF",
        "operational_timeout": 6,
        "network_detect": {
            "scanner": "noscanner"
        },
        "v2": {
            "model": "Ender-3 V3 KE (Moonraker)",
            "vendor": "Creality"
        },
        "vids_pids": [
            [
                "MNRK",
                "GENE"
            ]
        ],
        "x": "220",
        "y": "220",
        "z": "240",
        "filament_diameter": "1.75"
    },
    {
    "name": "Generic OctoPrint",
    "alias": "OCTOPRINT",
    "sender": "octoprint_sender",
    "extruder_count": 1,
    "min_coords_corner": "LF",
    "v2": {
        "connections": [
            {
                "display_name": "By entering a PIN code",
                "hostless_print": true,
                "id": "apiprinter",
                "ids": [
                    {
                        "PID": "OCTO",
                        "VID": "OCTO"
                    }
                ],
                "module": "octoprint_sender",
                "name": "Token",
                "tooltip": "Bind a printer to your 3DPrinterOS account by entering a token from printer screen",
                "type": "APIPRINTER"
            }
        ],
        "model": "OctoPrint",
        "vendor": "Generic"
    },
    "vids_pids": [
        [
            "OCTO",
            "OCTO"
        ]
    ]
    },
    {
	"name": "Bambu Lab H2D",
	"alias": "BAMBU_H2D",
	"sender": "bambulab_sender",
	"camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
	"extruder_count": 2,
	"min_coords_corner": "LF",
	"network_detect": {
		"required_fields": [
			"forced_SNR",
			"password"
		],
		"scanner": "bambulab_scanner",
		"machine_type_id": "O1D"
	},
	"self_printing": true,
	"v2": {
		"connections": [
			{
				"auth_fields": [
					{
						"display": "IP",
						"id": "IP"
					},
					{
						"display": "Serial number",
						"id": "serial_number"
					},
					{
						"display": "Access code",
						"id": "password"
					}
				],
				"hostless_print": true,
				"id": "lan",
				"ids": [
					{
						"PID": "0H2D",
						"VID": "BMBL"
					}
				],
				"module": "bambulab_sender",
				"name": "Network",
				"tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
				"type": "LAN"
			}
		],
		"model": "H2D (Experimental)",
		"vendor": "Bambu Lab"
	},
	"vids_pids": [
		[
			"BMBL",
			"0H2D"
		]
	],
	"x": "350",
	"y": "320",
	"z": "325",
	"filament_diameter": "1.75",
	"keep_warm_gcode": "",
	"gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
	"name": "Bambu Lab H2S",
	"alias": "BAMBU_H2S",
	"sender": "bambulab_sender",
	"camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
	"extruder_count": 1,
	"min_coords_corner": "LF",
	"network_detect": {
		"required_fields": [
			"forced_SNR",
			"password"
		],
		"scanner": "bambulab_scanner",
		"machine_type_id": "O1S"
	},
	"self_printing": true,
	"v2": {
		"connections": [
			{
				"auth_fields": [
					{
						"display": "IP",
						"id": "IP"
					},
					{
						"display": "Serial number",
						"id": "serial_number"
					},
					{
						"display": "Access code",
						"id": "password"
					}
				],
				"hostless_print": true,
				"id": "lan",
				"ids": [
					{
						"PID": "0H2S",
						"VID": "BMBL"
					}
				],
				"module": "bambulab_sender",
				"name": "Network",
				"tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
				"type": "LAN"
			}
		],
		"model": "H2S",
		"vendor": "Bambu Lab"
	},
	"vids_pids": [
		[
			"BMBL",
			"0H2S"
		]
	],
	"x": "340",
	"y": "320",
	"z": "340",
	"filament_diameter": "1.75",
	"keep_warm_gcode": "",
	"gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
	"name": "Bambu Lab H2D Pro",
	"alias": "BAMBU_H2D_PRO",
	"sender": "bambulab_sender",
	"camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
	"extruder_count": 2,
	"min_coords_corner": "LF",
	"network_detect": {
		"required_fields": [
			"forced_SNR",
			"password"
		],
		"scanner": "bambulab_scanner",
		"machine_type_id": "O1E"
	},
	"self_printing": true,
	"v2": {
		"connections": [
			{
				"auth_fields": [
					{
						"display": "IP",
						"id": "IP"
					},
					{
						"display": "Serial number",
						"id": "serial_number"
					},
					{
						"display": "Access code",
						"id": "password"
					}
				],
				"hostless_print": true,
				"id": "lan",
				"ids": [
					{
						"PID": "H2DP",
						"VID": "BMBL"
					}
				],
				"module": "bambulab_sender",
				"name": "Network",
				"tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
				"type": "LAN"
			}
		],
		"model": "H2D Pro",
		"vendor": "Bambu Lab"
	},
	"vids_pids": [
		[
			"BMBL",
			"H2DP"
		]
	],
	"x": "350",
	"y": "320",
	"z": "325",
	"filament_diameter": "1.75",
	"keep_warm_gcode": "",
	"gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
	"name": "Bambu Lab P2S",
	"alias": "BAMBU_P2S",
	"sender": "bambulab_sender",
	"camera_url_template": "rtsps://%s:%s@%s:%d/streaming/live/%d",
	"extruder_count": 1,
	"min_coords_corner": "LF",
	"network_detect": {
		"required_fields": [
			"forced_SNR",
			"password"
		],
		"scanner": "bambulab_scanner",
		"machine_type_id": "N7"
	},
	"self_printing": true,
	"v2": {
		"connections": [
			{
				"auth_fields": [
					{
						"display": "IP",
						"id": "IP"
					},
					{
						"display": "Serial number",
						"id": "serial_number"
					},
					{
						"display": "Access code",
						"id": "password"
					}
				],
				"hostless_print": true,
				"id": "lan",
				"ids": [
					{
						"PID": "0P2S",
						"VID": "BMBL"
					}
				],
				"module": "bambulab_sender",
				"name": "Network",
				"tooltip": "Connect using a machine(PC, RPi, etc) running 3DPrinterOS in the same LAN",
				"type": "LAN"
			}
		],
		"model": "P2S",
		"vendor": "Bambu Lab"
	},
	"vids_pids": [
		[
			"BMBL",
			"0P2S"
		]
	],
	"x": "256",
	"y": "256",
	"z": "256",
	"filament_diameter": "1.75",
	"keep_warm_gcode": "",
	"gcodecheck_re_file": "marlin-marlin.txt"
    },
    {
	"name": "Creality K1C",
	"alias": "C_K1C",
	"sender": "moonraker_sender",
	"baudrate": [
		250000,
		115200
	],
	"end_gcodes": [],
	"extruder_count": 1,
	"min_coords_corner": "LF",
	"operational_timeout": 30,
    "timeout": 6,
	"network_detect": {
		"required_fields": [
			"username",
			"password"
		],
		"scanner": "noscanner"
	},
	"v2": {
		"connections": [
			{
				"display_name": "By entering a PIN code",
				"hostless_print": true,
				"id": "apiprinter",
				"ids": [
                    {
						"PID": "GENE",
						"VID": "MNRK"
					},
					{
						"PID": "0K1C",
						"VID": "CRLT"
					}
				],
				"module": "moonraker_sender",
				"name": "Token",
				"tooltip": "Bind a printer to your 3DPrinterOS account by entering a token from printer screen",
				"type": "APIPRINTER"
			}
		],
		"model": "K1C (Moonraker)",
		"vendor": "Creality"
	},
	"vids_pids": [
		[
			"MNRK",
			"GENE"
		],
		[
			"CRLT",
			"0K1C"
		]
	],
	"x": "220",
	"y": "220",
	"z": "250",
	"filament_diameter": "1.75",
	"keep_warm_gcode": "M104 T0 S$left_tool_temp\nM140 S$platform_temp",
	"gcodecheck_re_file": "marlin-marlin.txt"
}

]
