NETRIS_F

Description of the device
Strain transducers have been designed for applications in which there is a need to measure the deformation due to external forces acting on existing components. The transducer is simply screwed to the component. After the adjustment, the unit has the features of a force transducer. The strain transducer is fastened with four screws to an area of the structure where the relevant strain occurs. Combined strain transducers can be connected directly to a junction box that contains an amplifier for system control.
For more information see product site.
NETRIS_F Parser Quick Start
Parser API
All functions are pure (no global mutation) except adjustMeasuringRange which updates internal range configuration for subsequent decodes.
Types:
Input types:
interface UplinkInput {
fPort: number // LoRaWAN FPort
bytes: number[] // Raw payload as array of unsigned bytes (0-255)
recvTime?: string // Optional ISO timestamp (if your LNS provides it)
}
interface HexUplinkInput {
fPort: number // LoRaWAN FPort
bytes: string // Raw payload as hex-encoded string (case-insensitive, even length)
recvTime?: string // Optional ISO timestamp (if your LNS provides it)
}Return type (shared by all decode helpers):
type Result = {
data: Record<string, any> // Parsed key/value pairs
warnings?: string[] // Non-fatal anomalies
} | {
errors: string[] // Fatal or structural issues only
}To understand the data field, take a look at the examples and the schema definition.
Supported channels to identify different sensors by:
// Is used in the returned data
type ChannelName = 'strain' | 'device temperature' | 'battery voltage'Channels that support adjusting the measurement range:
type AdjustableChannelName = 'strain'Channel Configuration:
| Channel Name | Default Min | Default Max | Unit | Configurable |
|---|---|---|---|---|
strain | -312.5 | 312.5 | µε | Yes |
device temperature | -45 | 110 | °C | No |
battery voltage | 0 | 5 | V | No |
decodeUplink(input)
function decodeUplink(input: UplinkInput): ResultdecodeHexUplink(hexInput)
function decodeHexUplink(hexInput: HexUplinkInput): Resultbytes must have even length; case-insensitive.
adjustMeasuringRange(channel, range)
// Will throw on invalid channel name or if the channel disallows range updates
function adjustMeasuringRange(
channelName: AdjustableChannelName,
range: {
start: number
end: number
}
): voidApplies to future decodes only.
adjustRoundingDecimals(decimals)
// Smartly adjust number of decimals for rounded values
// Impacts all numeric values in all outputs
// Default is 4
function adjustRoundingDecimals(decimals: number): voidApplies to future decodes only.
Verifying Measurement Ranges
Strain channel: The default range (-312.5 to 312.5 µε) may not match your device. Check your device specifications or purchase documentation for the actual configured strain range.
Device temperature and battery voltage: These channels have fixed ranges that cannot be adjusted (-45 to 110°C and 0-5V respectively).
TULIP2 Identification Frames
Identification messages (message type 7/0x07) confirm the configured ranges:
Example TULIP2 identification frame:
{
"data": {
"messageType": 7,
"configurationId": 65,
"deviceInformation": {
"productIdName": "NETRIS_F",
"measurementType": "relative",
"measurementRangeStart": -312.5,
"measurementRangeEnd": 312.5,
"measurementRangeStartDeviceTemperature": -45.0,
"measurementRangeEndDeviceTemperature": 110.0,
"measurementUnit": 185,
"unitName": "µeps",
"deviceTemperatureUnit": 32,
"deviceTemperatureUnitName": "°C"
}
}
}Quick Start
- Check your device's actual strain range from device specifications or identification frames (see above)
- Add configuration code below at the bottom of your parser file
- Add wrapper function if your network server is non-compliant:
function decode(input) { return decodeUplink(input) }
Configuration code (add at bottom of parser file):
// Replace values with your device's actual strain range from specifications or identification frames
adjustMeasuringRange('strain', { start: -312.5, end: 312.5 })NPM Module Inclusion
| Device | Included | Factory function |
|---|---|---|
| NETRIS_F (prev. F98W6) | ✔️ | NetrisFParser |
