Commit Graph

345 Commits

Author SHA1 Message Date
Will Hedgecock 3aa348378f Update all native libraries 2021-10-25 11:22:24 -05:00
Will Hedgecock 5ef0d56559 Fix MacOS compilation using new Apple compilers 2021-10-25 11:22:04 -05:00
Will Hedgecock 3de973bbb0 Fix ARM64 compiler command 2021-10-22 16:14:34 -05:00
Will Hedgecock 260fff8a3a Update version numbers 2021-10-22 14:37:15 -05:00
Will Hedgecock ed2efc0b76
Merge pull request #369 from javmarina/latency-timer
Reduce latency timer in FTDI devices
2021-10-22 13:04:58 -05:00
Will Hedgecock 2f70a93a27 Add remaining RS-485 configuration parameters (PR #357) 2021-10-22 12:50:08 -05:00
Will Hedgecock c1684de18e
Merge pull request #353 from chargeITmobility/fix-rs485-delays
Fix RS-485 delays passed to ioctl
2021-10-22 12:30:03 -05:00
Will Hedgecock e4b34d51d9 Update AppID documentation 2021-10-22 12:25:59 -05:00
Will Hedgecock 956364b449
Merge pull request #352 from yigitpirildak/separate_tmpdir_across_applications
Separate tmpdir across applications
2021-10-22 12:18:57 -05:00
Will Hedgecock f0ff8c39cc Add option to disable exclusive lock 2021-10-22 12:13:26 -05:00
Javi Marina 996201fe7a
Reduce latency timer in FTDI devices 2021-10-14 17:11:39 +02:00
Christian Meusel 2092ca0c0b Fix RS-485 delays passed to ioctl
The kernel wants to have them in milliseconds where
SerialPort.setRs485ModeParameters uses microseconds.
2021-06-23 16:55:56 +02:00
Eclipse 55ede252d6 Check fazecast.jSerialComm.appid property and use it to create an app-specific tmpdir folder so that multiple applications running jSerialComm simultaneously don't cause problems with each other 2021-06-19 02:18:44 +03:00
Will Hedgecock 374323cd6e Update tools for ARM and PowerPC building 2021-04-14 16:32:20 -05:00
Will Hedgecock b467a52b11 Update version number to 2.7.0 2021-04-14 11:38:58 -05:00
Will Hedgecock 4864aebfb1 Add PowerPC binary 2021-04-14 11:36:29 -05:00
Will Hedgecock cb1c628bf1 Allow for building on a PowerPC 2021-04-14 11:33:25 -05:00
Will Hedgecock 3896f2d414
Merge pull request #343 from nuntipat/apple-silicon
Add native support for Apple Silicon
2021-04-14 11:17:08 -05:00
hedgecrw85 1f8efa6e64 Switch order of name mangling for port path detection 2021-04-14 09:16:26 -05:00
hedgecrw85 53d3fae865 Allow for read timeout exceptions to be suppressed within InputStream 2021-04-14 09:12:05 -05:00
hedgecrw85 c8192cf87d Throw SerialPortInvalidPortException if descriptor search fails 2021-04-14 08:45:10 -05:00
hedgecrw85 43e302ec14 Update port descriptor name mangling if invalid port path is passed in 2021-04-14 08:38:46 -05:00
Nuntipat Narkthong 775fde1ef8 Add native support for Apple Silicon 2021-04-11 21:12:50 +07:00
hedgecrw85 3d4c7d7abb Update version number 2020-04-29 11:32:07 -05:00
hedgecrw85 d8c8fee2e0 Update documentation to show that getCommPorts returns new instances each call 2020-04-29 11:30:23 -05:00
hedgecrw85 759914cb3f Set LOW_LATENCY mode and remove tcdrain before close 2020-04-29 11:29:50 -05:00
hedgecrw85 ad91c4e562 No change 2020-04-06 10:34:24 -05:00
hedgecrw85 03b5cacc9a Do not completely reset port configs upon native configuration 2020-04-06 10:29:47 -05:00
hedgecrw85 dad4251487 Test program for opening/closing ports 2020-04-06 10:29:05 -05:00
hedgecrw85 f7cad9d377 Native binary updates 2020-04-06 10:28:42 -05:00
hedgecrw85 db08686f07 Replace deprecated javah call with "javac -h" 2020-04-02 17:30:48 -05:00
hedgecrw85 a2ee09ab76 Update documentation 2020-04-02 16:47:01 -05:00
hedgecrw85 05ecc50de8 Android build different based on OS 2020-04-02 00:00:11 -05:00
hedgecrw85 1d297ca610 New test cast native application for opening/closing a port 2020-04-01 23:55:12 -05:00
hedgecrw85 9122adccea Redefine fdatasync to fsync on Mac 2020-04-01 22:55:06 -05:00
hedgecrw85 2ca1073277 Return boolean values whether setting serial port config parameters succeeded 2020-04-01 22:45:33 -05:00
hedgecrw85 ca1c709d00 Check return value of SetupComm in Windows 2020-04-01 22:43:51 -05:00
hedgecrw85 5ef0299abd Only enable BRKINT flag if not in RS485 mode 2020-04-01 21:31:57 -05:00
hedgecrw85 ff463aaa42 Change output error message for different types to differentiate better 2020-04-01 20:33:42 -05:00
hedgecrw85 4502ae3a9a Sync data before closing port 2020-04-01 20:33:22 -05:00
hedgecrw85 057184ba3d Update Crosstool-NG config files to work with newer versions 2020-04-01 16:19:47 -05:00
hedgecrw85 a8bd56e454 Remove deprecated Android architectures MIPS, MIPS64, and ARMEABI 2020-02-25 12:24:58 -06:00
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