Skip to content

Releases: parnic/node-screenlogic

v2.1.0

19 Jun 17:01
v2.1.0
4c7bf13
Compare
Choose a tag to compare

Fixed

  • Fixed bodies.setHeatModeAsync incorrectly subtracting one from the given body index. This is a breaking change if you were correcting for the offset already.

v2.0.0

11 Mar 19:12
v2.0.0
5e1499d
Compare
Choose a tag to compare

This major version number increase comes with many changes under the hood, including a rename of most every method in the library. This adds Promises and Typescript support. See the Migration guide and Breaking changes wiki pages for detailed information.

v1.10.1

31 May 16:09
v1.10.1
125ea54
Compare
Choose a tag to compare

Added

  • Added simple "ping" message as a lightweight way to keep the connection alive for a user using the addClient() api.

Fixed

  • Fixed Date parsing from ScreenLogic packets returning the wrong date under specific conditions (such as the last day of the month or during specific hours when javascript month/day assignment order can change other parts of the date).

Changed

  • Improved FindUnits.search() to support being called multiple times. This function issues one UDP broadcast per call, so consumer applications may need to run it in a delayed loop if no units are found on the first request (e.g. when the device running the search or the pool equipment is temporarily disconnected from the network). This is a stateless UDP query, so client applications cannot rely on the error or close events to issue retries.

Full Changelog: v1.10.0...v1.10.1

v1.10.0

24 May 05:13
v1.10.0
0e3a627
Compare
Choose a tag to compare

Added

  • Added capturing of weather forecast events so that we're not treating it as an unknown message. This also includes full handling for getting weather forecasts from the equipment, but in my experience it's either outdated or not as thorough/reliable as we could get from pretty much any other source, so it remains undocumented for now.
  • Added handling of asynchronous chemicalData messages. These are received periodically through the addClient() data push feature.

Fixed

  • Fixed an ugly problem where the library could hang and fail to hand off any more messages if multiple messages were received at the same time (which I've seen happen on lower powered hardware like a Raspberry Pi). This would also cause the internal data buffer to grow unbounded as long as the UnitConnection stayed alive.

v1.9.1

21 May 00:16
v1.9.1
f173c2b
Compare
Choose a tag to compare

Added

  • Added close event to FindUnits, RemoteLogin, and UnitConnection for when the connection to the endpoint has closed.

v1.9.0

21 May 00:16
v1.9.0
b2774e4
Compare
Choose a tag to compare

Added

  • Added support for getting system chemical history data. This includes pH and ORP readings over time as well as pH and ORP feed on/off times.

v1.8.0

23 Apr 14:24
v1.8.0
b2faf57
Compare
Choose a tag to compare

Added

  • Added support for reading ScreenLogic time packets.
  • Added support for getting system history data. This includes temperature readings over time as well as circuit on/off changes over time.

Fixed

  • Updated dependencies to safer versions of some packages.
  • Fixed day-of-week conversion from Javascript Date objects to ScreenLogic times (SLTimes are 1-based starting on Sunday).

Changed

  • Alphabetized the readme.

v1.7.0

13 Oct 19:18
v1.7.0
4cfffdd
Compare
Choose a tag to compare

Added

  • Added handling/documentation for the scheduleChanged event (#44).
  • Added support for getting and setting the system date/time.

Fixed

  • Documentation updates for SLGetScheduleData, more linkage for easy navigation, addClient/removeClient methods, clarified coolSetPoint for spas.

v1.6.1

23 Nov 14:18
v1.6.1
5f5b52f
Compare
Choose a tag to compare

Added

  • Every call now can optionally specify an ID that will be returned with the result, allowing tracking of simultaneous commands.

v1.6.0

14 Jul 17:48
v1.6.0
d7d10d7
Compare
Choose a tag to compare

Added

  • Fleshed out the still-undocumented SLEquipmentConfigurationMessage with a few more helper methods for interpreting the data inside.
  • Helper method for getting a circuit from its device ID on an SLControllerConfigMessage.
  • Support for getting the status of pumps and setting flow speeds per-pump-per-circuit. - thanks @bshep
  • Constants for interpreting heat command/mode properties on various messages:
    • ScreenLogic.HEAT_MODE_OFF
    • ScreenLogic.HEAT_MODE_SOLAR
    • ScreenLogic.HEAT_MODE_SOLARPREFERRED
    • ScreenLogic.HEAT_MODE_HEATPUMP
    • ScreenLogic.HEAT_MODE_DONTCHANGE
  • Debug logs using the "debug" NPM package. You'll need to run an npm install after updating to this version.
  • Ability to cancel delays in pool equipment. #20 - thanks @bshep
  • Ability to register for push messages from the equipment so the connection can be kept open instead of repeatedly reconnecting and polling for changes. See the addClient() and removeClient() functions on the UnitConnection docs. - thanks @bshep