//
//  Licensed to the Apache Software Foundation (ASF) under one or more
//  contributor license agreements.  See the NOTICE file distributed with
//  this work for additional information regarding copyright ownership.
//  The ASF licenses this file to You under the Apache License, Version 2.0
//  (the "License"); you may not use this file except in compliance with
//  the License.  You may obtain a copy of the License at
//
//      https://www.apache.org/licenses/LICENSE-2.0
//
//  Unless required by applicable law or agreed to in writing, software
//  distributed under the License is distributed on an "AS IS" BASIS,
//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//  See the License for the specific language governing permissions and
//  limitations under the License.
//
:imagesdir: ../../images/users/protocols
:icons: font

= Logix



== Connection String Options

include::partial$logix.adoc[]

== Individual Resource Address Format

=== Connection String

Logix has the following connection string format:-
----
logix:tcp://{ip-address}:{port}?{options}
----
An example connection string would look like:-
----
logix:tcp://127.0.0.1:502?communicationPath=[1,1]
----
Note the port and option fields are optional.


=== General Format

In general all Logix addresses have this format:

----
{address}:{data-type}[{array-size}]
----

If the array-size part is omitted, the size-default of `1` is assumed.
If the data-type part is omitted, the data type from the controller is used
The address format matches that found in the controller.

=== Data Types

The following data types are supported

- BOOL (boolean)
- SINT (int 8)
- USINT (uint 8)
- BYTE (uint 8)
- INT (int 16)
- UINT (uint 16)
- WORD (uint 16)
- DINT (int 32)
- UDINT (uint 32)
- DWORD (uint 32)
- LINT (int 64)
- REAL (float)