Skip to content

Commit

Permalink
Merge branch 'master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
Jaime-Trinidad authored Nov 14, 2024
2 parents 0458606 + be74ce9 commit f1e2570
Show file tree
Hide file tree
Showing 11 changed files with 427 additions and 59 deletions.
65 changes: 21 additions & 44 deletions vendor/accuwatch/3chbatteryvoltagesensor.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
name: LoRaWAN Voltage Sensor # Device name can not contain the vendor name
description: 3 Channel Battery Volrage Sensor # Description of the device
name: LoraWan 3ch Voltage Sensor # Device name can not contain the vendor name
description: This custom-designed 3-Channel Battery Voltage Sensor is engineered to monitor the voltage of up to three separate batteries with a shared ground connection, making it ideal for applications where multiple batteries need simultaneous tracking. Constructed with an IP67-rated waterproof enclosure, it is built to withstand harsh environments, including marine and outdoor applications, where water and dust resistance are crucial.

# Hardware versions (optional, use when you have revisions)
hardwareVersions:
- version: '1.0'
numeric: 1
- version: '1.0-rev-A'
numeric: 2

# Firmware versions (at least one is mandatory)
firmwareVersions:
Expand All @@ -17,23 +15,15 @@ firmwareVersions:
hardwareVersions:
- '1.0'

# Firmware features (optional)
# Valid values are: remote rejoin (trigger a join from the application layer), transmission interval (configure how
# often he device sends a message).
# features:
# - remote rejoin
# - transmission interval

# LoRaWAN Device Profiles per region
# Supported regions are EU863-870, US902-928, AU915-928, AS923, CN779-787, EU433, CN470-510, KR920-923, IN865-867,
# RU864-870
profiles:
EU863-870:
# Optional identifier of the vendor of the profile. When you specify the vendorID, the profile is loaded from
# the vendorID's folder. This allows you to reuse profiles from module or LoRaWAN end device stack vendors.
# If vendorID is empty, the current vendor ID is used. In this example, the vendorID is the current vendor ID,
# which is verbose.
vendorID:
vendorID: accuwatch
# Identifier of the profile (lowercase, alphanumeric with dashes, max 36 characters)
id: 3chbatteryvoltagesensor-profile
lorawanCertified: true
Expand All @@ -59,10 +49,6 @@ sensors:
additionalRadios:
- wifi

# Bridge interfaces (optional)
# Valid values are: modbus, m-bus, can bus, rs-485, sdi-12, analog, ethernet.
# bridgeInterfaces:

# Dimensions in mm (optional)
# Use width, height, length and/or diameter
dimensions:
Expand All @@ -79,35 +65,34 @@ weight: 190
# type: AA

# # Operating conditions (optional)
# operatingConditions:
# # Temperature (Celsius)
# temperature:
# min: -30
# max: 85
# # Relative humidity (fraction of 1)
# relativeHumidity:
# min: 0
# max: 0.97
# operatingConditions:
# # Temperature (Celsius)
# temperature:
# min: -30
# max: 85
# # Relative humidity (fraction of 1)
# relativeHumidity:
# min: 0
# max: 0.97

# IP rating (optional)
ipCode: IP67

# Key provisioning (optional)
# Valid values are: custom (user can configure keys), join server and manifest.
keyProvisioning:
# - custom
- join server

# Key programming (optional)
# Valid values are: bluetooth, nfc, wifi, ethernet (via a webpage), serial (when the user has a serial interface to set the keys)
# and firmware (when the user should change the firmware to set the keys).
#keyProgramming:
# keyProgramming:
# - serial
# - firmware

# Key security (optional)
# Valid values are: none, read protected and secure element.
#keySecurity: none
keySecurity: read protected

# Firmware programming (optional)
# Valid values are: serial (when the user has a serial interface to update the firmware), ethernet, fuota lorawan (when the device
Expand All @@ -117,27 +102,19 @@ firmwareProgramming:
- fuota lorawan

# Product and data sheet URLs (optional)
# productURL: https://accuwatch.nl/LoRaWAN-voltage-sensor
productURL: https://accuwatch.nl/LoRaWAN-voltage-sensor
# dataSheetURL: https://accuwatch.nl/LoRaWAN-voltage-sensor/datasheet.pdf
# Link to simple, easy onboarding instructions for the device (optional).
# Please do not use this for marketing or overly technical documents like a data sheet.
# onboardingGuideURL: https://www.thethingsindustries.com/docs/devices/models/windsensor

