npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

iobroker.oxxify-fan-control

v0.0.9

Published

Integrate your Oxxify Fans into your Smart Home.

Downloads

119

Readme

ioBroker.oxxify-fan-control

NPM version Downloads node-lts Libraries.io dependency status for latest release Number of Installations

NPM

Beta Stable

Tests: Test and Release

oxxify-fan-control adapter for ioBroker

Integrate your Oxxify fans into your Smart Home. All the provided ioBroker data points are based on the communication protocol described here. As other manufacturers are using the same protocol (e.g. Blauberg vents), it is pretty likely, that they will work as well.

Working devices

  • Oxxify smart 50 (tested from my side)
  • Any other Oxxify device with WiFi
  • Blauberg Vents and others with same protocol (the following ones are working)
    • Blauberg D180 S21
    • Vento Expert A50-1 S10 W V.2

Object tree desciption

The object tree contains the folder named "devices", which creates an entry for each configured fan. The channels below are created with the unique fan id, which is provided by the manufacturer. In the column name the entry from the configuration is used, to distinguish better between the fans. Below each fan four channels are created to group the data provided per fan. They are explained as follows:

Fan data

This channel contains any fan related data like timers, fan speed, on/off state and information regarding the filter cleaning/exchange interval. The fan operating modes contains the numerical value from the communication protocol as well as a speaking string state. The values can be written by the number only (e.g. a 1 for the heating recovery). Same applys for the timer mode and the fan speed mode, which accepts 1, 2, 3 and 255 for manual speed setting. The fan speed for fan 2 is not available at my devices (Oxxify pro 50) and stays either at 0 rpm in off state or 1500 in any run state. The other value changes accoring to the speed.

image

Network data

The network data is currently read-only, writing/changing of values here is not yet implemented and can be done with the app of the manufacturer. Same applys for the cloud server control state.

image

Sensors data

The data entrys for the sensors are implemented as defined in the protocol. The analog voltage vale is in % as defined in the protocol. I have nothing connected to the analog and relais sensor, so I can not really test what happens, if you activate them.

image

System data

This channel contains system data about the hardware and firmware as well as runtime, RTC battery voltage and date/time. Here alarms can be reset and also the RTC time can be set based on the configured NTP server. From my experience it can sometimes happen, that after an RTC time sync the new (right) values are not visible immediately and it takes until the next data polling.

image

ToDos

  • Implementing more tests
  • Improve documentation
  • Implement missing data points (like time schedule, writing of network data & cloud control)

Changelog

0.0.9 (2025-12-01)

  • Some dependency work
  • Avoid warning messages, if the received protocol does not contain values to update the ioBroker states (Issue #91)

0.0.8 (2025-10-16)

  • Some dependency work
  • Issues from adapter checker fixed

0.0.7 (2025-07-01)

  • Some dependency work
  • Code documentation extended
  • Added Node.js 24 to test and release pipeline
  • Resending interval of not overtaken values changed from 1,5 seconds to 2,5 seconds
  • Changed writable mixed numerical/string values for enums into selectable values, to show available configurations (breaking change if already used to remote control fans)
  • Rewrite mechanism allows now manual changes within the buttons of the fan, which were overridden by the internal stored value before

0.0.6 (2025-04-17)

  • Vulnerable dependency updated

0.0.5 (2025-03-21)

  • Added automatic write retry mechanism for writing values within the fan, as writing with UDP is not very reliable in connection with poor network conditions
  • Adapter checker issues fixed

0.0.4 (2025-01-31)

  • Updated ESLint to 9.x.x
  • Fixed copyright issue from adapter checker
  • Replaced deletion of all objects with deletion of missing devices from config only
  • Avoided illegal characters from user input for fan id within code
  • Changed state subscription to all states below the devices folder
  • Added restart logic of UDP server in case of an error
  • Added adapter terminiation if multiple udp server errors occured
  • Replaced cyclic checking of the send quene with a timeout approach instead of interval
  • Missing intermediate objects created
  • Roles updated according to the read/write definitions
  • Polling interval limited in JSON config and code
  • ioBroker unit in object tree for RTC date & time removed

0.0.3 (2025-01-11)

  • Added states for objects with high byte 0x03 with reading and writing
  • Recreate device objects on adapter restart
  • Simplified methods for writing fan data based on subscribed states
  • Added a first unit test for the parsing of numbers.

0.0.2 (2025-01-06)

  • (N-b-dy) initial release

License

Copyright (c) 2025 N-b-dy [email protected]

                GNU GENERAL PUBLIC LICENSE
                   Version 3, 29 June 2007

Disclaimer of Warranty.

THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

Limitation of Liability.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.