Stand with Ukraine flag
Pricing Try it now
Community Edition
Getting Started
Devices Library Guides Installation Architecture API FAQ
On this page

Thingsboard v3.4.x release notes

ThingsBoard CE v3.4.4 (February 7, 2023)

Improvements

  • UI:

    • #7951 Queue autocomplete addput hint by @kalutkaz
    • #7884 Update locale.constant-zh_TW.json by @wusung
    • #7863 Optimizations for dashboard-pages that open popover or dialog. by @Terny22
    • #7837 Remove default device profile from OTA updates creation form by @ArtemDzhereleiko

Bug fixes

  • Core & Rule Engine:

    • #7838 Fixed device sessions dump by @YevhenBondarenko
    • #7963 Fixed js cache by @YevhenBondarenko
    • #8009 Rollback “tellFailure” logic change TbAbstractGetAttributesNode by @ShvaykaD
    • #8002 Fixed data convertion for BigInteger values that stored DB as String by @ShvaykaD
  • UI:

    • #7871 Detected changes of switching fixed layout side by @ArtemDzhereleiko
    • #7868 Fixedcorrect calculate width when used right layout dashboard by @vvlladd28
    • #7903 Fixed gap for widget setting mobile mod and fix translation by @ArtemDzhereleiko
    • #7875 Fixed phoneput update on save changes by @ArtemDzhereleiko
    • #7873 Fixed when deleting a value the search field time shows null value by @vvlladd28
    • #8010 Fixed auto-indexing for keys with aggregation by @ArtemDzhereleiko
    • #8012 Fixed applying custom translation to labels of latest data keys timeseries widgets by @ChantsovaEkaterina
    • #8013 Fixed error on loading custom widgets module withing dashboard state component by @ChantsovaEkaterina
    • #8054 Fixedcorrect resolve state entity by @vvlladd28
    • #8031 Fixed device profile url for navigation cards settings by @ArtemDzhereleiko
    • #8037 Fixed loading widget resources, when one of the resources is marked as module by @ChantsovaEkaterina

ThingsBoard CE v3.4.3 (December 21, 2022)

Improvements

  • Core & Rule Engine:
    • #7778 Version control: ‘Show merge commits’ option, improved entity versions comparing by @ViacheslavKlimov
  • UI:
    • #7785 Danish language by @vvlladd28
    • #7795 Always visible action button in multiple input widgets by @vvlladd28

Bug fixes

  • Core & Rule Engine:

    • #7752 Fixed asset’s profile changing by @ViacheslavKlimov
    • #7761 Fixed no timeseries data in widget for entity view; fix State Chart invalid behavior by @ViacheslavKlimov
    • #7773 Fixed getting a lot of updates over WS in case of aggregation query, even if no real updates happened by @volodymyr-babak
    • #7783 Fixed device bulk import with empty credentials by @YevhenBondarenko
    • #7786 Fixed saveDeviceWithCredentials notifications by @YevhenBondarenko
    • #7791 Fixed support of empty arrays in ‘split array msg’ rule node by @YuriyLytvynchuk
    • #7801 Added DeviceProfileService and AssetProfileService to TBContext by @dashevchenko
  • UI:

    • #7758 Fixed validation in bulk import and improvement bulk import for Edge by @vvlladd28
    • #7782 Fixed Catalan locale designator by @ArtemDzhereleiko
  • Edge:

    • #7792 Edge root rule chain update fix. USER entity support added. INACTIVITY_TIMEOUT pushed to edge. by @volodymyr-babak

ThingsBoard CE v3.4.2 (December 1, 2022)

Minor release with the following features and bug fixes:

Major Improvements

  • Core & Rule Engine:

    • #7455 TBEL executor;
    • #7342 Asset Profiles Feature;
    • #7371 TTL and table partitioning for audit logs;
    • #7564 Table partitioning for edge events;
    • #7347 New rule node: ‘math function’;
    • #7297 Generate random JWT on install or upgrade;
  • UI:

    • #7288 Support of aggregation for the latest values in the widget data source;
  • Edge:

    • #7592 Support of Device to Cloud RPC Requests;

