Senseway ağ geçidi

Senseway, Wired Pro, Infinity, Infinity Pro ve Nomad sensörleri için bir ağ geçididir. Senseway, Sensemore sensörleri için ağ bağlantısı, ölçüm planlaması, uyku modu, donanım yazılımı güncellemesi ve daha fazlasını yönetir.

Senseway donanımı veri toplama cihazları sayfasında anlatılıyor. Kurulum rehberi için bize ulaşabilirsiniz.

Senseway sistem entegrasyonuna başlamadan önce, Senseway’inizin MQTT, NTP ve HTTP ayarlarını yapılandırın.

Yapılandırma Sayfasına Erişim

Senseway takıldığında, kısa bir süre sonra SENSEWAY-CA:50:DA:XX:XX:XX SSID ile bir Wi-Fi erişim noktası ağı yayınlar. AP’ye bağlanmak için varsayılan şifreyi kullanın. Cihazınız, captive portalda yapılandırma sayfasına yönledricektir. Cihazınız otomatik olarak captive portalı açmazsa, varsayılan tarayıcınızda http://192.168.4.1 adresine gidin.
Senseway, Wi-Fi veya Ethernet üzerinden bir ağa bağlandıktan sonra, yapılandırma sayfasına aynı ağdan cihazın yerel IP adresiyle erişilebilir. Yerel IP adresi, yapılandırma sayfasının ana sekmesinde görüntülenir ve ayrıca MQTT bilgi mesajında gösterilir.

Bağlantı

Wi-Fi & Ethernet

Senseway, ağ bağlantıları için hem Wi-Fi hem de Ethernet’i destekler. Varsayılan olarak, ağ adaptörü Wi-Fi olarak ayarlanmıştır, ancak bu ayar, Konfigürasyon sayfasının Ayarlar > Bağlantı bölümünde değiştirilebilir.

NTP

Senseway tarafından gönderilen ölçüm mesajlarında zaman bilgisi de kullanılır. Bunun için zaman senkronizasyonu gereklidir. Yerel veya özel kurulumlarda, Senseway Konfigürasyon sayfasındaki Settings > NTP bölümünden varsayılan NTP sunucusu değiştirilebilir. Varsayılan: http://pool.ntp.org/

MQTT

