You are looking for LoRaWAN interface for the Hyperion
Here you can find a LoRaWAN interface for the Hyperion
General description of the LoRaWAN interface
- The Hyperion Lora is compatible to LoraWAN ě 1.0.3 (Class C).
- The Hyperion Lora permanently saves the needed parameters for Lora and its configuration on the Loramodule.
- A reparametrization is only possible via the meter display or via a Lora downlink message.
- The Hyperion Lora autonomously synchronizes its internal clock at least once per day via a regularly scheduled DeviceTimeReq.
- The Hyperion Lora determines and optimizes its own transmit parameters (data rate, SFfactor etc.).
- The default meter uses an internal antenna for communication. A meter with an external antenna is only available through special request.
❗ Note: Operation of the Hyperion Lora with a SMA-connector is only allowed with an attached antenna!
❗ Note: per default the external antenna is deactivated!
⚠️ Danger! An improperly installed antenna can damage the Hyperion!
Hardware
The Lora interface of the Hyperion LoRa is based on the Lora transmission standard. This means the meter can reliably transmit data over large distances in environments without permanent communication.
To ensure a stable and highperformance link to the Lora gateway the meter constantly adapts the optimal transmit and receive parameters independently. For a easier integration into the network you can check the status of the network connection on the display.
- Frequency: EU 863870MHz
- Typ: Class C Device
- The Lora interface is available anytime for downlink messages (Class C).
- The interface transmits with a signal strength of 14dbm.
- To connect an external antenna to the SMA-connector, use an antenna with a SMA-plug. Note that the option for the external antenna must be activated on the meter if an external antenna is attached.
❗ Note: The use of a RPSMA antenna (with an adapter) is not recommended.
❗ Note: In case the Hyperion Lora is connected to a Lora network without Class-C support the meter acts as a Class-A device.
❗ Note: The Hyperion Lora operates with an adaptive data rate. Use as a roaming device should be carefully clarified beforehand.
Note on Installation
Make sure to disconnect all current and voltage connections before installation of the external antenna!
Make sure that the SMA connector is fitted correctly. The maximum torque for the union nut must not exceed 1Nm.
If you are using an external antenna the option “external” in the settings menu “LoRa Antenna” must be set. Otherwise the meter will continue to send on the internal antenna
Start of Operation
Every meter is shipped with:
- Join-Modus: OTAA
- DeviceEUI (starting with 10 2C EF)
- Appkey
- JoinEUI (formerly: AppEUI) (10 2C EF 00 00 00 00 00)
The Dev-EUI and the AppKey can be read out on the display, the JoinEUI (formerly: AppEUI) is 10 2C EF 00 00 00 00 00 on every meter.
- Make sure that the meter is connected correctly (Phase and line sequence, direction of flow of energy).
- Make sure that the current and voltage transformer ratios of the converter counter are configured correctly
- The Hyperion Lora is designed for fast detection of potential problems in connection range or throughput.
- Repositioning of the Lora gateway is possible after the installation of the Hyperion Lora. As long as the recommended distances are adhered to, the meter continues to communicate with the Lora server
- Operation of the meter with a SMA-connector is only allowed with an attached antenna.
LoRa JoinStatus 2/4
Joined: If the meter is connected to a Lora network.
Lst. Uplink: ACK/NACK (with or without acknowledge)
Timestamp of the last Uplink
LoRa Status 3/4
RSSI: The received field strength
SNR: Signal to noise ratio
SPF: Spreading factor BW: Bandwidth
LoRa JoinMode 4/4
OTAA or ABP
Lst. Downlink: ACK/NACK (with or without acknowledge)
Timestamp of last Downlink
LoRa AppKey (only with OTAA)
A short press of the SRVC button shows the current AppKey. Using the “Arrow right” button you can generate a new AppKey.
A second short press (<2s) of the SRVC button exits the edit mode without changing the AppKey.
A second long press (>2s) of the SRVC button finalizes the generation of the new AppKey and exits the edit mode automatically. The successful generation of a new AppKey is receipted with a short flashing of the display backlight.
The newly created AppKey can now be read out by a short press of the SRVC button.
LoRa DevAddr (only with ABP)
A short press of the SRVC button shows the current DevAddr. Using the “Arrow right” button you can generate a new DevAddr.
A second short press (<2s) of the SRVC button exits the edit mode without changing the DevAddr.
A second long press (>2s) of the SRVC button finalizes the generation of the new DevAddr and exits the edit mode automatically. The successful generation of a new DevAddr is receipted with a short flashing of the display backlight.
The newly created DevAddr can now be read out by a short press of the SRVC button.
LoRa NwkSKey (only with ABP)
A short press of the SRVC button shows the current NwkSKey. Using the “Arrow right” button you can generate a new NwkSKey.
A second short press (<2s) of the SRVC button exits the edit mode without changing the NwkSKey.
A second long press (>2s) of the SRVC button finalizes the generation of the new NwkSKey and exits the edit mode automatically. The successful generation of a new NwkSKey is receipted with a short flashing of the display backlight.
The newly created NwkSKey can now be read out by a short press of the SRVC button.
LoRa JoinMode (available with OTAA and ABP)
You can set the parameter by briefly pressing the SRVC button. Use the "arrow to the right" to select the desired JoinMode.
A second short press (<2s) on the SRVC button exits the editing mode without changing the JoinMode.
A second long press (>2s) on the SRVC button closes the new JoinMode and exits edit mode automatically. Successful saving is acknowledged with a brief flash of the display light.
❗ Note: After successfully changing the JoinMode, you must provide your LoRa server with the new keys.
OTAA-Over the air activation
The Lora interface of the Hyperion energy meter can use OTAA. The communication module controls the encryption with the Lora network server and joins the network. There can only be a 1:1 connection between the meter and the Lora network. This type of communication offers increased security against interference by third parties.
LoRa Join
Performing a (re-)join.
You can set the parameter by briefly pressing the SRVC button. You can select "Reboot" with the "Arrow right".
A second short press (<2s) on the SRVC button exits edit mode without changing anything.
A second long press (>2s) on the SRVC button starts the (re)join and exits edit mode automatically. Successful saving is acknowledged with a brief flash of the display light.
LoRa-Test
Send an immediate uplink message with the configuration of slot 1 to the LoRa network.
You can set the parameter by briefly pressing the SRVC button. The uplink is triggered with the "arrow right".
A second short press (<2s) on the SRVC button exits edit mode without changing anything.
A second long press (>2s) on the SRVC button starts the uplink and exits edit mode automatically. Successful transmission is acknowledged with a brief flashing of the display light.
❗ Note: This uplink can only be sent if slot 1 is marked as active.
❗ Note: This uplink can only be sent if no Duty-Cycle-Restrictions apply.
LoRa antenna
Enables easy switching between internal and external antenna.
You can set the parameter by briefly pressing the SRVC button. Use the "arrow right" to select the antenna.
A second short press (<2s) on the SRVC button exits the editing mode without changing the antenna configuration.
A second long press (>2s) on the SRVC button saves the selection and exits edit mode automatically. Successful saving is acknowledged with a brief flash of the display light.
⚠️ DANGER: Ensure that the meter is de-energized when installing the external antenna. The meter can be damaged if the installation instructions are not followed. Follow the instructions!
⚠️ DANGER: The antenna must be attached before you change this setting!
LoRa-interface
Enables a soft reset (SoftReset) of the LoRa module or resetting to factory settings (Factory RESET).
You can set the parameter by briefly pressing the SRVC button. You can select the reset with the "Arrow right".
A second short press (<2s) on the SRVC button exits the editing mode without changing anything.
A second long press (>2s) on the SRVC button completes the reset and exits edit mode automatically. The successful reset is acknowledged with a brief flash of the display light.
❗ Note: A reset of the LoRa module does not change or affect any measurements, meter readings or other measurement-relevant processes of the Hyperion LoRa.
Join request
As long as no join request has occurred, the Hyperion regularly attempts to establish a connection to a Lora network. These join requests occur randomly over a period of ˘ 10 minutes to counteract bandwidth problems when several meters are in the same network.
❗ Note: The uplink and downlink counter is reset to 0 after restarting the Hyperion Lora.
Testing whether the Lora module is still connected to the Lora network
The Hyperion Lora checks its connection to the Lora network at least once a day. You can configure the data packets so that an ACK is requested for each uplink transmission. If this option is set, the meter can react much faster to a connection interruption.
If the Hyperion Lora
- does not receive an ACK to its uplink messages within 24 hours,
- or the connection check (once every 24 hours) for continued connection to the Lora network fails, it automatically starts a new (re)join process.
This check for continued connection to the Lora network can also be done via time synchronization (DeviceTimeReq) or an uplink message to a dedicated fPort with an ACK.
Downlink messages
The Hyperion Lora energy meter can acknowledge every downlink transmission received.
Configuration of the measured value transmission
- You can configure which measured values are to be sent at which interval via a downlink message.
- Only measured values from the data logger and logbook are available for readout.
- There are 10 "slots" available for this configuration, which are represented by the fPorts 110.
- Only 10 measurements can be saved per slot.
- Lower slots have a higher priority.
- The following measurement registers are transferred by default:
- See Default-Uplink
- You can configure the interval at which the data is transmitted. The interval can be set from 1 minute to a maximum of 67,500 minutes (45 days).
- Do you want your Lora network to send an ACK for each transmission received from the meter? Yes/No?
- If Yes: If the network does not acknowledge the packet, the meter will resend the packet.
- Select whether this profile is active or not.
❗ Note: If you only change the transmission interval, the downlink message only contains the 2 interval bytes and the flags for ACK and active without further register data.
❗ Note: If the airtime of the counter does not allow a transmission that is too long, the transmission will only be sent partially or not at all.
Description of the downlink message
The BitOrder is LSB, the ByteOrder is LittleEndian.
Configuration of which registers are sent.
Length in bytes: 4 bytes 13 bytes fPort: 110
Byte | Description | Example |
0-1 | Time interval in minutes | 0x01 0x00 0xFF 0xFF |
2 | Configurations-Flags | |
3-12 | ID's of registers in the transmission | 0x03... |
CRC8 | see definition |
Configuration flag byte
Byte | Bit | Description |
00000000 | 1 | Settings are unchanged |
00000000 | 2 | No ACK expected after upload |
00000010 | 2 | ACK expected for every upload |
00000100 | 3 | Make a (re)join after approx. 60 minutes to an existing/new network |
00000000 | 3 | Not defined |
00001000 | 4 | Connection deactivated |
00000000 | 4 | Connection activated |
00010000 | 5 | not defined |
Byte | Bit | Description |
00000000 | 5 | not defined |
00100000 | 6 | not defined |
00000000 | 6 | not defined |
01000000 | 7 | not defined |
00000000 | 7 | not defined |
A list of possible register-IDs can be found in the Measurement tab
❗ Note: If only byte 0 + 1 + configByte + CRC8 are sent, the transmission interval and the configuration flags are changed accordingly. The measurement registers are not changed.
Example for 1-minute-interval-setting
var data =[0x01, 0x00, 0x08, 0x53];
0x01 0x00 -> 1 minute interval
0x08 -> No ACK, no re-join, port is active.
0x53 -> CRC-8 checksum
Example of register transfer
This example shows the required data downlink for an uplink of the energy registers "Active & Reactive Energy import & Export Tariff 1&2" every minute.
var data = [0x01, 0x00, 0x0A, 0x01, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x83]
0x01 0x00 -> 1 minute interval
0x0A -> ACK, no re-join, port is active.
0x01 -> Timestamp
0x03 - 0x0A -> Register selected for uplink.
0x83 -> CRC-8 checksum
Uplink-message
The following messages can be sent from the Hyperion Lora:
- Join / Rejoin request
- Time synchronization
- Monitor network membership
- Sending measurement registers
Join / Rejoin
The Hyperion Lora performs a join / rejoin with a Lora network.DeviceTimeReq / Time synchronization
In normal operation, the Hyperion Lora attempts to determine the current time and date regularly (min. once every 24 hours, max. once per hour). The meter sets its internal clock according to the following criteria:- If the old time and the new time differ by less than 2 seconds, the meter accepts the new time as time synchronization and sets the new time.
- If the difference is more than 2 seconds, the meter queries the current time at least 3 more times to ensure that the new time is correct. to ensure that the new time is correct.
After the start or when the internal buffer for the RTC is used up, the meter checks the time with at least 3 DeviceTimeReq requests. These 3 time queries take place in a time frame of 3 minutes.
❗ Note: The operator of the Lora infrastructure must ensure that the meter can synchronize its time regularly to ensure proper operation of the Hyperion energy meter. The Lora DeviceTimeReq command is the optimal solution for this.
Sending of measured values
- The Hyperion Lora transmits all required registers directly from its data logger via Lora without changing the data.
- The requested measurements are read out from the data logger at the due date.
- The transmission must therefore start and end in the transmission interval.
Example for a transmission interval of 15 minutes:
- 09:00:02 o'clock: The communication module Lora reads the last data log entry. The values stored there are from 09:00:00.
- 09:00:03 09:14:59: The counter tries to transmit the data over the Lora network.
- 09:15:02 o'clock: The Lora communication module reads the last data logger entry. The values stored there are from 09:15:00.
❗ Note: If you operate several counters in the same Lora network, the transmissions of these counters may overlap.
❗ Note: If the Hyperion Lora its packets due to network conditions such as SF . too high or too slow to transmit data rate, the counter sends only one data packet. All further readings will no longer be transmitted at a later date. Please make sure that your meter and the Lora network are configured to allow full data transmission.
Construction of uplink packages
The bit order is LSB, the byte order is LittleEndian. The first four bytes are always the time stamp of the data logger Logger.
First telegram after join with a Lora-server
fPort: 100 Length: 29
Structure:
Byte | Description |
0-3 | current system time |
4 | Type |
5-8 | Serial number |
9 | Type |
10 | Serial number |
11 | Type |
12-13 | Current transformer primary |
14 | Type |
15-16 | Current converter secondary |
17 | Type |
18-19 | Voltage converter primary |
20 | Construction |
21-22 | Voltage converter secondary |
23 | Construction |
24-27 |
MID Year of certification (BCD)
|
28 | CRC 8bit |
Example of a package:
#System time
#Serial number 22150405
#Meter type Converter Counter -> 2
#Current transformer ratio 5:5
#Voltage transformer ratio 100:100
#Mid year of certification 2022
CRC should be 0x65
var data = [0x68, 0x9b, 0xa8, 0x62, | // Systemtime 0x62A89B68 |
// -> 1655217000 | |
//->Thuesday, 14. Juni 2022 | |
// 16:30:00 GMT+02:00 DST | |
xf1, 0x05, 0x04, 0x15, 0x22, | // Serial number 0x22150405 |
//-> 22150405 | |
0xf7, 0x02, | // Meter type 0x02 -> 2 |
0xf3, 0x05, 0x00, | // Current transformer primary 0x0005 |
//-> 5 | |
0xf4, 0x05, 0x00, | // Current transformer secondary 0x0005 |
//-> 5 | |
0xf5, 0x64, 0x00, | // Voltage transformer primary 0x0064 |
//-> 100 | |
0xf6, 0x64, 0x00, | // Voltage transformer secondary 0x0064 |
//-> 100 | |
0xf8, 0x02, 0x00, 0x02, 0x02, | // MID year, BCD -> 2022 |
0x65] | // CRC-8 Checksum |
Default Uplink
After the first start or after the reset to the factory settings, the meter sends the following telegram:
Structure:
Byte | Description | |
0-3 | Time stamp | 0x03 |
4 | Typ | |
5-8 | Effective energy import L123 T1 | 0x04 |
9 | Typ | |
10-13 | Importing effective energy L123 T2 | 0x05 |
14 | Typ | |
15-18 | Effective energy exports L123 T1 | 0x06 |
19 | Typ | |
20-23 | Effective energy exports L123 T2 | 0x07 |
24 | Typ | |
25 | Error code | 0xFF |
26 | CRC 8-bit |
The fPorts 1-10 can be changed individually as described in downlink messages.
Measured value registers
The energy measurements and technical information are read out from the data logger of the Hyperion energy meter Lora. These measurements are stored at the end of a measuring period (15 minutes).
❗ Note: Changes to the configuration of the Hyperion, e.g. current converter ratio, are updated in the data logger at the end of a measurement period.
ID Typ Description Unit Resolution
0x00 | uInt32 | Index | Index | |
0x01 | uInt32 | Time stamp | Zeit | Epoch |
0x02 | uInt32 | Original timestamp of the entry | Zeit | Epoch |
0x03 | uInt32 | Effective energy import L123 T1 | Wh | 1 Wh |
0x04 | uInt32 | Effective energy import L123 T2 | Wh | 1 Wh |
0x05 | uInt32 | Effective energy export L123 T1 | Wh | 1 Wh |
0x06 | uInt32 | Effective energy exports L123 T2 | Wh | 1 Wh |
0x07 | uInt32 | Reactive energy imports L123 T1 | varh | 1 varh |
0x08 | uInt32 | Import reactive energy L123 T2 | varh | 1 varh |
0x09 | uInt32 | Export reactive energy L123 T1 | varh | 1 varh |
0x0A | uInt32 | Exports of reactive energy L123 T2 | DL | varh |
0x0B | Int32 | Int32 Actual performance L123 | W | 1 W |
0x0C | Int32 | Actual performance L1 | W | 1 W |
0x0D | Int32 | Actual performance L2 | W | 1 W |
0x0E | Int32 | Actual performance | W | 1W |
0x0F | Int32 | Electricity L123 | mA | 1mA |
0x10 | Int32 | Electricity L1 | mA | 1mA |
0x11 | Int32 | Electricity L2 | mA | 1mA |
0x12 | Int32 | Electricity L3 | mA | 1mA |
0x13 | Int32 | Electricity L4 (zero conductor, only for current converter meters) | mA | 1mA |
0x14 | Int32 | Tension L1-N | V | 100 mV |
0x15 | Int32 | Tension L2-N | V | 100 mV |
0x16 | Int32 | Tension L3-N | V | 100 mV |
0x17 | Int8 | Performance factor L1 | -1..1 | 0.01 |
0x18 | Int8 | Performance factor L2 | -1..1 | 0.01 |
0x19 | Int8 | Performance factor L3 | -1..1 | 0.01 |
0x1A | Int16 | Frequency | Hz | 0.1 Hz |
0x1B | uInt32 | Medium performance | W | 1W |
0x1C | uInt32 | Effective energy import L123 T1 | kWh | 1kWh |
0x1D | uInt32 | Importing effective energy L123 T2 | kWh | 1kWh |
0x1E | uInt32 | Effective energy export L123 T1 | kWh | 1kWh |
0x1F | uInt32 | Effective energy export L123 T2 | kWh | 1kWh |
0x20 | uInt32 | Import reactive energyL123 T1 | kvarh | 1 kvarh |
0x21 | uInt32 | Import reactive energy L123 T2 | kvarh | 1 kvarh |
0x22 | uInt32 | Import reactive energy L123 T1 | kvarh | 1 kvarh |
0x23 | uInt32 | Import reactive energy L123 T2 | kvarh | 1 kvarh |
0x24 | uInt64 | Effective energy import L123 T1 | Wh | 1 Wh |
0x25 | uInt64 | Import work L123 | Wh | 1 Wh |
0x26 | uInt64 | Effective energy exports L123 T1 | Wh | 1 Wh |
0x27 | uInt64 | Effective energy exports L123 T2 | Wh | 1 Wh |
0x28 | uInt64 | Reactive energy imports L123 T1 | varh | 1 varh |
0x29 | uInt64 | Import reactive energy L123 T2 | varh | 1 varh |
0x2A | uInt64 | Export reactive energy L123 T1 | varh | 1 varh |
0x2B | uInt64 | Exports of reactive energy L123 T2 | varh | 1 varh |
0xF0 | uInt8 | Error code | ||
0xF1 | uInt32 | Hex Serial number | ||
0xF2 | uInt32 | Hex Plant number | ||
0xF3 | uInt16 | Current transformer primary | ||
0xF4 | uInt16 | Current converter secondary |
ID Typ Description Unit Resolution
0xF5 | uInt16 | Voltage converter primary | ||
0xF6 | uInt16 | Voltage converter secondary | ||
0xF7 | uInt8 | Type of counter | ||
0xF8 | uInt32 | MID Year of certification | BCD | |
0xF9 | uInt32 | Year of manufacture | BCD | |
0xFA | uInt32 | Firmware Version | ASCII | |
0xFB | uInt32 | MID measurement version | ASCII | |
0xFC | uInt32 | Producers | ASCII | |
0xFD | uInt32 | Hardware-index | ASCII | |
0xFE | uInt32 | Current system time | time | Epoch |
The possible values of the error code can be found in the chapter Status Codes
Status Codes
Bit Order | Description |
0 | Time set |
1 | Current converter ratio set |
2 | Voltage converter ratio set |
3 | Pulse length set |
4 | Pulse ratio set |
5 | Voltage interruption |
6 | Time not valid or not synchronized |
7 | Logbook full |
Documentation Links
You can find the links for further documentation on Hyperion Energy Meter here :
- Hyperion Energy Meter
- Data Sheet for Hyperion
- Operating Instructions for the Hyperion
- LoRaWAN Interface
- Hyperion Dataconverter in .js
- CE EU Declaration of Conformity Hyperion