Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including node-red-contrib-braumeister with all npm packages installed. Try it out:

var nodeRedContribBraumeister = require("node-red-contrib-braumeister")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

node-red-contrib-braumeister v0.2.0

Node-RED braumeister nodes

Node-RED Braumeister

Basic Node-RED nodes for interacting with Speidels Braumeister homebrewing system. When a BRAUMEISTERmobil WiFi module is installed, it is running a web server with a rudimentary API. It provides measurement data like temperature or pump status as well as a list of stored recipes.

Requirements

  • Braumeister brewing equipment
  • BRAUMEISTERmobil WiFi extension module
  • Node-RED

braumeister node

braumeister node

This node does an HTTP request to the Braumeister's /bm.txt file. The response is a txt file containing a csv-like string:

"V1.1.27 Sep 12 2018;0004A30B003FA809;0X13:13XCX2930X0X 72.5X0X2234X1X1X5X0X191XA00SXpiX000X0X0X0"

(See /bm.txt for more details what these values stand for.)

This node converts this string into an object containing measurement data / status values.

valuedescription
firmware_versionBraumeister firmware version
temperature_currentcurrent temperature in °C
temperature_targettarget temperature in °C
time_targettarget time in seconds
time_elapsedelapsed time in seconds
pumppump status: "off", "on" or "inactive"
heatingheating status: "off", "on" or "inactive"
source_stringraw source string

Example Usage

example

recipes node

recipes node

This node does an HTTP request to the Braumeister's /rz.txt file, parses the recipes and returns them in an array of objects:

[
  {
      index: 0,
      mesh_in_temperature: 45,
      step_1_temperature: 50,
      step_1_time: 15,
      step_2_temperature: 60,
      step_2_time: 20,
      step_3_temperature: 70,
      step_3_time: 15,
      step_4_temperature: 75,
      step_4_time: 5,
      boiling_time: 30,
      boiling_temperature: 100,
      hop_1_time: 5,
      hop_2_time: 10,
      hop_3_time: 15,
      hop_4_time: 0,
      hop_5_time: 0,
      hop_6_time: 0,
      beer_name: "Doubly Hoeppi"
    },
    {...}
]

Contributions

Contributions are always welcome! I need help further decrypting the /bm.txt response file.

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free