openHAB - Motion Detector Bricklet

Warning

The openHAB bindings are still in beta, but the development was stopped.

This is the description of the openHAB API bindings for the Motion Detector Bricklet. General information and technical specifications for the Motion Detector Bricklet are summarized in its hardware description.

An installation guide for the openHAB API bindings is part of their general description.

Thing

UID:
  • tinkerforge:brickletmotiondetector:[UID]
Required firmware version:
  • 2.0.0
Firmware update supported:
  • yes
Channels:
Actions:

Channels

Motion Detected

This channel is triggered after a motion was detected.

Type:
  • Trigger (system.trigger)
UID:
  • tinkerforge:brickletmotiondetector:[UID]:BrickletMotionDetectorMotionDetected
Read only:
  • No
Detection Cycle Ended

This channel is triggered when the detection cycle ended. A new motion can be detected again after approximately 2 seconds.

Type:
  • Trigger (system.trigger)
UID:
  • tinkerforge:brickletmotiondetector:[UID]:BrickletMotionDetectorDetectionCycleEnded
Read only:
  • No

Actions

Actions can be used in rules by creating an action object. All actions return a Map<String, Object>. Returned values can be accessed by name, sometimes the type deduction needs some hints, as shown below:

val actions = getActions("tinkerforge", "tinkerforge:brickletmotiondetector:[UID]")
val hwVersion = actions.brickletMotionDetectorGetIdentity().get("hardwareVersion") as short[]
logInfo("Example", "Hardware version: " + hwVersion.get(0) + "." + hwVersion.get(1) + "." + hwVersion.get(2))

Basic Actions

brickletMotionDetectorGetMotionDetected()
Return Map:
  • motion – Type: short, Range: See constants

Returns 1 if a motion was detected. How long this returns 1 after a motion was detected can be adjusted with one of the small potentiometers on the Motion Detector Bricklet, see here.

There is also a blue LED on the Bricklet that is on as long as the Bricklet is in the "motion detected" state.

The following constants are available for this function:

For motion:

  • val MOTION_NOT_DETECTED = 0
  • val MOTION_DETECTED = 1

Advanced Actions

brickletMotionDetectorGetIdentity()
Return Map:
  • uid – Type: String, Length: up to 8
  • connectedUid – Type: String, Length: up to 8
  • position – Type: char, Range: ['a' to 'h', 'z']
  • hardwareVersion – Type: short[], Length: 3
    • 0: major – Type: short, Range: [0 to 255]
    • 1: minor – Type: short, Range: [0 to 255]
    • 2: revision – Type: short, Range: [0 to 255]
  • firmwareVersion – Type: short[], Length: 3
    • 0: major – Type: short, Range: [0 to 255]
    • 1: minor – Type: short, Range: [0 to 255]
    • 2: revision – Type: short, Range: [0 to 255]
  • deviceIdentifier – Type: int, Range: [0 to 216 - 1]

Returns the UID, the UID where the Bricklet is connected to, the position, the hardware and firmware version as well as the device identifier.

The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port). A Bricklet connected to an Isolator Bricklet is always at position 'z'.

The device identifier numbers can be found here