Open Serial Port |
Opens a serial port with this name and the specified parameters.
Syntax
Open Serial Port [ Select ; Result (error) ; Port name ; Settings ;
File name ; Script name ; Resume paused script ;
No idle wait time ; Match string ]
Options
Select entire contents | replaces the entire contents of a field with the result. If not checked the result replaces the currently selected portion of the field |
Result (error) | an error code |
Port name | the name of the port to open |
Settings | (optional) specifies the setting of the port like the speed of the port, parity, etc. |
File name | (optional) the name of the FileMaker file which contains the script to trigger when data comes in |
Script name | (optional) specifies the name of the script to trigger when data comes in |
Resume paused script | when the trigger script needs to run, and an other script is already paused, the paused script will resume after the trigger script is finished |
No idle wait time | don’t add idle wait times, the triggering will be faster, but the plug-in will need more computer time |
Match string | (optional) a string that must be matched before the script is triggered |
Returned Result
Data type returned
Error code
Result
Returned result is an error code. Returned error codes can be:
0 | no error | the port was opened |
$$-50 | paramErr | there was an error with the parameter |
$$-108 | memFullErr | ran out of memory |
$$-97 | portInUse | could not open port, the port is in use |
$$-4210 | portDoesNotExistErr | port with this name is not available on this computer |
$$-4211 | allPortsNullErr | no serial ports are available on this computer |
Other errors may be returned.
Originated in
Troi Serial Plug-in 5.0
Compatibility
FileMaker Pro 16 to FileMaker Pro 2023
Considerations
If you specify a filename and scriptname any scripts specified with the function “Serial_SetDispatchScript” will be ignored for this port.
If you specify a filename you must also provide a script name.
Version 6.0 added the (optional) Match string parameter, you can now specify directly when opening a port the string for which the plug-ins waits before triggering a script.
Example
Open Serial Port [ Select ; $ErrorCode ; "COM2" ;
"baud=19200 parity=none data=8 stop=10 " &
"flowControl=DTRDSR flowControl=RTSCTS" ;
"" ; "" ]
will open the COM2 port with a speed of 19200 baud and the specified options.
Example 2
Set Variable [ $Settings ; gSpeed & " " & gStopBits & " " & gDataBits & " " &
gParity & " " & gFlowControl ]
Open Serial Port [ Select ; $ErrorCode ;
gPortName1 ;
$Settings
Get ( FileName );
"Process Data Received for 1st Port" ]
Set Field [ gErrorCode ; $ErrorCode // also save into a field ]
This will open the port in field gPortName1 with the specified speed and other options. When data comes in the script “Process Data Received for 1st Port” in the current filename will be triggered. An error code is set in the $ErrorCode variable and also saved into a global field.
Used in example file
SimpleSerial-Steps.fmp12
Related script steps
Close Serial Port |
Set Serial Direct Insert |
Set Serial Trigger Script |
Related functions
Serial_Close |
Serial_Open |
Serial_Reinitialize |
Related topics
Troi Serial Plug-in online help (overview)