hedgecrw85
80cbf0362f
Remove Android-specific code and move to Posix codebase
2020-02-25 12:24:13 -06:00
hedgecrw85
4e7e2711ff
Update version to 2.6.1
2020-02-20 12:04:08 -06:00
hedgecrw85
79b29397c0
Update all native binaries
2020-02-19 12:04:27 -06:00
hedgecrw85
74bb7d7515
Update version number to v2.6.0
2020-02-19 12:04:02 -06:00
hedgecrw85
7aec1d59d7
Force interrupt event waiting thread in case it gets stuck in native/driver code during close
2020-02-19 11:48:25 -06:00
hedgecrw85
8c9e671c43
Break out of event waiting loop based on Java-side boolean value
2020-02-19 11:47:39 -06:00
hedgecrw85
5e41067f00
Remove isOpened field and detect openness based on file descriptor
2020-02-19 11:45:13 -06:00
hedgecrw85
9b77808440
Officially remove OSX 32-bit support
2020-02-19 11:43:47 -06:00
hedgecrw85
87b54778ea
Synchronize open/close/setup calls in Java to avoid race conditions
2020-02-18 16:46:06 -06:00
hedgecrw85
4bdd0bf331
Perform full port close routine upon native error
2020-02-18 16:45:10 -06:00
hedgecrw85
349f0adffb
Use flock() to ensure exclusive access instead of TIOCEXCL
2020-02-18 16:44:01 -06:00
hedgecrw85
ed126f4235
Update test cases
2020-02-18 16:42:21 -06:00
hedgecrw85
71d959c7f6
Add additional ARM version indicator for choosing correct native binary
2020-02-18 12:32:14 -06:00
hedgecrw85
c856cc1ef4
Ensure data was actually received on waitForEvent on Windows
2020-02-18 12:14:37 -06:00
hedgecrw85
cc0d0315d9
Add ability for user to specify whether RTS is high/low when sending in RS485 mode
2020-01-22 15:28:20 -06:00
hedgecrw85
0768e856ae
Use CreateProcess to directly preset DTR/RTS modes instead of calling system()
2020-01-03 13:54:21 -06:00
hedgecrw85
924bd97ad4
New SerialPortMessageListenerWithExceptions to allow users to handle event-based exceptions
2020-01-03 13:50:55 -06:00
hedgecrw85
05a84e4aff
Update copyright years
2020-01-03 13:48:58 -06:00
hedgecrw85
a730f9819c
Update version numbers
2020-01-03 12:53:09 -06:00
hedgecrw85
3da47be0f1
Update version numbers
2020-01-03 12:48:04 -06:00
hedgecrw85
155ae7940c
Ensure all data structures are properly initialized
2019-11-12 11:21:55 -06:00
hedgecrw85
f06b03f186
Properly initialize termios structure
2019-11-12 10:04:19 -06:00
hedgecrw85
65ef32f061
Check for open serial port before reading/writing
2019-11-07 18:35:21 -06:00
hedgecrw85
5c7673c875
Check for closed port before trying to read from port
2019-11-07 17:20:04 -06:00
hedgecrw85
6d8da8a9e2
Update test to include opening with no sleep timeout
2019-11-07 10:05:13 -06:00
hedgecrw85
9189732c3d
Make all config update safety sleep timeouts configurable
2019-11-04 10:49:10 -06:00
hedgecrw85
b764c88d75
Set native library file and directory permissions to be globally accessible
2019-10-29 15:31:16 -05:00
hedgecrw85
0acc234660
Increase preset RTS/DTR command buffer size
2019-10-29 11:37:51 -05:00
hedgecrw85
11864b4afe
Add presetting RTS test
2019-10-29 11:36:55 -05:00
hedgecrw85
d2243293b7
Add calls to get RTS/DTR/RI line statuses, suppress terminal output from pre-setting DTR/RTS lines, and set estimated device xmit/receive buffer sizes from runtime code
2019-10-15 14:31:48 -05:00
hedgecrw85
0f2566ce51
Update version number
2019-09-03 14:01:59 -05:00
hedgecrw85
e8074068cf
Allow waitForSerialEvent() to throw any kind of exception
2019-09-03 13:49:53 -05:00
hedgecrw85
04d1bb2ae8
Check for sun.arch.data.model property when determining architecture on armv8
2019-08-28 20:16:47 -05:00
hedgecrw85
606657e45a
Javadoc updates
2019-08-28 19:49:31 -05:00
hedgecrw85
6634692ac9
Store temporary platform binary into directory instead of root tmp
2019-08-28 19:48:37 -05:00
hedgecrw85
058a4dcc3a
Add DataListener class which can handle exceptions and reset Interrupted state on threads when that may occur
2019-07-23 10:22:39 -05:00
hedgecrw85
fbb51c858b
Check for valid file descriptor before closing and add RS485 mode
2019-07-10 11:22:03 -05:00
hedgecrw85
53449d43bc
Update version to 2.5.2
2019-05-06 10:17:20 -05:00
hedgecrw85
35abad5433
Add Android Manifest to enable building AAR
2019-04-15 15:10:19 -05:00
hedgecrw85
7fdab3aea6
Ensure we can break out of while loop waiting for full message retrieval
2019-04-15 10:54:22 -05:00
hedgecrw85
69aba390fa
Fix getDSR status call in Posix
2019-04-15 10:34:54 -05:00
hedgecrw85
4065bdd8fe
Make getCommPort() unchecked-throwable instead of returning invalid object
2019-04-15 10:10:37 -05:00
hedgecrw85
15a24d4cf6
Add ability to get library version programmatically with getVersion()
2019-03-22 10:43:48 -05:00
hedgecrw85
206d1721a9
Update build version to 2.5.1
2019-03-22 10:43:24 -05:00
hedgecrw85
a6a377a1bc
Make SerialPortMessageListener able to parse multi-byte binary delimiters
2019-03-19 12:38:36 -05:00
hedgecrw85
bebef1f45c
Update version numbers
2019-03-15 11:36:00 -05:00
hedgecrw85
6ec19f472f
Initial implementation of SerialPortMessageListener
2019-03-15 11:35:44 -05:00
hedgecrw85
051ba9f8fb
Add additional port locking for root users
2019-03-07 13:58:30 -06:00
hedgecrw85
11896f44cc
Add ability to retrieve DCD line status
2019-03-07 13:57:54 -06:00
hedgecrw85
4f4d9ebd7b
Newer Android runtimes don't include any tc* functions, use ioctl instead
2019-02-11 12:54:40 -06:00
hedgecrw85
30a464cad7
Ensure no NullPointerException is thrown when reading ldd
2019-02-11 09:53:10 -06:00
hedgecrw85
62fc0f0184
InputStream.read() throws SerialPortTimeoutException instead of silently returning same character
2019-01-10 11:39:59 -06:00
hedgecrw85
e1fda4d2f2
Update all version strings to 2.4.1
2018-12-20 12:20:50 -06:00
hedgecrw85
62f566034d
Fixed incorrect Sparc path for Solaris library
2018-12-20 10:31:09 -06:00
hedgecrw85
5a6dbfd820
Change system calls from select() to poll() to overcome max FD limit of 1024
2018-12-11 16:07:29 -06:00
Arthur Gay
9457337495
Check return value of ioctl `TIOCGSERIAL` on Linux
2018-12-07 15:51:44 +01:00
hedgecrw85
b4d3898355
Consolidate all Posix-based OSs into one platform
2018-11-13 10:08:19 -06:00
hedgecrw85
0260a0961a
Fix stty flag capitalization error
2018-11-07 13:25:41 -06:00
hedgecrw85
e81d397c8c
Enumerate Advantech Serial Port extender ports
2018-11-01 15:14:27 -05:00
hedgecrw85
7a1ee004d9
Fix calling convention of FTDI drivers on Windows
2018-10-31 13:16:36 -05:00
hedgecrw85
f86ce54cb2
Add loading of Solaris shared library
2018-10-29 10:44:04 -05:00
hedgecrw85
07f109e625
Updated build version to 2.4.0 in expectation of Solaris additions
2018-10-29 10:16:46 -05:00
hedgecrw85
522cd5525c
Add secondary lib search path for Android
2018-10-12 16:58:08 -05:00
Redirion
0578b3813b
Avoid using su on Android if not required
...
on some devices the com ports already have the required file flags, so check them first to avoid unnecessary work
2018-10-09 12:15:09 +02:00
Will Hedgecock
6ec32c65cf
Implement blocking-write mode on Linux
2018-10-08 13:34:42 -05:00
hedgecrw85
1624c1b1e8
Implement write-blocking mode across all OSs
2018-10-08 13:33:21 -05:00
hedgecrw85
a02a311823
Update Javadoc
2018-10-08 12:33:37 -05:00
Will Hedgecock
f80f8d9b29
Set xmit device buffer size
2018-10-08 12:29:39 -05:00
hedgecrw85
4ca5fb0337
Set device driver xmit buffer size
2018-10-08 12:26:16 -05:00
hedgecrw85
7412d8b9cc
Update the Javadocs
2018-10-08 09:59:37 -05:00
Will Hedgecock
71be58e99b
Updated Linux libraries for source code v2.3
2018-10-08 09:49:42 -05:00
hedgecrw85
7adf2f6a3a
Set/clear RTS/DTR prior to opening, disable port configuration, allow user to specify driver input/output queue size, remove built-in dependency on FTDI
2018-10-08 09:47:59 -05:00
hedgecrw85
e9bf1527ad
Update version strings to v2.2.3
2018-09-25 11:24:47 -05:00
hedgecrw85
ddfe80828f
Fix semi-blocking read mode problem with timeouts on Windows
2018-09-25 11:13:43 -05:00
Arthur Gay
b0e1daa46a
Add default value for system property 'os.arch_full'
2018-09-25 15:04:21 +02:00
hedgecrw85
fc68e02fb1
Update the code version number to 2.2.2
2018-09-24 10:41:48 -05:00
hedgecrw85
104c329921
Add hard-float check and allow users to specify their Linux architecture
2018-08-20 10:26:13 -05:00
hedgecrw85
c8104123ae
SerialPortTimeoutException inherits from InterruptedIOException
2018-08-20 09:45:37 -05:00
hedgecrw85
cf83167b67
Removed code versions of GLIBC features
2018-08-10 16:14:25 -05:00
hedgecrw85
7bee2e5c1f
Remove newer GLIBC features using CFLAGS instead of code
2018-08-10 16:07:47 -05:00
hedgecrw85
61612ebd02
Update the javadocs for Input/OutputStream to reflect new Exception objects
2018-08-08 14:48:59 -05:00
hedgecrw85
610ad369a1
Create SerialPort exceptions to differentiate between IO exceptions
2018-08-08 12:54:37 -05:00
hedgecrw85
3991057187
Update javadoc link URL and version number
2018-08-08 12:44:01 -05:00
hedgecrw85
76d2089756
Use absolute path to library instead of String
2018-08-08 08:47:51 -05:00
hedgecrw85
93e125104f
Update source version number to 2.1.2
2018-08-07 09:41:30 -05:00
hedgecrw85
1f6829e62d
Remove reliance on newer glibc features
2018-08-02 11:22:30 -05:00
hedgecrw85
e211b685f2
Do not print stack trace if sleep is interrupted
2018-08-02 09:38:49 -05:00
hedgecrw85
54fba1c9f4
Only send "Data Written" events if enabled by user
2018-08-01 10:25:13 -05:00
hedgecrw85
d03189929b
Reinitialize timeout struct on each use
2018-08-01 09:42:25 -05:00
hedgecrw85
e21f15f54d
Use getprop instead of parsing file for Android architecture
2018-07-31 13:33:23 -05:00
hedgecrw85
cfb3a15d65
Updated to version 2.1.0
2018-07-27 15:07:11 -05:00
hedgecrw85
b8b93d7b73
Read/write directly to buffers, and force non-blocking mode before close()
2018-07-27 15:06:32 -05:00
hedgecrw85
283784e4b9
Update to v2.1.0
2018-07-27 11:41:57 -05:00
hedgecrw85
96cff67047
Specify Javadoc HTML version and add documentation
2018-07-27 10:47:04 -05:00
hedgecrw85
96dc3705c1
Override the Object's default toString() method
2018-07-20 19:25:17 -06:00
hedgecrw85
12d9f735fe
Test for HF link loader as additional fp architecture test
2018-07-20 17:41:55 -05:00
hedgecrw85
727604b577
Fix weird BRK addition into some corrupted streams issue
2018-04-23 11:06:31 -05:00
hedgecrw85
aa312b3a75
No need for Java to load FTDI library
2018-04-03 11:57:48 -05:00
hedgecrw85
a6684950fa
Not an error if FTDI DLL already exists
2018-04-03 11:20:04 -05:00
hedgecrw85
b15e79a4d9
Make Windows delay delay-load the FTDI driver itself
2018-04-03 11:13:14 -05:00
hedgecrw85
b4d9f14b3e
Return device-reported descriptions in Linux
2018-04-02 16:43:29 -05:00
hedgecrw85
95abbc35e3
Fixed null-termination bug
2018-04-02 15:38:20 -05:00
hedgecrw85
fc3a85f377
Allow Windows lib to read FTDI string description
2018-04-02 15:23:58 -05:00
hedgecrw85
b7c1440840
Update binaries to version 2.0.0
2018-04-02 10:29:38 -05:00
hedgecrw85
74fc8e0d24
Updated Linux binaries to version 2.0.0
2018-04-02 09:49:44 -05:00
hedgecrw85
0af8de8141
Allow library to be compiled as a Java9 Module
2018-04-02 00:20:01 -05:00
hedgecrw85
c814cd7d7a
Make InputStream more closely follow Java specification
2018-04-01 21:10:21 -05:00
hedgecrw85
a66ec45ce1
Update write timeouts to match what's possible in Windows
2018-04-01 16:28:03 -05:00
hedgecrw85
85d7250e58
Update Windows binaries to version 2.0.0
2018-04-01 15:27:42 -05:00
hedgecrw85
a770935404
Make Unicode-compliant
2018-04-01 15:27:10 -05:00
hedgecrw85
8b89baf459
Set the self-reported port description field
2018-04-01 10:37:40 -05:00
hedgecrw85
1398951278
Set the self-reported port description field
2018-04-01 10:27:50 -05:00
hedgecrw85
2f06d28c8a
Add initial framework for getting self-reported device descriptions from USB devices
2018-04-01 10:14:46 -05:00
hedgecrw85
6b40f8b74d
Updated binaries with new functionality
2018-01-10 11:46:41 -06:00
hedgecrw85
fa67ffb462
Fix Android compilation warnings
2018-01-10 11:46:15 -06:00
hedgecrw85
be4eb53a26
Full support for aarch32/aarch64 and updated ARM builders
2018-01-10 10:41:34 -06:00
hedgecrw85
52a5bf497d
Updated binaries to include new functionality
2018-01-09 18:12:40 -06:00
hedgecrw85
9b4b80fa9c
Fix warnings about missing function prototypes
2018-01-09 15:48:57 -06:00
hedgecrw85
c7d6ec5c93
New binaries to include updated functionality
2018-01-09 15:48:05 -06:00
hedgecrw85
12855926d9
Add calls to fetch modem line status
2018-01-04 11:30:03 -06:00
Will Hedgecock
c75e8d731b
Merge pull request #99 from Awarepoint/master
...
Fix compiler warnings and improve documentation
2018-01-03 18:34:43 -06:00
hedgecrw85
45b426a68f
Updated licensing to dual-license LGPLv3 and Apache License v2
2018-01-03 18:27:13 -06:00
Josh Lubawy
4c7f206f93
Fix compiler warnings and improve documentation
...
* Was getting compiler warnings for void return type not matching the
expected boolean.
* Converted README and AUTHORS text files to use Markdown.
* Moved the contents of INSTALL into the README.md file.
2018-01-03 16:09:14 -08:00
hedgecrw85
0beac32ab4
Ensure that timeouts are always set last after other configuration changes
2018-01-03 15:26:23 -06:00
hedgecrw85
5d96988de3
Allow safety sleep to take effect before the su request in Android.
2018-01-03 15:01:05 -06:00
hedgecrw85
e1e4441484
Ensure that custom baud rates are properly handled depending on the capabilities of the end device.
2018-01-03 15:00:08 -06:00
hedgecrw85
14c9d4eff7
Implement model control line signaling on Linux/OSX.
2018-01-03 12:41:00 -06:00
hedgecrw85
68de6c05a7
Ensure the InputStream read() function does not return 0-length data
2018-01-03 12:00:37 -06:00
hedgecrw85
263c3b9b43
Updated version numbers and added comments.
2018-01-03 11:59:15 -06:00
Will Hedgecock
97a2996c5a
Merge pull request #86 from frhun/aarch64-linux
...
add aarch64 recognition for Linux
2018-01-03 11:24:17 -06:00
Will Hedgecock
dd6f2bd81c
Merge pull request #84 from feclare/armv8_64
...
Add armv8_64 .so
2018-01-03 11:23:52 -06:00
Will Hedgecock
c41f3f640c
Merge pull request #71 from FrozenOne/master
...
Fix reads that do not use packets getting stuck in infinite loop.
2018-01-03 11:16:33 -06:00
Will Hedgecock
6bd2a9995f
Merge pull request #69 from kevinherron/iostream
...
Improvements to SerialInputStream and SerialOutputStream
2018-01-03 10:56:40 -06:00
Will Hedgecock
03c2f40ba8
Merge pull request #64 from swilson/master
...
Fix for issue #61
2018-01-03 10:50:36 -06:00
frhun
29db419317
added aarch64 recognition for Linux
2017-10-09 20:36:08 +02:00
Federico Claramonte
75cf9a6057
Add armv8_64 .so
...
Signed-off-by: Federico Claramonte <fede.claramonte@caviumnetworks.com>
2017-09-26 10:45:27 +02:00
FrozenOne
5eb7ee925e
Fix reads that do not use packets getting stuck in infinite loop.
2017-06-12 14:23:59 +02:00
Kevin Herron
df4a8b7cb8
Block/loop until all bytes are written SerialOutputStream
...
Ensures that the write methods of SerialOutputStream fulfill their
contract by acknowledging the possibility that not all bytes could be
written in the first call to native writeBytes() and looping until all
bytes have been written.
2017-04-30 06:48:46 -07:00
Kevin Herron
6edf6f9396
Reduce byte[] allocations in SerialInputStream and SerialOutputStream
...
* use a shared, re-usable buffer for single byte reads and writes
* implement read(byte[]) directly instead of delegating to
read(byte[], int, int), which makes an unnecessary copy.
* implement write(byte[]) directly instead of delegating to
write(byte[], int, int), which makes an unnecessary copy.
* avoid a corner case unnecessary copy in write(byte[], int, int)
2017-04-30 06:47:38 -07:00
Sean Wilson
fb9dc81592
New OS X libraries
2017-02-13 21:21:19 -05:00
Sean Wilson
e61a54267f
Use the IOSSIOSPEED ioctl to set non-standard port speeds on OS X.
2017-02-13 21:20:02 -05:00
Josh Lubawy
6953a70fe8
Add support for set/clear BREAK/RTS/DTR signals in Windows.
2017-01-27 15:32:21 -08:00
hedgecrw85
46790676e6
Allow the safety sleep timer to be user-configurable when opening a port.
2016-12-05 15:24:49 -06:00
hedgecrw85
c943df001f
Ensure that port reads do not block indefinitely if a user enters an incorrect timeout value (<100) on Linux or Mac.
2016-12-05 14:51:06 -06:00
hedgecrw85
5d9b261ee4
Documentation.
2016-12-05 14:29:04 -06:00
hedgecrw85
73b0d5918c
Added bytesAwaitingWrite() method and allow enumeration of rfcomm Bluetooth ports.
2016-12-05 14:25:23 -06:00
hedgecrw85
b30504e5b2
Added "bytes awaiting write" functionality
2016-03-25 11:19:29 -05:00
hedgecrw85
3957c116fb
Removed separate function for setting flow control parameters.
2016-03-24 11:58:21 -05:00
hedgecrw85
44882a4cef
Fixed bug where calling configuration options after setting timeouts negated the timeout settings.
2016-03-23 17:11:37 -05:00
hedgecrw85
6a3cc212db
Fix bug where reconfiguring ports after setting timeouts negates the timeout settings.
2016-03-23 16:51:07 -05:00