reactive-serial


License

License

Categories

Categories

React User Interface Web Frameworks
GroupId

GroupId

com.github.jarlakxen
ArtifactId

ArtifactId

reactive-serial_2.11
Last Version

Last Version

1.3
Release Date

Release Date

Type

Type

jar
Description

Description

reactive-serial
reactive-serial
Project URL

Project URL

https://github.com/Jarlakxen/reactive-serial
Project Organization

Project Organization

com.github.jarlakxen
Source Code Management

Source Code Management

https://github.com/Jarlakxen/reactive-serial

Download reactive-serial_2.11

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.jarlakxen/reactive-serial_2.11/ -->
<dependency>
    <groupId>com.github.jarlakxen</groupId>
    <artifactId>reactive-serial_2.11</artifactId>
    <version>1.3</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.jarlakxen/reactive-serial_2.11/
implementation 'com.github.jarlakxen:reactive-serial_2.11:1.3'
// https://jarcasting.com/artifacts/com.github.jarlakxen/reactive-serial_2.11/
implementation ("com.github.jarlakxen:reactive-serial_2.11:1.3")
'com.github.jarlakxen:reactive-serial_2.11:jar:1.3'
<dependency org="com.github.jarlakxen" name="reactive-serial_2.11" rev="1.3">
  <artifact name="reactive-serial_2.11" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.jarlakxen', module='reactive-serial_2.11', version='1.3')
)
libraryDependencies += "com.github.jarlakxen" % "reactive-serial_2.11" % "1.3"
[com.github.jarlakxen/reactive-serial_2.11 "1.3"]

Dependencies

compile (3)

Group / Artifact Type Version
org.scala-lang : scala-library jar 2.11.8
com.fazecast : jSerialComm jar 1.3.11
org.slf4j : slf4j-api jar 1.7.19

provided (2)

Group / Artifact Type Version
com.typesafe.akka : akka-actor_2.11 jar 2.4.2
com.typesafe.akka : akka-stream_2.11 jar 2.4.2

test (7)

Group / Artifact Type Version
ch.qos.logback : logback-classic jar 1.1.6
com.typesafe.akka : akka-slf4j_2.11 jar 2.4.2
com.typesafe.akka : akka-stream-testkit_2.11 jar 2.4.2
org.specs2 : specs2-core_2.11 jar 3.7.2
org.specs2 : specs2-mock_2.11 jar 3.7.2
org.specs2 : specs2-junit_2.11 jar 3.7.2
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

Reactive Streams for Serial Communication

Reactive Streams wrapper for jSerialComm.

Available for 2.11 and 2.12:

resolvers += Resolver.bintrayRepo("jarlakxen", "maven")
libraryDependencies += "com.github.jarlakxen" %% "reactive-serial" % "1.4"

Example usage

import akka.actor.ActorSystem
import akka.stream.ActorMaterializer
import akka.stream.scaladsl.{Sink, Source}
import com.github.jarlakxen.reactive.serial.ReactiveSerial

implicit val actorSystem = ActorSystem("ReactiveSerial")
implicit val materializer = ActorMaterializer()

val serialPort = ReactiveSerial.port("/dev/ttyUSB0")

val serial = ReactiveSerial(port = serialPort, baudRate = 57600)

val publisher: Publisher[ByteString] = serial.publisher(bufferSize=100)
val subscriber: Subscriber[ByteString] = serial.subscriber(requestStrategyProvider=ZeroRequestStrategy)

Source.fromPublisher(publisher).map(_.message().toUpperCase).to(Sink.fromSubscriber(subscriber)).run()

Versions

Version
1.3
1.2
1.1
1.0