New Feature Releases:

May 7, 2018

i2c Decode

Real-time expressions now include the several methods for decoding i2c data. The new available methods include =i2c.addr([i2c_scl],[i2c_sda]),[i2c_scl],[i2c_sda]), and[i2c_scl],[i2c_sda]) which will create new signals for i2c address, data, and read/write respectively. All real-time expression operators and methods can be found here.

April 7, 2018

Measurement Tool for Line Graphs

You can now measure both time and magnitude using the measurement tool in Tiles. Expanded tiles drawn as line graphs now have a measurement tool icon at the bottom menu. You can draw the measurement triangle on the line graph to display time and magnitude differences from the drawn vertices. You can drag and move the measurement triangle as well as resize it.

March 21, 2018

WFM, TSS, and ISF File Format Support

Tektronix oscillscope file formats including WFM, TSS, and ISF are now supported and can be imported into your Initial State account. A list of supported scope data file formats can be found here.

February 6, 2018

Logarithmic Scale Option

Line graphs in tiles can now be drawn as either linear or logarithmic scale for the y-axis. Choose the y-axis type in the edit tile options when using the line graph tile type. All Tiles line graph options can be found here.

December 21, 2017

Zoom and Pan Line Graphs in Tiles

You can now zoom and pan inside line graphs in Tiles. Simply expand the desired tiles view and use the mouse wheel to zoom in and out. You can click and drag to pan in any direction. Exit the expanded tile view to reset your Tiles dashboard back to the way it was. Read more about panning and zooming inside Tiles line graphs here.

November 6, 2017

Mouse Wheel Zoom Enhancements in Waves/Lines

Your mouse wheel will now zoom in and out of your data by default in Waves and Lines with a more responsive feel. Previously, you had to press the CTRL key to opt into zoom mode with the mouse wheel, but that requirement has been removed. The mouse wheel gives you a convenient way to adjust your zoom level in fine detail while you navigate your dataset. You can read more about panning and zooming in Waves here.

August 28, 2017

Import a Layout from Another Data Bucket

You can now import a Tiles/Waves layout from another data bucket. Click on the "Import View" button located under the bucket settings and select the source bucket view to import. This will overwrite the existing layout with the source bucket's layout. This option is particularly useful if for utilizing a custom layout as a template for multiple datasets. More info ...

August 21, 2017

Expanded Individual Tile View

An individual tile can now be expanded to nearly full screen by right-clicking on a tile and selecting "Expand Tile" from the drop-down menu. This lets you quickly zoom into a specific tile without having to do any modifications to your dashboard layout. More info ...

August 21, 2017

New Mobile Experience

The mobile experience in Tiles has changed to show more tiles on the screen and give you one-click access to expand any tile to nearly full-screen. You can read about all mobile options here.

August 21, 2017

Enhanced Tile Edit

The edit tile configuration UI just got a facelift. The preview tile is larger and now covers the width of the popup dialog box. You can cycle to the next/previous tile using the left/right arrow icons or keys. You can also expand the preview to nearly full screen using the expand icon. You can see a quick demo of cycling between tiles in edit mode here.

August 21, 2017

Multi-line Expression Editor

Expressions can be now be multiple lines for increased readability. Simply hit the Return key to create a new line. White-space characters (newlines, tabs, spaces) are ignored for all expressions. The edit field will increase in height with each new line. More info ...

August 21, 2017

New Real-Time Expression Capability -> Constant Assignment

You can now assign an empty dataset to a constant. This allows you to create expressions that search for errors and display an error message if found or a default message if not found. Or, you can simply create a tile that displays your favorite emoji all of the time (e.g. ="😛"). Check out an example of creating an error checking tile here.

August 3, 2017

Compare Data From Two Different Files

You can now compare and overlay data from two different files in Tiles. The new compare and overlay feature lets you easily see the differences between datasets captured at different times. Read more about this new feature here.

July 3, 2017

Most Recent Location Map Highlight

You can easily find the most recent location of a data stream as it is now highlighted in the map view of Tiles. Read more about the map view and its capabilities here.

July 3, 2017

New Expression Operators -> ^ (exponential), math.stdDev, math.variance

