Fall 2014 release

The 2014 fall release to our product line is now available. This release is primarily a bugfix release, and improves the performance and stability for all of our products. All of the software changes are now live on our paragonrobotics.com site, so you can start using them immediately. To upgrade the firmware on your devices, visit the setupDevices widget and click on "Show advanced settings" for each of your devices, which should bring up the option to upgrade your firmware.



Hardware (firmware version 1.10)

  • gateways now have a lithium backup battery to maintain internal clock when power is removed
  • SC12 humidity and temperature sensor has improved accuracy and calibration
  • on GW2/3, add additional bypass capacitor to SD card to help stability on high-current SD cards
  • fix potential condition when devices "auto-off" during shipment but potentially leave radio receiver on
  • allow unlimited number of ARP entries on gateway in order to handle more mobile device connections
  • improve TCP speed when packet sizes reach Ethernet frame size limit
  • improve HTTP long-poll stability when client forcefully shuts down TCP sockets
  • speed up TCP retries when ARP reply is received
  • expose boolean on devices to tell when default calibration tree exists (used for internal API)
  • respond to multi-gateway local link requests even if the gateway is connected to HaloCloud
  • improve error checking to flush invalid share messages quicker
  • improve stability when rapidly unplugging Ethernet after only being plugged in for less than a second
  • add support for commit messages in preparation for new tree viewer
  • implement static IP address functionality on gateway
  • expose a setting to allow the DHCP server to be permanently shut off
  • improvements to SD storage of very large files, allowing storage of PC settings on gateway
  • automatically flush the device list database when the wireless network is restarted (typically after a power reset)
  • fix rare problem with DHCP client startup during heavy wireless traffic
  • fix handling of a malformed encryption header #1
  • fix handling of a malformed encryption header #2
  • fix handling of a malformed wireless beacons
  • fix potential random wireless parsing logic error
  • fix rare wireless receive packet corruption during FIFO overflows
  • properly free the HaloCloud socket when restarting the connection forcefully
  • when powering down using RTC, properly disable the watchdog timer under edge cases
  • when scaling down wireless TX power when very close to gateway, limit the TX reduction to max amount
  • when deleting alarms or app machines, properly clear the correct machine number
  • fix potential SD corruption during threaded processing of large SD writes
  • fix potential memory leak when thread is forcefully aborted while in the middle of SD page read
  • fix potential memory leaks with forcefully aborting thread during certain calculations
  • do not double-destroy the thread after processing a share message container
  • fix potential memory corruption during certain TCP RST packets
  • fix memory leak when gateway forwarded messages to nonexistent Ethernet socket
  • ensure when threads are destroyed we remove ownership from any remaining chains
  • if no HaloCloud channel is active, utilize the TCP socket for an additional HTTP socket in order to accommodate an extra socket with the embedded server
  • reduce max memory allocation for sockets in order to leave usable space for others
  • improve memory allocator logic to try and allocate small segments to smaller gaps
  • fix handling of delayed logging dumps that don't connect with gateway
  • on TCP connections to gateway, allow unlimited length target names to accommodate long local DNS names
  • fix handling of particular malformed DNS request packet
  • change I2C error detection logic to improve stability of SC12 and SC13 sensors
  • prevent possible stack overflow during specific conditions
  • fix potential memory leak on gateway during extremely busy wireless traffic
  • better handle broken/missing SD cards when trying to perform SD operations
  • add extra sanity checking before modifying flash, in order to better catch crashes
  • improve accuracy of SC13 light readings, and recalibrate for case material change
  • correct boot sector function location for more efficient firmware blobs
  • add new SPI machines
  • add math.lookup for lookup table calculations
  • decrease touch button sensitivity on SC devices to prevent false positives
  • fix potential crash during certain combinations of events (usually during high traffic, or DNS queries during high network volume)