Senseway, MQTT / TLS yapılandırmasına ihtiyaç duyar ve aşağıdakileri içeren çeşitli kimlik doğrulama mekanizmalarını destekler: düz metin MQTT, parola ile veya parolasız MQTTs ve istemci sertifikasıyla MQTTs. Kullanılacak MQTT Broker Sunucusu TLS’yi desteklemelidir ve sertifika tabanlı bağlantılar için aşağıdaki bilgileri sağlamalıdır:

  • MQTT endpoint (mqtts: //my-mqtt-broker.server: 8883)
  • CA (CA sertifikası)
  • İstemci Sertifikası (CA tarafından oluşturulan ve imzalanan sertifika)
  • İstemci Anahtarı (CA tarafından oluşturulan sertifikanın özel anahtarı)

Gerekli sertifikalar ve endpoint bilgileri, Senseway konfigürasyon sayfasındaki Settings > MQTT bölümünde tanımlanır. Senseway, gelecekteki MQTT bağlantıları için bu sertifikaları kullanır.

Detaylar https://www.hivemq.com/blog/mqtt-security-fundamentals-tls-ssl/

HTTP

Senseway, HTTP üzerinden kontrol edilebilir, bu da bağlı cihazlar üzerinde yapılandırma değişiklikleri ve ölçüm işlemleri yapmayı sağlar. HTTP uç noktalarına erişim, önce bir giriş yapmayı gerektirir, ardından alınan belirteç, sonraki iletişimlerde kullanılmalıdır. HTTP uç noktaları hakkında detaylı bilgi, Senseway Yapılandırma Web Sayfası tarafından kullanılanlar dahil, HTTP Entegrasyon bölümünde mevcuttur.

MQTT Entegrasyonu

Bu bölüm, Senseway ile MQTT üzerinden iletişim kurarken kullanılacak konuları ve mesajların nasıl yorumlanacağını açıklar.

Aktör sends Payload with PayloadType format to Topic

Bilgi

Senseway açıldığında, cihazın temel bilgilerini içeren bir durum mesajı yayınlar. Bu mesaj, aşağıdaki konu kullanılarak da alınabilir:

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/info JSON Empty JSON
Senseway sensemore/<GatewayMac>/info/acceptedJSON
{
  "Product": "Senseway",
  "Current Running Application": "<SENSEWAY_VERSION>",
  "Version": "<FIRMWARE_VERSION>",
  "Compile Date": "<FIRMWARE_COMPILE_DATE>",
  "Compile Time": "<FIRMWARE_COMPILE_TIME>",
  "ESP-IDF Version": "<ESPRESSIF_IDF_VERSION>",
  "Network Mode": "<SELECTED_NETWORK_ADAPTOR>",
  "RSSI": <RECEIVED_SIGNAL_STRENTGH_INDICATOR>,
  "Local IP": "<ASSIGNED_LOCAL_IP>",
  "Network MAC": "<NETWORK_MAC_ADDRESS>",
  "Last Reset Reason": "<RESET_REASON>",
  "Runtime MS": <TIME_SINCE_LAST_RESET>,
  "Memory Info": {
    "Total Free Bytes": <STORAGE_CAPACITY>,
    "Total Allocated Bytes": <USABLE_STORAGE>,
    "Min Free Bytes": <MIN_FREE_BTYES>,
    "Largest Free Bytes": <LARGEST_FREE_BYTES>
  }
}
{
  "Product": "Senseway",
  "Current Running Application": "SENSEWAY-3-0-0",
  "Version": "3.0.0",
  "Compile Date": "Jan 8 2018",
  "Compile Time": "12:00:00",
  "ESP-IDF Version": "v5.1.4",
  "Network Mode": "WIFI",
  "RSSI": -73,
  "Local IP": "192.168.1.111",
  "Network MAC": "00:00:00:00:00:00",
  "Last Reset Reason": "POWERON",
  "Runtime MS": 281440,
  "Memory Info": {
    "Total Free Bytes": 4034708,
    "Total Allocated Bytes": 403896,
    "Min Free Bytes": 4024696,
    "Largest Free Bytes": 3997696
  }

Havadan Yazılım Güncellemesi (OTA)

Sensemore cihazları HTTP üzerinden yazılım güncellemesini kabul eder. Cihazda yazılım güncellemesi başlatmak için, geçerli bir binary bağlantısı yazılım güncelleme konusuna gönderilir. Senseway, verilen URL’den binary dosyasını indirir ve yazılım güncellemesini başlatır.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/ota JSON http url
{
  "url": "http://link.mydomain.com/Senseway.bin"
}
Senseway sensemore/<GatewayMac>/ota/accepted JSON Status JSON
{
  "status": "OTA accepted"
}
Senseway sensemore/<GatewayMac>/ota/rejected Text Error Text Invalid payload! Url can't be null. Valid payload scheme: { "url":"http://link.mydomain.com/Senseway.bin" }
Senseway sensemore/<GatewayMac>/restart JSON Status JSON
{
  "status": "Restarting device due to OTA"
}

Yeniden Başlatma

Senseway cihazını uzaktan yeniden başlatmak için aşağıdaki konu kullanılır.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/restart JSON Empty JSON

Ölçüm Yükleme URL’si

Senseway, bağlı cihazların ölçüm yüklemelerini MQTT üzerinden meta veriler yayınlayarak ve sinyal biney dosyalarını HTTP aracılığıyla ileterek yönetir.
Varsayılan ikili yükleme URL’si https://core.sensemore.io/measurement/ şeklindedir, ancak bu URL aşağıdaki konu başlığı kullanılarak alınabilir veya değiştirilebilir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/binaryurl/get JSON Empty JSON
Senseway sensemore/<GatewayMac>/binaryurl/get/accepted JSON Binary URL JSON
{
  "binaryurl": "https://core.sensemore.io/measurement"
}
Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/binaryurl/set JSON Binary URL JSON
{
  "binaryurl": "https://core.sensemore.io/measurement"
}
Senseway sensemore/<GatewayMac>/binaryurl/set/accepted JSON Status JSON
{
  "status": "Set Binary url accepted",
  "binaryurl": "https://core.sensemore.io/measurement"
}

Senseway - Wired Pro İlestişim Hızı

Senseway, Wired Pro ile RS485 üzerinden iletişim kurar ve bu sistemin teorik menzili 1 kilometreye kadar ulaşabilir. Bu, Senseway ile Wired Pro’nun 1 km mesafeye kadar birbirinden uzak yerleştirilip bir RS485 kablosu ile bağlanmasını sağlar. Aralarındaki mesafe arttıkça, iletişim güvenilirliği artırmak için baudrate değeri düşürülmelidir.Baudrate, saniyede iletilen bit sayısını ifade eder. Daha kısa mesafelerde, baudrate’i artırmak Senseway ve Wired Pro arasındaki iletişim hızını yükseltebilir. Baudrate, aşağıdaki MQTT konu başlığı kullanılarak görüntülenebilir veya değiştirilebilir:

:warning: Birden fazla Wired Pro’yu aynı Senseway’e bağlarken, bir bus topolojisi kullanılmalı ve paralel hatların olmamasına dikkat edilmelidir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/baudrate/get JSON Empty JSON
Senseway sensemore/<GatewayMac>/baudrate/get/accepted JSON Baudrate JSON
{
  "baudrate": 921600
}

Geçerli baudrate değerleri:: 115200, 460800, 921600, 1000000

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/baudrate/set JSON Baudrate JSON
{
  "baudrate": 921600
}
Senseway sensemore/<GatewayMac>/baudrate/set/accepted JSON Status JSON
{
  "status": "Set baud rate accepted",
  "baudrate": 921600
}

Cihaz Listesi

Senseway’e bağlı cihazların ve bunların ölçüm yapılandırmalarının listesi, aşağıdaki konu başlığı kullanılarak alınabilir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device-list/get JSON Empty JSON
Senseway sensemore/<GatewayMac>/device-list/get/accepted JSON Scan JSON
{
  "devices": [
    {
      "mac": "CA:B8:41:XX:XX:XX",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    },
    {
      "mac": "CA:B8:30:XX:XX:XX",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    }
  ]
}

Senseway, her atanan sensörün bağlantı durumunu bir tarama komutu aldığında değerlendirir. Ardından, bağlı her cihazın Donanım Yaılımı Sürümünü içeren bir sonuç mesajı yayınlar.

:warning: Infinity, Infinity Pro ve Nomad, uyku programında iseler “not scanned” olarak görünebilir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/devices/get JSON Empty JSON
Senseway sensemore/<GatewayMac>/devices/get/accepted JSON Config JSON
{
  "devices": [
    {
      "mac": "CA:B8:41:XX:XX:XX",
      "status": "connected",
      "version": "2.1.14",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    },
    {
      "mac": "CA:B8:30:XX:XX:XX",
      "status": "scanned",
      "rssi": -58,
      "version": "3.0,0",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    }
  ]
}

Havadan Cihaz Yazılım Güncellemesi (OTA)

Sensemore uç nokta cihazları, donanım yazılım güncellemesini HTTP üzerinden kabul eder. Uç nokta cihazında donanım yazılım güncellemesi başlatmak için geçerli binary link’i, donanım yazılım güncelleme konusu üzerinden gönderilir. Senseway, verilen URL’den binary dosyasını indirir ve belirli cihaz için donanım yazılım güncellemesini başlatır.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device/<DeviceMac>/ota JSON http url
{
  "url": "http://link.mydomain.com/Device.bin"
}
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/ota/accepted JSON Status JSON
{
  "status": "OTA accepted"
}
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/ota/rejected Text Error Text Invalid payload! Url can't be null. Valid payload scheme: { "url":"http://example.com" }
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/ota/done JSON Status JSON

Cihaz Ekle & Çıkar

Senseway’in sensör yapılandırması, aşağıdaki konular üzerinden MQTT üzerinden görüntülenebilir veya değiştirilebilir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device/add JSON Mac JSON
{
  "mac": "CA:B8:XX:XX:XX:XX"
}
Senseway sensemore/<GatewayMac>/device/add/accepted JSON Status JSON
{
  "status": "Device added"
}
Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device/remove JSON Mac JSON
{
  "mac": "CA:B8:XX:XX:XX:XX"
}
Senseway sensemore/<GatewayMac>/device/remove/accepted JSON Status JSON
{
  "status": "Device removed"
}

Cihaz Ölçüm Yapılandırılması

Senseway, hem kablolu sensörler (Wired Pro) hem de kablosuz sensörlerle (Infinity, Infinity Pro, Nomad) uyumludur. Kablosuz sensörler, genellikle batarya ömrünü uzatmak için bir uyku programı özelliği kullanır ve bu özellik, tek bir şarjla 2 yıla kadar çalışma sağlar.

Device Config Explaniation
{
  "device_mac": "CA:B8:XX:XX:XX:XX",
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "trigger_enabled": false
  }
}

{
  "device_mac": "Device ID",
  "device_config": {
    "rs485_resistor_enabled": Termination resistor, only applicable to Wired Pro,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": [1 for accelerometer, 0 for unkown devices],
    "scheduler_enabled": Periodic measurement & sleep schedule for Infinity family devices,
    "trigger_enabled": Senseway tigger number for a perticular device
  }
}
:warning: Birden fazla Wired Pro aynı Senseway’e bağlandığında, sadece Senseway’e en uzak olan Wired Pro’nun terminasyon direncinin etkinleştirilmesi gerekir. Aynı Senseway’e bağlı birden fazla Wired Pro’nun terminasyon dirençlerini etkinleştirmek, cihazlarınıza kalıcı olarak zarar verebilir.

Belirli bir cihazın yapılandırması, aşağıdaki konu başlığı kullanılarak alınabilir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device/<DeviceMac>/config/get JSON Empty JSON
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/config/get/accepted JSON Config JSON
{
  "device_mac": "CA:B8:XX:XX:XX:XX",
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "trigger_enabled": false
  }
}