# Commercial information
# resellerURLs:
# - name: 'Reseller 1'
# region: # valid regions are: Argentina, Australia, Brazil, Canada, China, European Union, India, Indonesia.
# # Japan, Mexico, Russia, Saudi Arabia, South Africa, South Korea, Turkey, United States, Other
# - European Union
# url: https://accuwatch.nl/reseller1
# - name: 'Reseller 2'
# region:
# - United States
# - Canada
# url: https://accuwatch.nl/reseller2
# msrp:
# EUR: 90
# USD: 120
resellerURLs:
- name: 'AccuWatch'
region: # valid regions are: Argentina, Australia, Brazil, Canada, China, European Union, India, Indonesia.
# # Japan, Mexico, Russia, Saudi Arabia, South Africa, South Korea, Turkey, United States, Other
- European Union
url: https://accuwatch.nl/

# Photos
photos:
Expand Down
14 changes: 0 additions & 14 deletions vendor/accuwatch/index.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,3 @@
# This example contains just one end device: windsensor. It is referenced here in the index.

endDevices:
# Unique identifier of the end device (lowercase, alphanumeric with dashes, max 36 characters)
- 3chbatteryvoltagesensor # look in 3chbatteryvoltagesensor.yaml for the end device definition

# The profileIDs is a distinct value for every unique profile listed in the vendor's folder.
# This value can be freely issued by the vendor and is also used on the QR code for LoRaWAN devices, see
# https://lora-alliance.org/wp-content/uploads/2020/11/TR005_LoRaWAN_Device_Identification_QR_Codes.pdf#page=8
# It can either be a combo of device ID + hardware version + firmware version + region, or profile ID + codec ID
# NOTE: The profileIDs is different from the vendorID.
profileIDs:
'1':
endDeviceID: '3chbatteryvoltagesensor'
firmwareVersion: '1.0'
hardwareVersion: '1.0'
region: 'EU863-870'
3 changes: 3 additions & 0 deletions vendor/index.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2102,3 +2102,6 @@ vendors:
website: https://www.infrafon.com/
social:
linkedin: https://de.linkedin.com/company/infrafon

- id: makerfabs
name: AgroSense
61 changes: 61 additions & 0 deletions vendor/makerfabs/ath20-codec.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Uplink decoder decodes binary data uplink into a JSON object (optional)
# For documentation on writing encoders and decoders, see: https://www.thethingsindustries.com/docs/integrations/payload-formatters/javascript/
uplinkDecoder:
fileName: ath20.js
# Examples (optional)
examples:
- description: Temperature
input:
fPort: 2
bytes: [0x00, 0x01, 0x1F, 0x02, 0x0B, 0x01, 0x32, 0x00, 0x00, 0x00, 0x01]
output:
data: { 'Bat': 3.1, 'Humi': 52.3, 'Temp': 30.6 }
# # Normalized output, uses the normalizeUplink function (optional)
# normalizedOutput:
# data:
# - air:
# location: 'indoor'
# temperature: 30.6
# relativeHumidity: 52.3
# - air:
# location: 'outdoor'
# temperature: 27.81
# battery: 3.062

# - description: Unknown FPort
# input:
# fPort: 42
# bytes: [0x00, 0x01, 0x1F, 0x02, 0x0B, 0x01, 0x32, 0x00, 0x00, 0x00, 0x01]
# output:
# errors:
# - unknown FPort

# Downlink encoder encodes JSON object into a binary data downlink (optional)
downlinkEncoder:
fileName: ath20.js
examples:
- description: Change Reporting interval
input:
data:
minutes: 10
output:
bytes: [0x00, 0x00, 0x02, 0x58]
fPort: 1
# - description: Invalid color
# input:
# data:
# led: blue
# output:
# errors:
# - invalid LED color
# # Downlink decoder decodes the encoded downlink message (optional, must be symmetric with downlinkEncoder)
# downlinkDecoder:
# fileName: Air-Temperature-and-Humidity-Sensor.js
# examples:
# - description: Turn green
# input:
# fPort: 2
# bytes: [1]
# output:
# data:
# led: green
Binary file added vendor/makerfabs/ath20.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
54 changes: 54 additions & 0 deletions vendor/makerfabs/ath20.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
function decodeUplink(input) {

// var num = input.bytes[0] * 256 + input.bytes[1]
var bat = input.bytes[2] / 10.0
var humi = (input.bytes[3] * 256 + input.bytes[4]) / 10.0
// var temp = (input.bytes[5] * 256 + input.bytes[6] ) / 10.0

var temp = input.bytes[5] * 256 + input.bytes[6]
if (temp >= 0x8000) {
temp -= 0x10000;
}
temp = temp / 10.0


return {
data: {
Bat: bat,
Humi: humi,
Temp: temp,
},

};
}