setupDevices widget (version 2.1)

  • read in all sensors during the claiming process, instead of searching when opening dataRecorder for the first time
  • fix popup level issue when searching for devices on devices tab
  • add ability to manually load firmware file even if already using latest version
  • fix bug where manually entered IP addresses were changed to local-link versions automatically on page refresh
  • if user has clicked on a device that is not connected, automatically recheck the device if we get a connection broadcast while on this screen
  • provide better status messages for gateways that aren't curently connected through HaloCloud
  • allow new local gateway link even after the gateway is known to connect through HaloCloud
  • fix link on HaloCloud page which loads accountManager widget
  • if user logs in while on HaloCloud account page, automatically enable hardware HaloCloud
  • revise HaloCloud credential page logic, and hide credential entries to streamline the page and make it more intuitive
  • fix bug preventing changing from static IP settings back DHCP
  • add GUI to permanently disable DHCP server on gateways (factory reset required to undo)
  • add GUI for editing group associations for devices in advanced settings
  • implement ability to retreive local IP from gateway through Internet service, facilitating discovery of gateways on networks without local link discovery capability
  • allow setup of gateways completely through HaloCloud, allowing setup with no local network connection from PC to gateway
  • fix un-closable popup dialog problem when returning to setupDevices after aborting during certain circumstances
  • if no gateways are found during the first pass due to no local-link support, automatically try 10.0.0.1 in case the GW is plugged into the PC directly
  • better handling of wrong device key inputs
  • fix bug where after returning to gateway/device tree screens after viewing an unconnected device it would jump back to device screen upon new device connections
  • fix regression when trying to update HaloCloud credentials on gateway
  • clarify and update documentation
  • when changing from static IP to dynamic IP, show save changes link

dataRecorder widget (version 2.1)

  • battery logging resolution now defaults to 0.01V instead of 0.25V
  • allow user to recalibrate SC11 and SC12 devices (e.g. to precision match multiple device readings)
  • disable periodic quickWatch checks for control devices, as the select menu could sometimes be wrong when user selected a new control state at certain times
  • properly remove a device from the "all devices" view when the user manually unclaims a device
  • make sure a gateway is connected before trying to update the "all devices" view
  • hide the "refresh all" button on the "all devices" view when there is no gateway connected
  • improve device highlighting behavior when more than 6 devices are present
  • improve "all device" refresh on multi-sensor devices when more than 6 devices are present
  • make sure to properly refresh the sidebar tree when adding/removing SC14/18 sensors
  • after renaming a device, immediately update the sidebar device tree to show the updated name
  • truncate long sensor names so they fit better in the all devices view
  • display groups for devices in "all devices" view, as well as allowing editing
  • allow user to copy alarms and logging settings for a sensor to multiple targets, allowing for much quicker setup for large numbers of sensors
  • properly parse email alarm targets when reading from device
  • properly display multiple alarm targets after SMS alarm
  • when adding external sensors, move jack/pin selection row to top for clarity
  • when adding external sensors, do not reset jack/pin number to 1 after any changes to units or sensor type
  • when adding external sensors, remove the "preset" selector row when using 0-2.5V range
  • when a sensor has an alarm active, show the reading in red on the "all devices" page if the alarm is currently triggered
  • changed default external sensor name to "Sensor (pin x)" to keep shorter for better display
  • improve styling of "all devices" display on mobile screens
  • when adding alarms, properly initiate them immediately to reduce time-delay until first alarm trigger
  • remove underline from sensor names in all devices view, as it was potentially confusing to users as a clickable link
  • eliminate the min/max delays for popups, as they were causing some problems with the new copy functionality
  • fix all-devices view issue when old devices were unclaimed during certain conditions
  • when starting up, delay the first check of the all devices view in order to ensure we don't start checking the devices before the gateway connection is fully operational
  • clarify and update documentation
  • add calibration and setup GUI for upcoming SC3x line (RTD, thermocouple, thermistors)
  • change "Jack" to "Pin" in active external machine list
  • only allow Pin 3 analog and digital inputs now, since Pin 0 and 1 can interfere with I2C inputs
  • when deleting an alarm, make sure we instantly flag it as off so we don't show red alarm values in the all devices view if the user clicks to that view immediately afterward
  • properly store the "do not show this again" flag for the unit warning dialog, so that it does not appear after the page is reloaded

dataChart (version 2.1)

  • fix bug preventing some browsers from properly exporting charts with CSV extension
  • revise CSV export format for dates in order to have Excel automatically import better
  • hovering over data points now shows info balloon (previously required a click/touch)
  • info balloons on data points now includes the date on multi-date zoom levels
  • info balloons of data points include units, and guesses best unit type based on the situation
  • fix bug in displaying data points on "normalized" axes
  • fix Y2 unit chooser when unselecting a series
  • when panning horizontally, only update date when mouse is released (prevents simultaneous renderings and ensures all data displays correctly in the time range)
  • allow larger data groups to be exported
  • bugfix for "save file" dialog window reappearing during certain cases
  • when refreshing chart after sitting for a long time (>2 hours), make sure to collect any data that may have been moved to permanent storage during the wait
  • improve datapoint density when zooming out on certain data series
  • when zooming in and out rapidly using scrollwheel, make sure the data is always refreshed properly
  • when using "bin" view for pulsecounts, intelligently guess the overflow point so that the binning will give accurate values even during extremely long logging sessions
  • export csv files in UTF8 so that special characters are recognized by spreadsheets
  • when refreshing or populating series data points, don't render data point balloons since they disrupt the loading throbber
  • when exporting to file, correct "secs since" headers on relative time and epoch time options.
  • if a sensor has an alarm active on it, show the alarm levels on the chart as red lines
  • eliminate a spurious render cycle when changing series visibility, reducing visual stutter
  • fix bug preventing exporting of non-standard unit types