Belirli bir cihazın yapılandırması, aşağıdaki konu başlığı kullanılarak değiştirilebilir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device/<DeviceMac>/config/set JSON Config JSON
{
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "scheduler_period": false,
    "trigger_enabled": false,
    "trigger_pin": false
  }
}
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/config/set/accepted JSON Status JSON
{
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "scheduler_period": false,
    "trigger_enabled": false,
    "trigger_pin": false
  },
  "status": "Device config updated",
  "mac": "End Node Mac"
}

Ölçüm

Senseway, planlama özelliğini kullanarak otomatik ölçüm başlatır. Ayrıca, daha önce yapılandırılan ayarlara göre Sensemore Lake platformu ve MQTT üzerinden manuel ölçümleri kabul eder. MQTT ölçüm konuları aşağıdaki gibidir.

Actor Topic Payload Type Payload Schema Example
User sensemore/<GatewayMac>/device/<DeviceMac>/measure/<MeasuremnetUUID> JSON Empty JSON
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/measure/<MeasuremnetUUID>/accepted JSON Status JSON
{
  "status": "Measurement started"
}
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/measure/<MeasuremnetUUID>/done JSON Status JSON
{
  "status": "Measurement done"
}
Senseway sensemore/<GatewayMac>/device/<DeviceMac>/measure/<MeasuremnetUUID>/metadatas JSON Metadata JSON
{
  "unixtimestamp": 1734443808,
  "calibrated_sampling_rate": 26746,
  "temperature": 22.719999313354492,
  "battery_voltage": 4.0489997863769531,
  "sampling_rate": 25600,
  "sample_size": 50000,
  "accelerometer_range": 16,
  "measurement_type": 1,
  "measurement_buffer_size": 300000
}

HTTP Entegrasyonu

Senseway ve bağlı cihazlarının ayarlarını görüntülemek veya değiştirmek için kapsamlı HTTP uç noktaları bulunur.

Bazı uç noktalar, başlıkta bir kimlik doğrulama tokenı gerektirir. Kimlik doğrulama tokını gerektiren uç noktalar, 🔐 simgesiyle işaretlenmiştir. Bu tokını, aşağıda gösterildiği gibi Giriş uç noktası kullanılarak elde edilir:

Giriş

Method Endpoint Content-Type Example
POST /login application/json
{
  "password": "<DEFAULT_PASSWORD>"
}
GET /login application/json
{
  "token": "CLjziyTeTzlMsv100mvgkxnTQl1nGYXpQvsIStAW16WrMjxzLvhNTOGhcFFzU38mT8sHKFhxBOm3309qxSmzKIHJux3rUbjVTkywmayA1O05hKaQn9jlY99YMmp1NorF"
}

Tokenını başlığa ekle

Kimlik doğrulama tokenı Giriş uç noktası aracılığıyla alındıktan sonra, her HTTP isteğinde 🔐 uç noktaları için başlığa eklenmesi gerekir, aşağıda gösterildiği gibi.

{
  "Authorization": "CLjziyTeTzlMsv100mvgkxnTQl1nGYXpQvsIStAW16WrMjxzLvhNTOGhcFFzU38mT8sHKFhxBOm3309qxSmzKIHJux3rUbjVTkywmayA1O05hKaQn9jlY99YMmp1NorF"
}

Çıkış

Method Endpoint Content-Type Example
POST /logout application/json

Information

Cihaz hakkında temel bilgiler, Donanım Yazılımı Sürümü dahil, aşağıdaki HTTP uç noktası kullanılarak alınabilir:

Method Endpoint Content-Type Example
GET /info application/json
{
  "mac_address": "CA:B8:50:XX:XX:XX",
  "version": "3.1.9",
  "is_network_connected": true,
  "is_internet_connected": true
}

🔐 Şifre Değisimi

Cihazın HTTP ve web yapılandırma arayüzü şifresi, aşağıdaki HTTP uç noktası kullanılarak değiştirilebilirç

Method Endpoint Content-Type Example
PUT /change_password application/json
{
  "old_password": "<DEAFULT_PASSWORD>",
  "new_password": "12345678"
}

🔐 NTP

Zaman bilgisi, Senseway tarafından gönderilen ölçüm mesajlarının bir parçasıdır. NTP yapılandırması, aşağıdaki HTTP uç noktası kullanılarak alınabilir veya değiştirilebilir.

Method Endpoint Content-Type Example
GET /sntp application/json
{
  "sntp_server": "http://pool.ntp.org/"
}
POST /sntp application/json
{
  "sntp_server": "http://pool.ntp.org/"
}

🔐 Havadan Yazılım Güncellemesi (OTA)

Method Endpoint Content-Type Example
POST /ota application/octet-stream {}

🔐 Yeniden Başlatma

Senseway, aşağıdaki uç nokta kullanılarak yeniden başlatılabilir.

Method Endpoint Content-Type Example
GET /restart application/json

🔐 Ölçüm Yükleme URL’si

Senseway, bağlı cihazların ölçüm yüklemelerini MQTT üzerinden meta veriler yayınlayarak ve sinyal binary dosyalarını HTTP aracılığıyla ileterek yönetir.
Varsayılan binary yükleme URL’si https://core.sensemore.io/measurement/ şeklindedir, ancak bu URL aşağıdaki uç nokta kullanılarak alınabilir veya değiştirilebilir.

Method Endpoint Content-Type Example
GET /binary-url application/json
{
  "url": "https://core.sensemore.io/measurement"
}
POST /binary-url application/json
{
  "url": "https://core.sensemore.io/measurement"
}

🔐 Senseway - Wired Pro İlestişim Hızı

Senseway, Wired Pro ile RS485 üzerinden iletişim kurar ve bu sistemin teorik menzili 1 kilometreye kadar ulaşabilir. Bu, Senseway ile Wired Pro’nun 1 km mesafeye kadar birbirinden uzak yerleştirilip bir RS485 kablosu ile bağlanmasını sağlar. Aralarındaki mesafe arttıkça, iletişim güvenilirliği artırmak için baudrate değeri düşürülmelidir.Baudrate, saniyede iletilen bit sayısını ifade eder. Daha kısa mesafelerde, baudrate’i artırmak Senseway ve Wired Pro arasındaki iletişim hızını yükseltebilir. Baudrate, aşağıdaki MQTT konu başlığı kullanılarak görüntülenebilir veya değiştirilebilir:

:warning: Birden fazla Wired Pro’yu aynı Senseway’e bağlarken, bir bus topolojisi kullanılmalı ve paralel hatların olmamasına dikkat edilmelidir.

Method Endpoint Content-Type Example
GET /baudrate application/json
{
  "baudrate": 921600
}
POST /baudrate application/json
{
  "baudrate": 921600
}

Geçerli baudrate değerleri:: 115200, 460800, 921600, 1000000

🔐 Cihaz Listesi

Senseway’e bağlı cihazların ve bunların ölçüm yapılandırmalarının listesi, aşağıdaki konu başlığı kullanılarak alınabilir.

Method Endpoint Content-Type Example
GET /device-count application/json
{
  "count": 2
}
Method Endpoint Content-Type Example
GET /device-list application/json
{
  "devices": [
    {
      "mac": "CA:B8:41:XX:XX:XX",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    },
    {
      "mac": "CA:B8:30:XX:XX:XX",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    }
  ]
}

Senseway, her atanan sensörün bağlantı durumunu bir tarama komutu aldığında değerlendirir. Ardından, bağlı her cihazın Donanım Yaılımı Sürümünü içeren bir sonuç mesajı yayınlar.

:warning: Infinity, Infinity Pro ve Nomad, uyku programında iseler “not scanned” olarak görünebilir.

Method Endpoint Content-Type Example
GET /devices application/json
{
  "devices": [
    {
      "mac": "CA:B8:41:XX:XX:XX",
      "status": "connected",
      "version": "2.1.14",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    },
    {
      "mac": "CA:B8:30:XX:XX:XX",
      "status": "scanned",
      "rssi": -58,
      "version": "3.0,0",
      "device_config": {
        "rs485_resistor_enabled": false,
        "trigger_enabled": false,
        "accelerometer_range": 16,
        "sampling_rate": 25600,
        "sample_size": 50000,
        "sensor_type": 1,
        "scheduler_enabled": false
      }
    }
  ]
}

🔐 Havadan Cihaz Yazılım Güncellemesi (OTA)

Method Endpoint Content-Type Example
POST /device-ota application/octet-stream
{}

🔐 Cihaz Ekle & Çıkar

Senseway’in sensör yapılandırması, aşağıdaki HTTP uç noktaları üzerinden görüntülenebilir veya değiştirilebilir.

Method Endpoint Content-Type Example
POST /device-add application/json
{
  "mac": "CA:B8:XX:XX:XX:XX"
}
Method Endpoint Content-Type Example
POST /device-remove application/json
{
  "mac": "CA:B8:XX:XX:XX:XX"
}

🔐 Cihaz Ölçüm Yapılandırılması

Senseway, hem kablolu sensörler (Wired Pro) hem de kablosuz sensörlerle (Infinity, Infinity Pro, Nomad) uyumludur. Kablosuz sensörler, genellikle batarya ömrünü uzatmak için bir uyku programı özelliği kullanır ve bu özellik, tek bir şarjla 2 yıla kadar çalışma sağlar.

Device Config Explaniation
{
  "device_mac": "CA:B8:XX:XX:XX:XX",
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "trigger_enabled": false
  }
}

{
  "device_mac": "Device ID",
  "device_config": {
    "rs485_resistor_enabled": Termination resistor, only applicable to Wired Pro,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": [1 for accelerometer, 0 for unkown devices],
    "scheduler_enabled": Periodic measurement & sleep schedule for Infinity family devices,
    "trigger_enabled": Senseway tigger number for a perticular device
  }
}

:warning: Birden fazla Wired Pro aynı Senseway’e bağlandığında, sadece Senseway’e en uzak olan Wired Pro’nun terminasyon direncinin etkinleştirilmesi gerekir. Aynı Senseway’e bağlı birden fazla Wired Pro’nun terminasyon dirençlerini etkinleştirmek, cihazlarınıza kalıcı olarak zarar verebilir.

Belirli bir cihazın yapılandırması, aşağıdaki konu başlığı kullanılarak alınabilir.

Method Endpoint Content-Type Example
GET /device-config application/json
{
  "device_mac": "CA:B8:XX:XX:XX:XX",
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "trigger_enabled": false
  }
}
POST /device-config application/json
{
  "device_mac": "CA:B8:XX:XX:XX:XX",
  "device_config": {
    "rs485_resistor_enabled": false,
    "accelerometer_range": 16,
    "sampling_rate": 25600,
    "sample_size": 50000,
    "sensor_type": 1,
    "scheduler_enabled": false,
    "trigger_enabled": false
  }
}

🔐 Ölçüm

Senseway, planlama özelliğini kullanarak otomatik ölçüm başlatır. Ayrıca, daha önce yapılandırılan ayarlara göre Sensemore Lake platformu, MQTT ve HTTP üzerinden manuel ölçümleri kabul eder. HTTP ölçüm uç noktaları aşağıdaki gibidir.

Method Endpoint Content-Type Example
Post /device-measure application/json
{
  "mac": "CA:B8:XX:XX:XX:XX"
}