// Encoder function to be used in the TTN console for downlink payload
function encodeDownlink(input) {
var minutes = input.data.minutes;

// Converting minutes to seconds
var seconds = minutes * 60;

// If the number of seconds is less than 300 seconds, set it to 300 seconds
if (seconds < 300) {
seconds = 300;
}
var bytes1 = (seconds >> 24) & 0xFF;
var bytes2 = (seconds >> 16) & 0xFF;
var bytes3 = (seconds >> 8) & 0xFF;
var bytes4 = seconds & 0xFF;

// var payload = [
// (seconds >> 24) & 0xFF,
// (seconds >> 16) & 0xFF,
// (seconds >> 8) & 0xFF,
// seconds & 0xFF
// ];

return {
bytes: [bytes1,bytes2,bytes3,bytes4],
fPort: 1,
};
}
109 changes: 109 additions & 0 deletions vendor/makerfabs/ath20.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
name: ath20 - air-temperature-and-humidity-sensor # Device name can not contain the vendor name
description: LoRaWAN Temperature & Humidity sensor

# Hardware versions (optional, use when you have revisions)
hardwareVersions:
- version: '1.0'
numeric: 1

# Firmware versions (at least one is mandatory)
firmwareVersions:
- # Firmware version
version: '2.0'
numeric: 1

# Corresponding hardware versions (optional)
hardwareVersions:
- '1.0'

# # Firmware features (optional)
# # Valid values are: remote rejoin (trigger a join from the application layer), transmission interval (configure how
# # often he device sends a message).
# features:
# - remote rejoin
# - transmission interval

# LoRaWAN Device Profiles per region
# Supported regions are EU863-870, US902-928, AU915-928, AS923, CN779-787, EU433, CN470-510, KR920-923, IN865-867,
# RU864-870
profiles:
EU863-870:
# # Optional identifier of the vendor of the profile. When you specify the vendorID, the profile is loaded from
# # the vendorID's folder. This allows you to reuse profiles from module or LoRaWAN end device stack vendors.
# # If vendorID is empty, the current vendor ID is used. In this example, the vendorID is the current vendor ID,
# # which is verbose.
# vendorID: example
# Identifier of the profile (lowercase, alphanumeric with dashes, max 36 characters)
id: eu868-profile
lorawanCertified: true
codec: ath20-codec
US902-928:
id: us915-profile
lorawanCertified: true
codec: ath20-codec

# - # You can add more firmware versions and use different profiles per version
# version: '2.0'
# numeric: 2
# hardwareVersions:
# - '1.0-rev-A'
# profiles:
# EU863-870:
# id: windsensor-profile
# lorawanCertified: true
# codec: windsensor-codec
# US902-928:
# id: windsensor-profile
# lorawanCertified: true
# codec: windsensor-codec
# AS923:
# id: windsensor-profile
# codec: windsensor-codec

# Sensors that this device features (optional)
# Valid values are:
# 4-20 ma, accelerometer, altitude, analog input, auxiliary, barometer, battery, button, bvoc, co, co2, conductivity, current, digital input,
# digital output, dissolved oxygen, distance, dust, energy, gps, gyroscope, h2s, hall effect, humidity, iaq, infrared, leaf wetness, level,
# light, lightning, link, magnetometer, moisture, motion, nfc, no, no2, o3, occupancy, optical meter, particulate matter, ph, pir,
# pm2.5, pm10, potentiometer, power, precipitation, pressure, proximity, pulse count, pulse frequency, radar, rainfall, reed switch, rssi,
# sap flow, smart valve, smoke, snr, so2, solar radiation, sound, strain, surface temperature, switch, temperature, tilt, time, turbidity,
# tvoc, uv, vapor pressure, velocity, vibration, voltage, water potential, water, weight, wifi ssid, wind direction, wind speed.
sensors:
- temperature
- humidity

# Operating conditions (optional)
operatingConditions:
# Temperature (Celsius)
temperature:
min: -40
max: 85
# Relative humidity (fraction of 1)
relativeHumidity:
min: 0
max: 1

# # IP rating (optional)
# ipCode: IP68

# Product and data sheet URLs (optional)
productURL: https://www.agrosense.cc/pd.jsp?recommendFromPid=0&id=6&fromMid=366
dataSheetURL: https://github.com/Makerfabs/Agrosense-Decoder/blob/main/AgroSense%20LoRaWAN%40%20Sensor%20Catalogue_V1.0.pdf

# Commercial information
sellerURLs:
- name: 'makerfabs'
region: # valid regions are: Argentina, Australia, Brazil, Canada, China, European Union, India, Indonesia.
# Japan, Mexico, Russia, Saudi Arabia, South Africa, South Korea, Turkey, United States, United Kingdom, Other
- china
url: http://www.makerfabs.com/

# Photos
photos:
main: ath20.jpg # Image needs to have a transparent background
# other:
# - windsensor-package.png # Image needs to have a transparent background

# Youtube or Vimeo Video (optional)
videos:
main: https://www.youtube.com/watch?v=SXF6HpzQwL0
Loading

0 comments on commit f1e2570

Please sign in to comment.