# Hamilton Syringe Pump ML600 Hamilton ML600 pumps connected via serial (RS-232) cables are supported in flowchem via the `ML600` device type. As for all `flowchem` devices, the virtual instrument can be instantiated via a configuration file that generates an openAPI endpoint. For a standard (single syringe) pump model, two components will be available: one pump and one valve. Pumps with multiple syringes are not currently supported. ## Configuration Configuration sample showing all possible parameters: ```toml [device.my-ml600-pump] # This is the pump identifier type = "ML600" port = "COM1" # This will be /dev/tty* under linux/MacOS address= 1 # If multiple devices are daisy chained, number in the chain 1=first... syringe_volume = "1 ml" # Volume of the syringe used, either a Quantity or number in ml. If the wrong syringe volume # is set, the flow rate will be wrong. ``` ```{note} Serial connection parameters Note, further parameters for the serial connections (i.e. those accepted by `serial.Serial`) such as `baudrate`, `parity`, `stopbits` and `bytesize` can be specified. However, it should not be necessary as the following values (which are the default for the instrument) are automatically used: * baudrate 9600 * parity even * stopbits 1 * bytesize 7 ``` ```{note} Support for Custom ML600 Configurations The ML600 device supports custom configurations for pump and valve connections. ``` Since the ML600 hardware allows for customizable valve setups, `FlowChem` supports this flexibility to ensure accurate device configuration and operation. This is particularly important for identifying which valve is connected to which pump. ## Custom device You can specify the desired valve class(es) directly in the device configuration block using the following options: ### Dual-Syringe Setup For devices with two syringe pumps, you can independently assign valve classes to each side: ```toml left_valve = "ML600LeftValve" # Options: "ML600LeftValve" or "ML600RightValve" right_valve = "ML600RightValve" # Options: "ML600LeftValve" or "ML600RightValve" ``` ### Single-Syringe Setup For devices with a single syringe pump, specify only one valve class: ```toml left_valve = "ML600LeftValve" # Options: "ML600LeftValve" or "ML600RightValve" ``` It is worth noting that, as a standard setting, the single-syringe pump is equipped with a left valve. ## API methods See the [device API reference](../../api/ml600/api.md) for a description of the available methods. ## Device detection Lab PCs often have several devices connected via serial ports. ML600 pumps can be auto-detected via the `flowchem-autodiscover` command-line utility. After having installed flowchem, run `flowchem-autodiscover` to create a configuration stub with all the devices that can be auto-detected on your PC. ## Further information For further information about connection of the pump to the controlling PC, daisy-chaining via RJ-12 cables etc. please refer to the [manufacturer manual](ml600.pdf).