Skip to content

jalallinux/php-cayenne-lpp

Repository files navigation

Php Cayenne Encoder & Decoder

Latest Stable Version Latest Version on Packagist Tests Total Downloads


This library can encode and decode data stream for LoraWan and SigFox devices which use Cayenne LPP encoding.

Installation

You can install the package via composer:

composer require jalallinux/php-cayenne-lpp

Usage

Encoder

$encoder = new Encoder();
$encoder->addAnalogInput(2, 4.2)
    ->addRelativeHumidity(3, 32.0)
    ->addTemperature(4, 28.7)
    ->addBarometricPressure(5, 851.3)
    ->addAnalogOutput(6, 4.45);

$hex = bin2hex($encoder->getBuffer());
/**
 * RESULT
 * 020201a40368400467011f05732141060301bd
 */

Decoder

$decoder = new Decoder(hex2bin('020201a40368400467011f05732141060301bd'));
$data = $decoder->data;
/**
 * RESULT
 * [
 *  0 => [
 *    "channel" => 2
 *    "type" => 2
 *    "typeName" => "analogInput"
 *    "data" => [
 *      "value" => 4.2
 *    ]
 *  ]
 *  1 => [
 *    "channel" => 3
 *    "type" => 104
 *    "typeName" => "humidity"
 *    "data" => [
 *      "value" => 32.0
 *    ]
 *  ]
 *  2 => [
 *    "channel" => 4
 *    "type" => 103
 *    "typeName" => "temperature"
 *    "data" => [
 *      "value" => 28.7
 *    ]
 *  ]
 *  3 => [
 *    "channel" => 5
 *    "type" => 115
 *    "typeName" => "pressure"
 *    "data" => [
 *      "value" => 851.3
 *    ]
 *  ]
 *  4 => [
 *    "channel" => 6
 *    "type" => 3
 *    "typeName" => "analogOutput"
 *    "data" => [
 *      "value" => 4.45
 *   ]
 * ]
 */

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

About PHP Cayenne LPP encoder and decoder

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages