chirpstack-application-server

ChirpStack Application Server is an open-source LoRaWAN application-server.

MIT License

Stars
491

Bot releases are hidden (Show)

chirpstack-application-server - 0.20.1

Published by brocaar over 6 years ago

Improvements:

  • Skip frame-counter check can now be set per device (so it can be used for OTAA devices).
  • Publish codec decode errors to the application/[applicationID]/node/[devEUI]/error MQTT topic.

Pre-compiled binaries are available at: https://www.loraserver.io/lora-app-server/overview/downloads/

chirpstack-application-server - 0.20.0

Published by brocaar over 6 years ago

Features:

  • (Gateway) channel-configuration has been refactored into gateway-profiles.
    • This requires LoRa Server 0.26.0 or up.
    • This removes the channel-configuration related gateway API methods.
    • This adds gateway-profile API methods.

Bugfixes:

  • Fix leaking Redis connections on pubsub subscriber (#313.
  • Fix discovery interval validation (#226).

Upgrade notes:

In order to automatically migrate the existing channel-configuration into the
new gateway-profiles, first upgrade LoRa Server and restart it. After upgrading
LoRa App Server and restarting it, all channel-configurations will be migrated
and associated to the gateways. As always, it is advised to first make a backup
of your (PostgreSQL) database.

Pre-compiled binaries are available at: https://www.loraserver.io/lora-app-server/overview/downloads/

chirpstack-application-server - 0.19.0

Published by brocaar over 6 years ago

Features:

  • Global search on organizations, applications, devices and gateways.
  • Display live device events (the same data as publised over MQTT).
    See also Event logging.

Improvements:

  • When creating an application, show a warning when no service-profile exists.
  • When creating a gateway, show a warning when no network-server has been associated.
  • When creating a device, show a warning when no device-profile exists.

Bugfixes:

  • Fix organization selector (which would sometimes show an empty value on select).
  • Fix user selector when assigning an user to an organization (which would sometimes show an empty value on select).

Upgrade notes:

Before upgrading, the PostgreSQL pg_trgm extension needs to be enabled.
Assuming the LoRa App Server database is configured as loraserver_as this
extension could be enabled using the commands below.

Start the PostgreSQL prompt as the postgres user:

sudo -u postgres psql

Within the PostgreSQL prompt, enter the following queries:

-- change to the LoRa App Server database
\c loraserver_as

-- enable the extension
create extension pg_trgm;

-- exit the prompt
\q
chirpstack-application-server - 0.18.2

Published by brocaar over 6 years ago

Improvements:

  • Gateway discovery configuration has been moved to network-server configuration.
    • Important: when you have the gateway discover feature configured,
      you need to re-add this configuration under network-servers (web-interface).
  • Expose the following MQTT options for the MQTT gateway backend:
    • Configurable MQTT topics (uplink, downlink, join, ack, error)
    • QoS (quality of service)
    • Client ID
    • Clean session on connect
  • Expose LoRa Server version and configured region through the network-server
    API endpoint.
  • Websocket client automatically re-connects on connection error (#221)

Bugfixes:

  • The Class-C enabled checkbox was displayed twice in the web-interface.
  • Organization dropdown was not autocompleting correctly.
chirpstack-application-server - 0.18.1

Published by brocaar over 6 years ago

Features:

  • Expose Class-B fields in device-profile web-interface form.
    • Note: Class-B support is implemented since LoRa Server 0.25.0.

Bugfixes:

  • Fix factory preset frequency field in device-profile form.
chirpstack-application-server - 0.18.0

Published by brocaar over 6 years ago

Features:

  • LoRa App Server uses a new configuration file format.
    See configuration for more information.
  • Frame-logs for device are now streaming and can be downloaded as JSON file.
    • Note: the /api/devices/{devEUI}/frames (formerly Device.GetFrameLogs)
      endpoint has changed (and the gRPC method has been renamed to Device.StreamFrameLogs).
    • You need LoRa Server 0.24+ in order to use this feature.
  • Added streaming frame-logs for gateways (which also can be downloaded as JSON file).
    • You need LoRa Server 0.24+ in order to use this feature.
  • Support MQTT client certificate authentication (#201).

Upgrade notes:

When upgrading using the .deb package / using apt or apt-get, your
configuration will be automatically migrated for you. In any other case,
please see configuration.

chirpstack-application-server - 0.17.1

Published by brocaar over 6 years ago

Bugfixes:

  • Fix missing / prefix in two UI links causing a redirect to the login page.
  • Fix typo in TLS certificate loading causing error failed to find certificate PEM data in certificate input (thanks @Francisco_Rivas)
chirpstack-application-server - 0.17.0

Published by brocaar over 6 years ago

Features:

  • Device last seen timestamp is now stored and displayed in device list

  • In the service-profile, it is now possible to set the

    • Device-status request frequency
    • Report battery level
    • Report margin

    When the interval is set to > 0 and reporting of this status is enabled,
    then this information is displayed in the device list and exposed over MQTT
    and the configured integrations.

  • Extra logging has been added:

    • gRPC API calls (to the gRPC server and by the gRPC clients) are logged
      as info
    • Executed SQL queries are logged as debug
  • A warning is displayed in the web-interface when creating a service-profile
    when no network-server is connected.

  • A warning is displayed in the web-interface when creating a device-profile
    when the organization is not associated with a network-server.

Internal changes:

  • The project moved to using dep as vendoring
    tool. In case you run into compiling issues, remove the vendor folder
    (which is not part of the repository anymore) and run make requirements.

  • The front-end code has been updated to use React 16.2.0 and all dependencies
    have been updated.

Bugfixes:

  • --gw-ping-dr 0 is now handled correctly (#204)
chirpstack-application-server - 0.16.1

Published by brocaar almost 7 years ago

Features:

  • Implement client certificate validation for incoming application-server API connections.
  • Implement client certificate validation for incoming join-server API connections.
  • Implement client certificate for API connections to LoRa Server.

This removes the following CLI options:

  • --ns-ca-cert
  • --ns-tls-cert
  • --ns-tls-key

See for more information:

Improvements:

  • Optional note field (users) has been changed to textarea.
  • Description field of the gateway has been changed to textarea.

Bugfixes:

  • Fix device-profile permissions in UI for organization admins.
  • Fix device-profile list per applicationID showing all device-profile names
    and IDs on the same network-server as the service-profile associated with the
    given application.
chirpstack-application-server - 0.16.0

Published by brocaar almost 7 years ago

Features:

  • LoRa App Server is now able to decode (uplink) and encode (downlink)
    payloads using the following per application configurable codecs:

    • None (only the raw base64 encoded data will be exposed)
    • Cayenne LPP (data will be encoded / decoded using the
      Cayenne LPP encoding)
    • Custom JavaScript codec functions (you can provide your own encoding /
      decoding functions in JavaScript)

See Applications
documentation for instructions how to configure this option.

chirpstack-application-server - 0.15.0

Published by brocaar almost 7 years ago

Changes:

  • Downlink device-queue

    • Downlink device-queue has been moved from the LoRa App Server database to
      the LoRa Server database.
    • LoRa App Server sends nACK when no confirmation has been received on
      confirmed downlink transmission. See ACK notifications.
    • LoRa App Server will not re-try transmitting a confirmed downlink anymore.
    • ACK and error notifications now contain the fCnt to which the notification is related.
    • The downlink-queue is now flushed on a (re)activation.
  • Downlink device-queue API (/api/devices/{devEUI}/queue)

    • Removed DELETE /api/devices/{devEUI}/queue/{id} endpoint (as removing
      individual device-queue items will give fCnt gaps).
    • Added DELETE /api/devices/{devEUI}/queue to flush the whole device-queue.
  • Class-C

    • Class-C timeout (see device-profiles)
      has been implemented for confirmed downlink transmissions. Make sure to
      update this value for existing Class-C device-profiles to a sane value
      .

Bugfixes:

Improvements:

  • Use RFC1945 Authorization header format (thanks @fifthaxe)

Upgrading

This release depends on LoRa Server 0.23.0. Upgrade LoRa Server first.
After upgrading LoRa App Server, it will migrate the remaining
device-queue items to the LoRa Server database.

chirpstack-application-server - 0.13.3

Published by brocaar almost 7 years ago

Bugfixes:

chirpstack-application-server - 0.14.2

Published by brocaar almost 7 years ago

Bugfixes:

  • Fix unclosed response body (HTTP integrations).
chirpstack-application-server - 0.14.1

Published by brocaar almost 7 years ago

Bugfixes:

  • Remove RxInfo length validation as this slice is empty when
    Add gateway meta-data is disabled in the service-profile
    (thanks @pni-jmattison).
  • Rename /api/node/... prefix of downlink queue into /api/device/...
    (thanks @iegomez).
  • Rename DownlinkQueue... gRPC methods and structs into DeviceQueue....
chirpstack-application-server - 0.14.0

Published by brocaar almost 7 years ago

Note: this release brings many changes! Make sure (as always) to make a
backup of your PostgreSQL and Redis database before upgrading.

Changes:

  • Data-model refactor to implement service-profile, device-profile and
    routing-profile storage as defined in the
    LoRaWAN backend interfaces.

  • Application users have been removed to avoid complexity in the API
    authorization. Users can still be assigned to organizations.

  • LoRa App Server can now connect to multiple LoRa Server
    instances.

  • LoRa App Server exposes a Join-Server API (as defined in the LoRaWAN backend
    interfaces document), which LoRa Server uses as a default join-server.

  • E-mail and note field added for users.

  • Adaptive-datarate configuration has been moved to LoRa Server.

  • OTAA RX configuration has been moved to LoRa Server.

API changes:

  • New API endpoints:

    • /api/device-profiles (management of device-profiles)
    • /api/service-profiles (management of service-profiles)
    • /api/network-servers (management of network-servers)
    • /api/devices (management of devices, used to be /api/nodes, settings
      have been removed and device-profile field has been added)
  • Updated API endpoints:

    • /api/applications (management of applications, most of the settings are now part of the device-profile)
    • /api/gateways (management of gateways, network-server field has been added)
  • Removed API endpoints:

    • /api/applications/{id}/users (management of application users)
    • /api/nodes (management of nodes, has been refactored into /api/devices)

Note: these changes also apply to the related gRPC API endpoints.

How to upgrade

Note: this release brings many changes! Make sure (as always) to make a
backup of your PostgreSQL and Redis database before upgrading.

Note: When LoRa App Server is running on a different server than LoRa Server,
make sure to set the --as-public-server / AS_PUBLIC_SERVER
(default localhost:8001).

This release depends on the latest LoRa Server release (0.22).
Start with updating LoRa Server first. See also the
LoRa Server changelog.

LoRa App Server will perform the data-migration when the --db-automigrate /
DB_AUTOMIGRATE config flag is set. It will:

  • Create a network-server record + routing-profile on LoRa Server (so that
    LoRa Server knows how to connect back).
  • For each organization, it will create a service-profile
  • It will create device-profiles (either per device or per application when
    the "use application settings" is checked)
chirpstack-application-server - 0.13.2

Published by brocaar almost 7 years ago

Features:

  • The list of nodes can now be filtered on DevEUI or name prefix
    (thanks @iegomez).
chirpstack-application-server - 0.13.1

Published by brocaar about 7 years ago

Improvements:

  • Rename Gateway ping to Gateway discovery.
  • Rename Frame logs to Raw frame logs and add note that these frames are encrypted.
chirpstack-application-server - 0.13.0

Published by brocaar about 7 years ago

Features:

  • Gateway ping for testing the gateway coverage (by other gateways).
    When configured, LoRa App Server will send periodically pings through
    each gateway which has the ping functionality enabled.
    See also [features]{{<relref "features.md">}}.

Note: this release requires LoRa Server 0.21+ as the gateway ping feature
depends on the 'Proprietary' LoRaWAN message-type.

Bugfixes:

  • Content-Type header was missing for HTTP integrations.
chirpstack-application-server - 0.12.0

Published by brocaar about 7 years ago

Features:

  • HTTP data integration. This makes it possible to setup per application
    http integrations (LoRa App Server posting to configurable HTTP endpoints).
    Note that LoRa Server will always send the data to the MQTT broker.

Improvements:

  • Better pagination in case there are many pages (thanks @iegomez).
  • Various code has been cleaned up.

Bugfixes:

  • Fixed duplicated resultset-items when requesting all applications within
    an organization.
chirpstack-application-server - 0.11.0

Published by brocaar about 7 years ago

Features:

  • Implement support for channel-configuration management. This makes it
    possible to assign channel-plans to gateways, which then can be used by
    LoRa Gateway Config.

Note: This feature is dependent on LoRa Server
version 0.20.0+.