Technical Documentation

Here you will find documents you need to get a more detailed understanding of how the technology behind our solutions works, the products themselves as well as some handy tips for getting started.

Lemonbeat smart Device Language Specification

An in-depth description of the Application Layer (Level 7 of the OSI Model), used in all of our protocol stacks. The document includes examples of the XML to EXI compression, how our standard services work as well as code examples.

Lemonbeat LsDL Specification (PDF)

lemonbeat application layer specification

Lemonbeat Sub-1 GHz Software Stack Specification

A technical overview of the LsDL on LB Radio stack. Using an 868MHz radio frequency, this stack, designed for the European market, offers a great combination of range as well as battery efficiency. It also enables intelligence to be implemented directly onto the device as well as direct interaction with other Lemonbeat devices. It is available under license as software or in combination with our SiP Chip, details of which are also included.

Lemonbeat Sub 1-GHz Software Stack Specification (PDF)

lemonbeat SiP Chip

DALI/Ethernet Fact Sheet

Of particular interest for the area of Building Automation, this fact sheet provides details of bespoke adapters to convert Lemonbeat smart Device Language for use over Ethernet or to DALI (Digitally Addressable Lighting Interface).

DALI/Ethernet to Lemonbeat Adaptor Specification (PDF)

DALI/Ethernet to lemonbeat adaptor

Code Examples

Below are two examples about how we address tasks common within the realm of IoT. The code included indicates how easy such use cases are to implement when using Lemonbeat technologies.

Temperature control with window and temperature sensor

The temperature in the house is at a steady 21 degrees Celsius.

  • An individual from the household opens a window in a room. This is detected by the system.The thermostat detects the temperature drop in the room, but allows the temperature it because
    of the open windows.
  • After 5 minutes he/she closes the window again. As a result the temperature should rise and
    then stay at the abovementioned 21 degrees Celsius.
Temperature control
Click to enlarge
<?xml version="1.0" encoding="UTF-8"?>
<network xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1"
		 xsi:noNamespaceSchemaLocation="calculation.xsd">
	<device version="1">
		<calculation_report>
			<calculation calculation_id="1" method_id="9">
				<!-- Partner 2 is temperature -->
				<left value_id="1" partner_id="2"/>
				<right constant_number="21"/>
			</calculation>
			<calculation calculation_id="2" method_id="8">
				<left value_id="1" partner_id="2"/>
				<right constant_number="20"/>
			</calculation>
			<calculation calculation_id="3" method_id="6">
				<!-- Partner 3 is window -->
				<left value_id="1" partner_id="3"/>
				<right constant_number="0"/>
			</calculation>
			<calculation calculation_id="4" method_id="6">
				<left value_id="1" partner_id="3"/>
				<right constant_number="1"/>
			</calculation>
		</calculation_report>
	</device>
</network>
XML: Calculation for User Story “Temperature Control”
<?xml version="1.0" encoding="UTF-8"?>
<network xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1"
		 xsi:noNamespaceSchemaLocation="action.xsd">
	<device version="1">
		<action_report>
			<action action_id="1">
			<set value_id="1" number="1"/>
		</action>
		<action action_id="2">
			<set value_id="1" number="0"/>
		</action>
		</action_report>
	</device>
</network>
XML: Action for User Story “Temperature Control”
<?xml version ="1.0" encoding="UTF -8"?>
<network xmlns:xsi="http://www.w3.org/2001/ XMLSchema -instance" version="1"
		 xsi:noNamespaceSchemaLocation="statemachine.xsd">
	<device version="1">
		<statemachine_report>
		<statemachine statemachine_id="1">
			<state state_id="1">
				<transaction calculation_id="2" action_id="1" goto_state_id="2"/>
				<transaction calculation_id="4" action_id="2" goto_state_id="3"/>
			</state >
			<state state_id="2">
				<transaction calculation_id="1" action_id="2" goto_state_id="1"/>
				<transaction calculation_id="4" action_id="2" goto_state_id="3"/>
			</state >
			<state state_id="3">
				<transaction calculation_id="3" goto_state_id="1"/>
			</state>
		</statemachine>
		</statemachine_report>
	</device>
</network>
XML: State Machine for User Story “Temperature Control”

Electricity pricing

The electricity supplier of a household sends pricings to the electric meter on a regular daily basis. This information is used to reduce the electricity bill. The reduction is done by performing actions that consume a lot of electricity and therefore cause greater expanses in periods with low pricing, e.g. at nighttime or midday on workdays.

Electricity Price
Click to enlarge
<?xml version="1.0" encoding="UTF-8"?>
<network xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1"
		 xsi:noNamespaceSchemaLocation="action.xsd">
	<device version="1">
		<action_report>
		<action action_id="1">
			<set value_id="1" number="0.2"/>
		</action>
		<action action_id="2">
			<set value_id="1" number="0.4"/>
		</action>
		<action action_id="3">
			<set value_id="1" number="0.6"/>
		</action>
		<action action_id="4">
			<set value_id="1" number="0.7"/>
		</action>
		</action_report>
	</device>
</network>
XML: Action for User Story “Electricity Pricing”
<?xml version="1.0" encoding="UTF-8"?>
<network xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1"
		 xsi:noNamespaceSchemaLocation="calendar.xsd">
	<device version="1">
		<calendar_report>
			<task task_id="1" start="1319436000" action_id="3" end="1319446800" repeat="86400"/>
			<task task_id="2" start="1319446800" action_id="2" end="1319472000" repeat="86400"/>
			<task task_id="3" start="1319472000" action_id="4" end="1319497200" repeat="86400"/>
			<task task_id="4" start="1319497200" action_id="1" end="1319522400" repeat="86400"/>
		</calendar_report>
	</device>
</network>
XML: Calendar for User Story “Electricity Pricing”