1.0.0 • Published 7 years ago

flower-power-history v1.0.0

Weekly downloads
4
License
MIT
Repository
github
Last release
7 years ago

flower-power-history

node.js lib for decoding Parrot Flower Power history file.

Install

$ npm install flower-power-history

Usage

const FlowerPowerHistory = require('flower-power-history')
const fs = require('fs')

const history = FlowerPowerHistory(b64History, startupTime)
const stream = fs.createWriteStream('history.csv')
stream.once('open', (fd) => {
  history.writeCSV(stream)
  stream.end()
})

File structure

  • Header

Size: 0X10

IndexTypeValue
0x0unsigned int16Unknown
0x2unsigned int16Nb entries
0x4unsigned int32Last entry time
0x8unsigned int16First entry index
0xAunsigned int16Last entry index
0xCunsigned int16Session ID
0xEunsigned int16Period
  • Entry

Size: 0xC

IndexTypeValue
0x0unsigned int16Air temperature
0x2unsigned int16Light
0x4unsigned int16Soil EC
0x6unsigned int16Soil temperature
0x8unsigned int16Soil VWC
0xAunsigned int16Battery level

Conversions

  • Temperature:

0.0473711045 * value + -11.19891627 => °C

  • Light:

10981.31391 * exp ( 1 / value) + -10981.3812 => mol / m² / d

  • Soil VWC:

0.179814297 * value + -40.76741498 => %

  • Battery level:

0.2865304553 * value + -177.3583506 => %

  • Soil EC:

TODO

TODO

  • convert soil EC raw value to dS/m