Full website (haloView platform version 2.1)

  • handle invalid broadcast messages better, and at least allow software to connect and let user flush device history
  • change "Halo/S connected" message to "Gateway connected" to prevent confusion with HaloCloud login
  • improve logic for displaying "Gateway connected" message, expecially on multiple gateway systems
  • remove qty limit before collapsing "claimed" section, so large deployments will not have to keep expanding the list
  • add better checking of multiple devices or browsers trying to access the same GW at once on the local network, resulting in a "Close other windows/tabs" message in the upper right corner
  • improve reliability of gateway connections which stay open for very long periods (> 1 month)
  • remove degree symbol from Kelvin units and add to Rankine, as this is more popular notation
  • add mb, inH20, and inHg as pressure unit alternatives
  • fix regressions in mobile display styling
  • do not scale up graphics for desktop touch monitors, as the button sizes are ok on "smallest"
  • if an alarm is not successfully received by a target (such as HaloCloud or PC), then just wait the normal "time between alarm" delay before resending (instead of retrying every check)
  • better handle setup of gateways when simultaneous HaloCloud+local connections exist
  • always use local gateway connection if it exists (versus HaloCloud connection)
  • better handle multiple gateway connections during the setup/search process
  • better handle HaloCloud forwarding logic when gateways are locally connected
  • better handle routing datestamp comparisons when multiple gateways are connected
  • on certain popup windows, hide the popup before it is centered on the screen to eliminate flickering
  • when software reloads the page, strip any options from the path to make sure it only loads the plain website
  • allow additional latency for communication through HaloCloud before timing out, as some Internet connections may have substantial latency involved
  • properly recognize SC14 pulsecounter jack numbers when reading in machine list on new devices
  • fix obfuscation problem preventing web file upload from operating efficiently
  • store and restore all settings to both gateway hardware and HaloCloud, allowing for near-seamless setup on new devices or browsers
  • increase delay when starting connection with gateway, in order to allow more time for very long broadcast lists of devices to be received
  • only callback once during haloS.stopAlarm call
  • fix regression in email and SMS alarms during certain cases
  • ensure proper alarm message is sent to all targets when multiple alerts are used
  • redesign software alarm message handler, so that multiple notifications can display at once and not mess up other popups that may currently be showing
  • inline absolutely every CSS file on the embedded website version in order to reduce the number of HTTP sockets browsers try to open, and also avoid potential styling problems on browsers when css file loading is delayed past the html load
  • fully disable all local-link discovery on embedded version to reduce browser tendency to open up additional sockets
  • ensure created links have proper nests on child node
  • fix haloS.addExternalSensor API for certain parameters
  • when showing the device selector tree, make sure we always honor the latest multiselect flag of the caller
  • delay callbacks to all broadcast handlers by 0.75s in order to help ensure gateway connections are fully started before callback functions start trying to read sensors
  • clarify and update documentation
  • change throbber for better appearance on varying backgrounds, and prepare for progress bar addition
  • fix potential issue when deleting database entry with another entry at a similar timestamp
  • improve styling of alert dialogs with caller-specified buttons at bottom
  • improve 404 handling for both web + halo-s versions of site

haloCloud (version 1.0)

  • do not explicitly try to reject packets with no possible forward path (was causing some "key error" messages in setupDevices)
  • always return 404 code even for custom 404 pages
  • implement function to communicate local IP addresses of gateways to requesting PCs behind the same NAT
  • implement function to allow users to remotely configure a gateway through HaloCloud without any local connection
  • add ability to flush device list associated with a HaloCloud account
  • implement function to store settings for user, allowing for near-instant setup on new devices
  • allow CORS on https targets, since they are now needed to be called from http targets as well
  • auto-flush all broadcast lists upon server restart
  • fix auto-numbering logic when multiple messages are simultaneously sent

accountManager widget (version 2.1)

  • add ability to clear user's HaloCloud device list (on HaloCloud account page)
  • improve process for purchasing additional HaloCloud plans

appManager widget (version 1.0)

  • launch limited version of software for testers working with control equipment