JSerialComm is a Java library designed to provide a platform-independent way to access standard serial ports without requiring external libraries, native code, or any other tools. It is meant as an alternative to RxTx and the (deprecated) Java Communications API, with increased ease-of-use, an enhanced support for timeouts, and the ability to open multiple ports simultaneously.
SerialPundit : Serial port communication and much more...
SerialPundit is a Software Developer Kit (SDK) for serial port and HID communication. It has been ported to Linux, MAC, Windows and embedded SE Linux platforms for both 64/32 bit architectures.
Java Serial Port Read Example
It is powerfully configurable for both poll and event driven application designs be it low volume low frequency data or high volume high frequency data.
It eliminates the complexities of serial port programming for different operating systems, allowing engineers to concentrate on their application logic, facilitating faster engineering and development, reducing development cost and time to market.
It is consistent, portable, efficient, testable, reliable, extensible and modifiable.
USB module features
Com port module features
HID module features
The project is :
Drivers and Services
Getting started
The folder prebuilt-release in this repository contains ready-to-use jar file (sp-tty.jar) that can be imported in any project and referenced right away. Simply add sp-tty.jar in your project as an external library.
To add a jar in Eclipse, right-click on the Project → Build Path → Configure Build Path. Under Libraries tab, click Add Jars or Add External JARs and give the sp-core.jar and sp-tty.jar.
Resources
Help the project grow
Author, License and Copyright
javax.comm
|
Field Summary | |
static int |
DATABITS_5 5 data bit format. |
static int |
DATABITS_6 6 data bit format. |
static int |
DATABITS_7 7 data bit format. |
static int |
DATABITS_8 8 data bit format. |
static int |
FLOWCONTROL_NONE Flow control off. |
static int |
FLOWCONTROL_RTSCTS_IN RTS/CTS flow control on input. |
static int |
FLOWCONTROL_RTSCTS_OUT RTS/CTS flow control on output. |
static int |
FLOWCONTROL_XONXOFF_IN XON/XOFF flow control on input. |
static int |
FLOWCONTROL_XONXOFF_OUT XON/XOFF flow control on output. |
static int |
PARITY_EVEN EVEN parity scheme. |
static int |
PARITY_MARK MARK parity scheme. |
static int |
PARITY_NONE No parity bit. |
static int |
PARITY_ODD ODD parity scheme. |
static int |
PARITY_SPACE SPACE parity scheme. |
static int |
STOPBITS_1 Number of STOP bits - 1. |
static int |
STOPBITS_1_5 Number of STOP bits - 1-1/2. |
static int |
STOPBITS_2 Number of STOP bits - 2. |
Fields inherited from class javax.comm.CommPort |
name |
Constructor Summary | |
SerialPort() |
Method Summary | |
abstract void |
addEventListener(SerialPortEventListener lsnr) Registers a SerialPortEventListener object to listen for SerialEvent s. |
abstract int |
getBaudRate() Gets the currently configured baud rate. |
abstract int |
getDataBits() Gets the currently configured number of data bits. |
abstract int |
getFlowControlMode() Gets the currently configured flow control mode. |
abstract int |
getParity() Get the currently configured parity setting. |
abstract int |
getStopBits() Gets the currently defined stop bits. |
abstract boolean |
isCD() Gets the state of the CD (Carrier Detect) bit in the UART, if supported by the underlying implementation. |
abstract boolean |
isCTS() Gets the state of the CTS (Clear To Send) bit in the UART, if supported by the underlying implementation. |
abstract boolean |
isDSR() Gets the state of the DSR (Data Set Ready) bit in the UART, if supported by the underlying implementation. |
abstract boolean |
isDTR() Gets the state of the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation. |
abstract boolean |
isRI() Gets the state of the RI (Ring Indicator) bit in the UART, if supported by the underlying implementation. |
abstract boolean |
isRTS() Gets the state of the RTS (Request To Send) bit in the UART, if supported by the underlying implementation. |
abstract void |
notifyOnBreakInterrupt(boolean enable) Expresses interest in receiving notification when there is a break interrupt on the line. |
abstract void |
notifyOnCarrierDetect(boolean enable) Expresses interest in receiving notification when the CD (Carrier Detect) bit changes. |
abstract void |
notifyOnCTS(boolean enable) Expresses interest in receiving notification when the CTS (Clear To Send) bit changes. |
abstract void |
notifyOnDataAvailable(boolean enable) Expresses interest in receiving notification when input data is available. |
abstract void |
notifyOnDSR(boolean enable) Expresses interest in receiving notification when the DSR (Data Set Ready) bit changes. |
abstract void |
notifyOnFramingError(boolean enable) Expresses interest in receiving notification when there is a framing error. |
abstract void |
notifyOnOutputEmpty(boolean enable) Expresses interest in receiving notification when the output buffer is empty. |
abstract void |
notifyOnOverrunError(boolean enable) Expresses interest in receiving notification when there is an overrun error. |
abstract void |
notifyOnParityError(boolean enable) Expresses interest in receiving notification when there is a parity error. |
abstract void |
notifyOnRingIndicator(boolean enable) Expresses interest in receiving notification when the RI (Ring Indicator) bit changes. |
abstract void |
removeEventListener() Deregisters event listener registered using addEventListener . |
abstract void |
sendBreak(int millis) Sends a break of millis milliseconds duration. |
abstract void |
setDTR(boolean dtr) Sets or clears the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation. |
abstract void |
setFlowControlMode(int flowcontrol) Sets the flow control mode. |
void |
setRcvFifoTrigger(int trigger) Deprecated.This was advisory only. |
abstract void |
setRTS(boolean rts) Sets or clears the RTS (Request To Send) bit in the UART, if supported by the underlying implementation. |
abstract void |
setSerialPortParams(int baudrate, int dataBits, int stopBits, int parity) Sets serial port parameters. |
Methods inherited from class javax.comm.CommPort |
close, disableReceiveFraming, disableReceiveThreshold, disableReceiveTimeout, enableReceiveFraming, enableReceiveThreshold, enableReceiveTimeout, getInputBufferSize, getInputStream, getName, getOutputBufferSize, getOutputStream, getReceiveFramingByte, getReceiveThreshold, getReceiveTimeout, isReceiveFramingEnabled, isReceiveThresholdEnabled, isReceiveTimeoutEnabled, setInputBufferSize, setOutputBufferSize, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
DATABITS_5
-
5 data bit format.
- See Also:
- Constant Field Values
DATABITS_6
-
6 data bit format.
- See Also:
- Constant Field Values
DATABITS_7
-
7 data bit format.
- See Also:
- Constant Field Values
DATABITS_8
-
8 data bit format.
- See Also:
- Constant Field Values
STOPBITS_1
-
Number of STOP bits - 1.
- See Also:
- Constant Field Values
STOPBITS_2
-
Number of STOP bits - 2.
- See Also:
- Constant Field Values
STOPBITS_1_5
-
Number of STOP bits - 1-1/2. Some UARTs permit 1-1/2 STOP bits only with 5 data bit format, but permit 1 or 2 STOP bits with any format.
- See Also:
- Constant Field Values
PARITY_NONE
-
No parity bit.
- See Also:
- Constant Field Values
PARITY_ODD
-
ODD parity scheme. The parity bit is added so there are an odd number of TRUE bits.
- See Also:
- Constant Field Values
PARITY_EVEN
-
EVEN parity scheme. The parity bit is added so there are an even number of TRUE bits.
- See Also:
- Constant Field Values
PARITY_MARK
-
MARK parity scheme.
- See Also:
- Constant Field Values
PARITY_SPACE
-
SPACE parity scheme.
- See Also:
- Constant Field Values
FLOWCONTROL_NONE
-
Flow control off.
- See Also:
- Constant Field Values
FLOWCONTROL_RTSCTS_IN
-
RTS/CTS flow control on input.
- See Also:
- Constant Field Values
FLOWCONTROL_RTSCTS_OUT
-
RTS/CTS flow control on output.
- See Also:
- Constant Field Values
FLOWCONTROL_XONXOFF_IN
-
XON/XOFF flow control on input.
- See Also:
- Constant Field Values
FLOWCONTROL_XONXOFF_OUT
-
XON/XOFF flow control on output.
- See Also:
- Constant Field Values
Constructor Detail |
SerialPort
Method Detail |
getBaudRate
- Gets the currently configured baud rate.
-
- Returns:
- integer value indicating the baud rate
getDataBits
- Gets the currently configured number of data bits.
-
- Returns:
- integer that can be equal to DATABITS_5, DATABITS_6, DATABITS_7, or DATABITS_8
getStopBits
- Gets the currently defined stop bits.
-
- Returns:
- integer that can be equal to STOPBITS_1, STOPBITS_2, or STOPBITS_1_5
getParity
- Get the currently configured parity setting.
-
- Returns:
- integer that can be equal to PARITY_NONE, PARITY_ODD, PARITY_EVEN, PARITY_MARK or PARITY_SPACE.
sendBreak
- Sends a break of
millis
milliseconds duration. Note that it may not be possible to time the duration of the break under certain Operating Systems. Hence this parameter is advisory. -
- Parameters:
millis
- duration of break to send
setFlowControlMode
- Sets the flow control mode.
- Parameters:
-
flowcontrol
- Can be a bitmask combination of- FLOWCONTROL_NONE: no flow control
- FLOWCONTROL_RTSCTS_IN: RTS/CTS (hardware) flow control for input
- FLOWCONTROL_RTSCTS_OUT: RTS/CTS (hardware) flow control for output
- FLOWCONTROL_XONXOFF_IN: XON/XOFF (software) flow control for input
- FLOWCONTROL_XONXOFF_OUT: XON/XOFF (software) flow control for output
- Throws:
UnsupportedCommOperationException
- if any of the flow control mode was not supported by the underline OS, or if input and output flow control are set to different values, i.e. one hardware and one software. The flow control mode will revert to the value before the call was made.
getFlowControlMode
- Gets the currently configured flow control mode.
-
- Returns:
- an integer bitmask of the modes FLOWCONTROL_NONE, FLOWCONTROL_RTSCTS_IN, FLOWCONTROL_RTSCTS_OUT, FLOWCONTROL_XONXOFF_IN, and FLOWCONTROL_XONXOFF_OUT.
setRcvFifoTrigger
- Deprecated.This was advisory only.
- Set the Receive Fifo trigger level If the uart has a FIFO and if it can have programmable trigger levels, then this method will cause the uart to raise an interrupt after trigger bytes have been received.
-
- Parameters:
trigger
- level
setSerialPortParams
- Sets serial port parameters.
- Parameters:
baudrate
- If the baudrate passed in by the application is unsupported by the driver, the driver will throw an UnsupportedCommOperationException-
dataBits
-- DATABITS_5: 5 bits
- DATABITS_6: 6 bits
- DATABITS_7: 7 bits
- DATABITS_8: 8 bits
stopBits
-- STOPBITS_1: 1 stop bit
- STOPBITS_2: 2 stop bits
- STOPBITS_1_5: 1.5 stop bits
parity
-- PARITY_NONE: no parity
- PARITY_ODD: odd parity
- PARITY_EVEN: even parity
- PARITY_MARK: mark parity
- PARITY_SPACE: space parity
- Throws:
-
UnsupportedCommOperationException
- if any of the above parameters are specified incorrectly. All four of the parameters will revert to the values before the call was made.DEFAULT: 9600 baud, 8 data bits, 1 stop bit, no paritysetDTR
- Sets or clears the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation.
- Parameters:
-
dtr
-- true: set DTR
- false: clear DTR
isDTR
- Gets the state of the DTR (Data Terminal Ready) bit in the UART, if supported by the underlying implementation.
setRTS
- Sets or clears the RTS (Request To Send) bit in the UART, if supported by the underlying implementation.
- Parameters:
-
rts
-- true: set RTS
- false: clear RTS
isRTS
- Gets the state of the RTS (Request To Send) bit in the UART, if supported by the underlying implementation.
isCTS
- Gets the state of the CTS (Clear To Send) bit in the UART, if supported by the underlying implementation.
isDSR
- Gets the state of the DSR (Data Set Ready) bit in the UART, if supported by the underlying implementation.
isRI
- Gets the state of the RI (Ring Indicator) bit in the UART, if supported by the underlying implementation.
isCD
- Gets the state of the CD (Carrier Detect) bit in the UART, if supported by the underlying implementation.
addEventListener
Registers aSerialPortEventListener
object to listen forSerialEvent
s. Interest in specific events may be expressed using thenotifyOnXXX
calls. TheserialEvent
method ofSerialPortEventListener
will be called with aSerialEvent
object describing the event.The current implementation only allows one listener perSerialPort
. Once a listener is registered, subsequent call attempts toaddEventListener
will throw a TooManyListenersException without effecting the listener already registered.All the events received by this listener are generated by one dedicated thread that belongs to the SerialPort object. After the port is closed, no more event will be generated. Another call toopen()
of the port'sCommPortIdentifier
object will return a newCommPort
object, and the lsnr has to be added again to the newCommPort
object to receive event from this port. -
- Parameters:
lsnr
- TheSerialPortEventListener
object whoseserialEvent
method will be called with aSerialEvent
describing the event.- Throws:
java.util.TooManyListenersException
- If an initial attempt to attach a listener succeeds, subsequent attempts will throw TooManyListenersException without effecting the first listener.
-
removeEventListener
Deregisters event listener registered usingaddEventListener
.This is done automatically at port close.notifyOnDataAvailable
Expresses interest in receiving notification when input data is available. This may be used to drive asynchronous input. When data is available in the input buffer, this event is propagated to the listener registered usingaddEventListener
.The event will be generated once when new data arrive at the serial port. Even if the user doesn't read the data, it won't be generated again until next time new data arrive. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnOutputEmpty
Expresses interest in receiving notification when the output buffer is empty. This may be used to drive asynchronous output. When the output buffer becomes empty, this event is propagated to the listener registered usingaddEventListener
. The event will be generated after a write is completed, when the system buffer becomes empty again.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnCTS
Expresses interest in receiving notification when the CTS (Clear To Send) bit changes.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- >
notifyOnDSR
Expresses interest in receiving notification when the DSR (Data Set Ready) bit changes.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnRingIndicator
Expresses interest in receiving notification when the RI (Ring Indicator) bit changes.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnCarrierDetect
Expresses interest in receiving notification when the CD (Carrier Detect) bit changes.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnOverrunError
Expresses interest in receiving notification when there is an overrun error.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnParityError
Expresses interest in receiving notification when there is a parity error.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnFramingError
Java Read Serial Port
Expresses interest in receiving notification when there is a framing error.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
notifyOnBreakInterrupt
Expresses interest in receiving notification when there is a break interrupt on the line.This notification is hardware dependent and may not be supported by all implementations. - Parameters:
-
enable
-- true: enable notification
- false: disable notification
Java Serial Port Api Download
Package Class Tree Deprecated Index Help FRAMESNO FRAMESAll Classes SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD Android Java Serial Port Example
Comments are closed.
Author
Write something about yourself. No need to be fancy, just an overview.