NRJavaSerial

A fork of the RXTX library with a focus on ease of use and embeddability in other libraries.

Лицензия

Лицензия

Группа

Группа

org.bidib.com.neuronrobotics
Идентификатор

Идентификатор

nrjavaserial
Последняя версия

Последняя версия

3.12.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

NRJavaSerial
A fork of the RXTX library with a focus on ease of use and embeddability in other libraries.
Ссылка на сайт

Ссылка на сайт

http://neuronrobotics.com
Система контроля версий

Система контроля версий

https://github.com/akuhtz/nrjavaserial

Скачать nrjavaserial

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/org.bidib.com.neuronrobotics/nrjavaserial/ -->
<dependency>
    <groupId>org.bidib.com.neuronrobotics</groupId>
    <artifactId>nrjavaserial</artifactId>
    <version>3.12.0</version>
</dependency>
// https://jarcasting.com/artifacts/org.bidib.com.neuronrobotics/nrjavaserial/
implementation 'org.bidib.com.neuronrobotics:nrjavaserial:3.12.0'
// https://jarcasting.com/artifacts/org.bidib.com.neuronrobotics/nrjavaserial/
implementation ("org.bidib.com.neuronrobotics:nrjavaserial:3.12.0")
'org.bidib.com.neuronrobotics:nrjavaserial:jar:3.12.0'
<dependency org="org.bidib.com.neuronrobotics" name="nrjavaserial" rev="3.12.0">
  <artifact name="nrjavaserial" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.bidib.com.neuronrobotics', module='nrjavaserial', version='3.12.0')
)
libraryDependencies += "org.bidib.com.neuronrobotics" % "nrjavaserial" % "3.12.0"
[org.bidib.com.neuronrobotics/nrjavaserial "3.12.0"]

Зависимости

compile (3)

Идентификатор библиотеки Тип Версия
commons-net : commons-net jar 3.3
org.slf4j : slf4j-api jar 1.7.12
org.apache.commons : commons-lang3 jar 3.2.1

test (1)

Идентификатор библиотеки Тип Версия
junit : junit jar 4.12

Модули Проекта

Данный проект не имеет модулей.

About

Join the chat at https://gitter.im/NeuronRobotics/nrjavaserial

Maven Central

Build Status

This is a fork of the RXTX library with a focus on ease of use and embeddability in other libraries.

Some of the features we have added

  • A simplified serial port object called NRSerialPort. See below for an example.

  • Self-deployment of native libraries (all native code is stored inside the JAR and deployed at runtime). No more manual installation of native code.

  • Arm Cortex support (Gumstix).

  • Android Support (requires a rooted phone to access the serial hardware).

  • Single Makefile compile which simplifies the compilation of project binaries.

  • Gradle support for JAR creation.

  • Removal of partially-implemented RXTX code to streamline the library for just serial port access.

  • Full Eclipse integration for testing application code against sources.

  • RFC 2217 support provided by incorporating the jvser library.

And a bunch of bug fixes

  • Fixed the memory access error that causes OS X to crash the JVM when serial.close() is called.

  • Fixed the Windows serial port zombie bind that prevents re-accessing serial ports when exiting on an exception.

  • Fixed erroneous printouts of native library mis-match.

Dependency Management

Maven

<dependency>
  <groupId>com.neuronrobotics</groupId>
  <artifactId>nrjavaserial</artifactId>
  <version>3.12.1</version>
</dependency>

Building the JAR

  1. Checkout the repository.

     $ git clone https://github.com/NeuronRobotics/nrjavaserial.git
    
  2. Build with Gradle.

     $ cd nrjavaserial
     $ gradle build
    

The resulting JAR will be found in the build/libs/ directory.

Building Native Code

Native code is built using the Makefile found in the root of the repository. After the native code is built, the JAR is rebuilt.

# Build both the 32- and 64-bit Windows binaries.
$ make windows

# Build the windows binaries on Linux via Wine.
$ make wine

# Build both the 32- and 64-bit Linux x86 binaries.
$make linux

# Build 32- or 64-bit Linux binaries, respectively.
$ make linux32
$ make linux64

# Build the binaries for all the supported ARM flavors (requires arm-linux-geabi-* packages)
$ make arm

# Build the OSX binaries.
$ make osx

# Build the PPC binaries.
$ make ppc

Building on Windows

You'll need some installation of GCC. We recommend the TDM-GCC distribution of mingw64-w64.

Building on OS X

We're pretty big on maintaining backwards compatibility as far as reasonable. Our OS X natives target OS X 10.5, so to build them, you'll need an appropriate SDK installed. This StackOverflow answer provides pointers for getting the appropriate SDK installed.

How to use NRSerialPort objects

for(String s:NRSerialPort.getAvailableSerialPorts()){
		System.out.println("Availible port: "+s);
	}
String port = "COM3";
int baudRate = 115200;
NRSerialPort serial = new NRSerialPort(port, baudRate);
serial.connect();

DataInputStream ins = new DataInputStream(serial.getInputStream());
DataOutputStream outs = new DataOutputStream(serial.getOutputStream());

byte b = ins.read();
outs.write(b);

serial.disconnect();

Версии библиотеки

Версия
3.12.0
3.9.3.1
3.9.2.1