You can now use three new operators/methods in your real-time expressions. The exponential operator, ^, is now supported (e.g. 3^2 = 9). math.variance computes the cumulative variance of a numerical data stream (equivalent to =math.mean([data stream]^2) - math.mean([data stream])^2). math.stdDev computes the cumulative standard deviation of a numerical data stream (equivalent to =math.sqrt(math.variance([data stream])). Read more about all of the real-time expression operators and methods here.

June 14, 2017

New Expression Operators -> math.sum, math.mean, math.sqrt

You can now create real-time expressions that compute the cumulative sum (math.sum) or the cumulative average (math.mean) of a numerical data stream. When combined with math.timeDelta, you have another way to convert Watts to energy costs (see example). There is also now a square root operator (math.sqrt). Read more about all of the real-time expression operators and methods here.

June 9, 2017

Data Markers!

You can now add notes to specific time segments for a data bucket in Tiles using Data Markers. Simply select a timespan using the timeline, right-click, and select Add Marker from the drop-down menu. Type your note and hit Enter to save. You can view a Data Marker by clicking on the marker highlight in the timeline and even cycle through each Data Marker using the arrow keys. Read more about Data Markers here.

May 24, 2017

New Short URLs for Public Shares

URLs generated for publicly shared data buckets are now short URLs. For example, You can read about data sharing options here.

May 24, 2017

New Trigger Operator -> Regular Expression Match

You can now trigger a notification if a data stream's value matches a defined regular expression. The match operator supports regular expressions, allowing you to specify complex pattern matches. You can test out your regular expressions before inserting them into your active trigger using tools such as You can read about all supported trigger operators here.

May 18, 2017

New Expression Operators ->, math.timeDelta, math.timeDerivative

You can now use real-time expressions to compute the difference between consecutive values in a data stream using the new method. You can also compute the time difference between consecutive values using the new math.timeDelta method. You can compute the change in value / change in time (a.k.a. derivative) using the new math.timeDerivative method. Check out an example of using these new expressions to compute the velocity and acceleration values from a single, binary motor encoder signal. You can read about all supported expression operators and methods here.

May 9, 2017

New Trigger Operators -> Geofencing and Increases/Decreases

You can now trigger a SMS alert or email message if a data stream increases or decreases by a certain amount. You can also setup a geofence and trigger an alert if an asset moves in or out of the geofence. Check out an example of how easy it is to setup a geofence trigger or check out all supported trigger operators.

Apr 4, 2017

API Rate Limit Response + Smarter Python Streamer

The API will now respond with your current rate limit within the response headers of each call when streaming data into your account. This information will assist you when troubleshooting data loss related to excessive API calls. The headers that will be returned include:

  • X-RateLimit-Limit - Your current number of requests per 10 second interval.
  • X-RateLimit-Remaining - How many requests are remaining until you hit your limit.
  • X-RateLimit-Reset - Epoch in seconds when the X-RateLimit-Remaining will reset.
  • Retry-After - Your wait time, in seconds, that your next request will be successful.

  • The ISStreamer Python module has been updated to version 0.2.2. This update utilizes the new returned rate limit headers to automatically adjust script execution to ensure there is no data loss due to excessive API calls. Read more about API rate limits and the new response headers ...

    Mar 24, 2017

    New Launch Page

    You will see a new launch page the next time you log in to your Initial State account. You will find a new statistics section showing you how many events you have streamed every month, how many workspaces (data bucket views), uploaded files, shares, and more.

    Mar 15, 2017

    Duplicate a Tiles Layout to Another Dataset

    You can now easily duplicate that awesome Tiles dashboard layout that you worked so hard to perfect to another dataset. Click on the "settings" link underneath the bucket name on the bucket shelf, click on the "Duplicate" button, select the "Duplicate Layout Only" checkbox, and type in the target bucket key. This will create a new view for the specified data bucket using a different data bucket view layout (tile sizes, names, view types, real-time expressions, etc). Read more ....

    Feb 7, 2017

    Map Operator

    The map operator, :, has been added to the list of supported operators available in real-time expressions. This operator allows you to map specific values or value ranges in a data stream to constants or even values from another data stream. For example, you can map and display an emoji such as 🔥 to any value over 80 in a temperature stream. Check out a detailed example of how to use the map operator here.

    Feb 7, 2017

    Smarter Tiles Auto-Layout

    Using the "Always Fit Tiles" auto-layout option just got a lot smarter. Tiles are automatically sized based on the tile type to better fit the width of your dashboard. For example, line graphs are now automatically drawn as wide rectangles instead of small squares for a more optimal data view.

    Feb 7, 2017

    Local Caching for Fast Loads

    Datasets are now cached locally in Chrome and Firefox for blazing fast load times. Only bucket views that do not use the "Show Events Since" option are cached. Logging out of your account will automatically clear all local caches.

    Jan 12, 2017

    Compute Energy Costs in Real-Time

    A new Summary (statistics) tile type is now available - Total. This tile type gives you the ability to add up the total of each value in a data stream for a selected time range. There is also an option to add up each value multiplied by the time spent as each value. This option gives you a super easy way to convert Watts (W) to Watt-Hours (Wh). You can use real-time expressions to complete the conversion of Watts to energy costs. Check out a detailed example here

    Jan 12, 2017

    Quickly Search Inside a Data Stream

    You can now search for specific values, partial matches, and ranges inside of a data stream in Waves using real-time expressions. Select a data stream and use the shortcut, $, to reference that selection in your expression instead of typing out the full name. You can use the new operator, ~, to search for a partial match. For example, you can search for all occurrences of the word "error" in a signal by first highlighting that signal and using the expression, =$~"error". You can find more examples here

    Jan 12, 2017

    More Math Options

    Sine, cosine, tangent, and Pi have been added to the math package in real-time expressions. A list of all operators can be found here