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.wiegand-tcpip

v1.0.1

Published

Wiegand Door Access Controller Shenzhen Weigeng Industrial

Readme

ioBroker.wiegand-tcpip

Logo

State, Test & Badge

NPM version Downloads Number of Installations Current version in stable repository

NPM

Tests: Test and Release

wiegand-tcpip adapter for ioBroker

Wiegand Door Access Controller Shenzhen Weigeng Industrial

Setup the adapter

Setup Help Release Checklist

Dependencies

| Component | Version | | :---: | :---: | | NodeJS | min 22 | | JS-Controller | min 6.x |

Recognition

My very special thanks go to @github/uhppoted & @github/twystd without whose help this software would not have been possible :+1:

  • https://github.com/uhppoted
  • https://github.com/twystd

Hardware

  • Wiegand to TCP/IP (https://ingenier.wordpress.com/zutrittskontrolle/ german)
  • Door Access Controller Shenzhen Weigeng Industrial (http://wiegand.com.cn)
  • UHPPOTE -UT0311-L01 (up to L04) (https://github.com/uhppoted)
  • VBESTLIFE, Dioche, Tangxi, ... (Big marketplace :wink: )
  • i-keys IK-Point SC300xNT SC90xNT? (https://www.i-keys.de)
  • Secukey C1 - C4 (http://secukey.com.cn/)
  • S4A ACB (http://www.s4a.com.cn/)

Not every listed hardware was tested by me. Don't hesitate to tell me about the compatibility

Disclaimer

I hereby exclude liability for any damage and consequential damage that may arise from testing or using the software. The software is designed for pure hardware-related communication. Safety-relevant protective mechanisms are to be implemented independently in their environment

Changelog

1.0.1 (2026-07-20)

  • Bugfix: Controller heartbeat crash when serial number passed as string to UHPPOTE API
  • Fixed i18n syntax error in Chinese translation (admin/words.js)
  • Fixed README.md H1 heading validation (E6025)
  • Resolved GitHub master branching violation (removed feat/user-management-foundation merge)

1.0.0 (2026-07-07)

  • Node.js >= 22 required (Node.js 20 EOL)
  • js-controller >= 6.0.11 required
  • Migrated to NPM Trusted Publishing (no more classic NPM tokens)
  • Migrated to ESLint 9 with @iobroker/eslint-config
  • Added Dependabot configuration with auto-merge
  • TypeScript 5.x, removed deprecated common.materialize
  • node: prefix added to all built-in module imports
  • Added UHPPOTE simulator based regression tests and release preflight scripts

0.4.7 (2024-11-05)

  • Fix for ioBroker.BOT see issues
  • Changes to new dependencies Node 22.x, Admin 5 and JS-Controler 5.0.19...

0.4.6 (2022-03-18)

0.4.5 (2022-03-11)

  • Bugfix: error in workflow

0.4.4 (2022-03-11)

  • Structur Native uAPI-Framework
  • user action for setTime
  • setup docs

0.4.3

  • setTime if device is running out
  • add per Controller the Model (1-, 2- and 4-Doors)
  • add info direction

0.4.2 (Beta)

  • Remote network setup
  • Broadcast device communication
  • Remote device communication
  • Bug ::Found uncleared intervals:: change clearInterval to adapter.clearInterval
  • special remoteDoorOpen (in other contex change net-access-mode unmotivated to broadcast)
  • device lowlevel debug enabled (from UHPPOTE framework connect to ioBroker log)
  • add various "silly" log messages

0.4.1-beta

  • Small blemishes fixed and translation completed

0.4.0-alpha

  • First working package

Initial release

Release preflight (step by step)

Use the full checklist in docs/release-checklist.md. Short version:

  1. Install dependencies: npm ci
  2. Setup simulator: npm run simulator:setup
  3. Typecheck: npm run check
  4. Lint: npm run lint
  5. JS + package tests: npm test
  6. Unit tests: npm run test:unit
  7. Integration tests: npm run test:integration
  8. Regression tests: npm run test:regression
  9. Verify metadata files (README.md, io-package.json, package.json)
  10. Only release when all checks are green

Multi-controller smoke + dev lab scripts

Use this workflow to simulate multi-controller operation with seeded cards/swipes and verify ioBroker admin availability.

Quickstart:

npm ci
npm run smoke:setup
npm run smoke:multicontroller

Manual setup (equivalent to smoke:setup):

npm run simulator:setup
npx @iobroker/dev-server setup

Start/Stop overview:

    # one-shot smoke run (start -> verify -> stop automatically)
    npm run smoke:multicontroller

    # user-ops multicontroller smoke (runs full simulator regression for stable user-ops coverage)
    npm run smoke:userops

    # persistent dev lab
    npm run devlab:start
    # open http://127.0.0.1:8081
    npm run devlab:stop

    # stop alias  
    npm run smoke:stop

Behavior notes:

  1. smoke:multicontroller stops itself automatically.
  2. devlab:start keeps services running until devlab:stop (or smoke:stop).
  3. If a process survives due to permissions, rerun stop command in elevated PowerShell.

What is seeded by start/smoke scripts:

  1. Two simulated controllers (405419896, 405419897)
  2. Test cards + swipe events for merge/deny/grant scenarios
  3. Reachability check for the admin endpoint

License

GPL-3.0-only

Copyright (c) 2024-2026 kbrausew [email protected]