Minor Improvements

  • Core & Rule Engine:

    • #7339 DB calls stats by tenant in the logs;
    • #7350 Limits for JS script body, input args and invocation result size;
    • #7403 Improvements for the JS executor request payload size;
    • #7483 Version control Repository settings with ‘Read-only’ flag;
    • #7245 Add ‘Entity’ source to the ‘change originator node’;
    • #7341 Email validation pattern improvements;
    • #7239 New rule node: ‘fetch device credentials’;
    • #7240 New rule node: ‘copy keys’;
    • #7241 New rule node: ‘rename keys’;
    • #7242 New rule node: ‘delete keys’;
    • #7243 New rule node: ‘json path’;
    • #7244 New rule node: ‘split array msg’;
    • #7238 New rule node: ‘delete attributes’;
    • #7278 Redirect to the targeted url after the successful login via oauth2;
    • #7367 Details rule node returns entity’s ID as well;
    • #7370 Added support of creating relation to USER entity;
    • #7394 Add ‘retained’ button for MQTT rule node;
    • #7425 Optional key pattern field for Kafka rule node;
    • #7442 Upgrade protobuf version from 3.17.2 -> 3.21.7, support Mac M1(ARM Core) protobuf files compile;
    • #7522 Postgresql driver update up to 42.5.0;
    • #7538 Alarm service optimization - remove async().get() calls from synchronous methods;
    • #7377 Add ability to fetch attributes/latest telemetry to msg data in rule nodes;
    • #7548 Improvement to the recursive relations query;
    • #7453 Audit log on oauth2 login;
    • #7435 JWT invalidate on logout;
    • #7541 Use default SQL null ordering for ts_kv;
    • #7587 HTTP client returns headers as an array if there is more than one;
    • #7629 Cassandra partition ‘always exists’ mode to optimize queries;
    • #7666 Add options send notifications for ‘save attribute’ & ‘delete attribute’ rule nodes;
  • UI:
    • #7304 Let data keys of entities widget to hide in mobile mode;
    • #7084 Pass widget context to callback of entities hierarchy widget;
    • #7230 Added Catalan locale;
    • #6374 Dashboard layouts width configuration;
    • #7267 Added new widget-subscription setting - “onTimewindowChangeFunction”;
    • #7386 Add widget context API call to create alarm queries;
    • #7436 Added API to close dashboard opened as dialog;
    • #7458 Update zh_CN locale;
    • #7248 Update de_DE locale;
    • #7311 Added clustering markers color function;
    • #7387 Added support of custom table header title in addition to data key label;
    • #7475 Form field appearance in timezone and entity autocomplete components;
    • #7531 Chart thresholds support array of values;
    • #7356 Let user to drag-n-drop widget actions in list;
    • #7534 Let phone component to accept numbers with spaces, hyphens and parenthesis;
    • #7275 Add API to create telemetry websocket updater in custom widgets;
  • Transports:

    • #7232 DTLS retransmission timeout is now configurable and set to 9 seconds by default;
    • #7519 Make log shorter on IOException for MQTT transport;
  • Edge:

    • #7395 Customers hierarchy support;
    • #7478 Added functionality to drop messages that are not able to be processed by the edge;
  • Build scripts:

    • #7155 Update bouncycastle from 1.67 to 1.69 to avoid duplicate of dependencies;
    • #7518 Cassandra cloud connects to Datastax Astra DB;
    • #7566 Moved black-box tests to TestNG;
    • #7665 Provisioning black box tests;
    • #7686 Compatibility with Compose V2 in the docker compose scripts;

Bug Fixes

  • Core & Rule Engine:

    • #7544 Inactivity timeout fix;
    • #7385 Additional validation for AuditLog entities;
    • #7145 Make entity relations deletion transactional;
    • #7157 SNMP/CoAP/LWM2M device profile transport configuration missing Serialization;
    • #7547 TbMsgProcessingStackItem missing Serialization;
    • #7268 ‘originator telemetry’ rule node;
    • #7246 Check value for “null” in the ‘originator fields’ rule node;
    • #7316 Default destroy method bug fix in the TbNode interface;
    • #7381 Add inactivity event support to the ‘copy to view’ rule node;
    • #7456 SQL batch sort enabled by default; additional deadlock logging;
    • #7237 Improve the processException extension for tbHttpClient;
    • #7250 Bulk import null node handling fix;
    • #7324 Fix for rate limits filter;
    • #7552 Fix Cassandra prepared statement produces NullPointerException due to race condition;
    • #7554 Fix alarm subscriptions on REST API call;
    • #7549 Check tenant entity for rule nodes;
    • #7589 Fix of alarm count query with null sortOrder and textSearch specified;
    • #7636 Validation for entity’s additionalInfo;
    • #7699 Fixed queue notifications in monolith mode;
    • #7707 OTA image assigned to device profile does not populate device shared properties;
  • UI:

    • #7127 Fixed tooltip display in map edit button;
    • #7181 Fixed close tooltip button for map widgets;
    • #6917 Let custom widget to process no-data case;
    • #7092 Fixed DatetimeAdapter for ‘en-GB’ locale;
    • #7129 Fixed Pie-Flot issue with timewindow display;
    • #7131 Fixed TextSearch input for tenants does not resolve empty field properly;
    • #7159 Fixed displaying of Markdown/HTML value function content in markdown widget settings;
    • #7174 Fixed label polyline/circle follow the mouse for image map;
    • #7211 Fixed file input loader;
    • #7217 Text ‘Items per page’ in table widgets are not translated;
    • #7251 Update message type list for rule node relations;
    • #7236 Allow whitespace in issuer name at TOTP 2FA provider;
    • #7290 Widget datasource css issues;
    • #7326 Fixed check isEmpty validation in EntityDataCmd models;
    • #7360 Let user to selective export widget bundles to version control;
    • #7471 Fixed height and console error for Event filter panel;
    • #7500 Use row layout on screen bigger than xs size;
    • #7485 Fix phone dial code detection for default country;
    • #7365 Fix markdown widget by @kalutkaz;
    • #7591 Fixed function setFixedLayout in dashboard layout;
    • #7618 Fixes delete attribute or telemetry whose name has special characters;
    • #7652 Fixed custom dashboard CSS was not applied when a dashboard is full-screen;
    • #7658 Make possible to hide widget in desktop mode;
  • Edge:

    • #7093 Edge sync functionality - fixed cluster support;
    • #7214 Notify devices in case shared attribute updates from edge;
    • #7651 Updates to stability of synchronization between edge and cloud in case of many events simultaneously;
  • Build scripts:

    • #7199 Fixed default value of the events.debug_partition_size env variable;
    • #7402 Update package version for tb docker images;
    • #7555 improved lifecycle events and added kill for crash event for js-executor;
    • #7655 added max_old_space_size to node.js based modules.

We welcome our new contributors:

ThingsBoard CE v3.4.1 (August 18, 2022)

Minor release with the following improvements and bug fixes:

  • Core:
    • Improved performance and stability of the Device State Service;
    • #6983 Fixed start up failure due to Spring circular dependencies;
    • #6923 Replaced deprecated StringUtils usages with in-repository implementation;
    • #6959 Fixed auto-convertion of string values that start with ‘0’ to double in EntityDataAdapter;
    • #6972 Fixed upgrade script to 3.4.0;
    • #7026 Fixed serialization in 2FA;
    • #7041 Fixed update or removal of ‘inactivityTimeout’ attribute;
  • UI:
    • #7025 Added new column and copy buttons in rule node debug events table;
    • #6980 Added relation tab to user details;
    • #6979 Improved the rate limits view in Tenant profiles
    • #6978 Improved rhe mobile view in widgets setting;
    • #6987 Fixed redirect to the previous link after login with 2FA;
    • #7011 Fixed custom marker size for map widgets;
    • #7012 Updated leaflet version to 1.8;
    • #7055 Fixed predefined thresholds in Flot widgets;
    • #7073 Fixed incorrect Japanese language locale name;
    • #7086 Fixed bug with double calling code;
    • #7097 Minor fix in 2FA;
    • #7105 Fixed bug in circle positioning;
    • #7108 Fixed table shift after triple click;
  • Transport:
    • #6967 Fixed Netty MQTT client ping/pong logic;
    • #0bc5be4 Coap device profile update fix for sessions with no observations;
  • Edge:
    • #6953 Check for missing edge rule chain during unassign of rule chain(s) from edge;
    • #7044 Firmware ID not synced from cloud to edge in device / device profiles;
    • #7095 Start regular edge event process after sync completed;

ThingsBoard CE v3.4 (July 19, 2022)

Major release with the following features and bug fixes:

Major Improvements

  • Core & Rule Engine:
    • #6534 Configuration of Rule Engine queues via Tenant Profiles. See documentation here;
    • #6070 2FA support. See documentation here.
    • #6759 Version Control (Git integration). See documentation here.
    • #6893 Refactor JS-Executor microservice to typescript;
  • UI:
    • #6334 Support of the latest values in the time-series widgets;
    • #6545 Replace auto-generated advanced widget settings JSON forms with Angular components;
  • Edge:
    • #6781 Edge OTA support;
    • #6852 Queue API support.

Minor Improvements

  • Core & Rule Engine:
    • #6483 Refactoring of some REST controllers code to Entity Services; See PRs: #6533, #6540, #6551, #6582, #6593, #6695;
    • #6358 Improved query logging;
    • #6412 InMemoryStorage refactored from the static singleton to the Spring Bean;
    • #6422 In memory storage improvements;
    • #6485 Refactoring of Spring Security annotations according to new Spring release;
    • #6767 Improved JS executor performance and memory foot-print;
    • #6785 EntityViewService optimization using local cache and lifecycle event broadcasting;
    • #6780 QueueKey toString for a better logging experience;
    • #6888 Expiration time for JS executor tasks to improve performance;
    • #6201 SMPP SMS provider;
    • #5818 Add support for dynamic values for schedules in alarm rules;
    • #5959 Cacheable tenantExists method and refactor usages in validators;
  • UI:
    • #6675 Added ‘Security’ page;
    • #6555 Add ‘Maximum entities per datasource’ parameter to widget configuration;
    • #6432 Update Italian locale;
    • #6626 Update Spanish locale;
    • #6914 Update French locale;
    • #6584 Add Chinese translations for edge;
    • #6434 Fix validation logic for JSON in attributes edit form;
    • #6635 Add resource service to widget context;
    • #6650 Phone input with country flags;
    • #6725 Added validation for a required label in dataKey setting;
    • #6728 Export all RxJS API into custom widget context;
    • #6733 Use default image in the image-map widget;
    • #6805 Layout for tenant profiles and queues;
    • #6788 Add option to show the latest values in the widget’s legend;
    • #6836 Support of ‘flush all’ operations in case we use Redis cluster;
  • Transport:
    • #6522 Piggybacked CoAP responses;
    • #6233 Configuration of MQTT transport behavior on message validation failure;
    • #6486 Refactored MQTT and COAP integration tests;
    • #6919 Refactored LwM2M integration tests;
    • #6667 Kafka producer compression configuration;
  • Edge:
    • #6684 Report device activity from Edge;
    • #6443 Updated default edge root rule chain to handle Attributes Deleted, Timeseries Deleted, Timeseries Updated messages by default;
  • Build scripts:

Bug Fixes

  • Core & Rule Engine:
    • #6536 Misc cache issues with race conditions;
    • #6910 Mail server timeout implementation;
    • #6535 Handling alarm deletion and attributes deletion in DeviceState;
    • #4666 Encoding of request params in the Rest API call rule node;
    • #6315 Kafka rule node;
    • #6323 Entity views caching;
    • #6330 SQL error on reinstall;
    • #6446 Method to upload OTA binary file via Swagger ui;
    • #6642 Permission checks for getDeviceProfileInfoById REST API call;
    • #6421 NPE in ‘copy to view’ rule node;
    • #6682 Slow queries logging;
    • #6711 Swagger UI typo fix for dashboard API;
    • #6809 JS executor crash on error code check;
    • #6875 Added device-profile read permissions for the customer;
    • #6895 Removed unused audit log config settings;
    • #6929 Removed ‘isolated tb-core’ flag in tenant profile;
    • #6901 Device & device-profile validation;
    • #6931 Export/Import RuleChain for nested RuleChains;
    • #6937 Transport statistics logging;
    • #6939 Single Partition for Kafka response topics;
    • #5924 “403 forbidden” error when a tenant creates a relations with themselves;
  • UI:
    • #6886 Double click zooming on map widgets;
    • #6495 Trip Animation widget bug. See also #6496;
    • #6651 Date Range navigator widget date selection;
    • #6671 Visual bugs in pie flot widget;
    • #6141 Resize in Knob Control widget;
    • #6475 Entities table manual sort if pagination disabled;
    • #6462 Displaying ‘Unit title’ and ‘value timestamp’ for Digital gauges widgets;
    • #6298 UI build according to new github policy;
    • #6321 Zooming of the Image Map;
    • #6339 UI build in Windows OS;
    • #6349 Duplicated dialogs on redirect;
    • #6550 Can’t switch to another rule chain without confirming/cancelling changes;
    • #6690 Incorrect display of delayed status;
    • #6706 Remove extra scroll in the widget dialog;
    • #6336 “Test script function” window is now adapted to screen reduction;
    • #6743 The dashboard edit icon disappears when ESC button is pressed;
    • #6514 Pagination for edge downlink table;
    • #6769 Incorrect label in tenant profile;
    • #6774 Permission check in show alarm details;
    • #6908 Timeseries widget doesn’t react on dashboard timewindow update if used within state widget;
    • #6916 Tooltip actions that contains space in name for map widgets;
    • #6936 Import/export/copy operations for alarm type widgets;
  • Edge:
    • #6436 Push to edge rule node generates ‘timeout’ message in case no related edges found;
    • #6519 Device profile with non default transport is not propagated to edge;
    • #6699 Validation of missing rule chain;
    • #6840 Saving of edge event in batches should be single threaded;
  • Build scripts:
    • #6719 Await postgres startup in a bundled docker image;
    • #6721 Updated Node version from 12 to 16 for web-ui and js-executor;
    • #6729 Correct postgresql repo in docker files;
    • #6813 Various docker-compose fixes. See also #6812, #6811.