# Change Log All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. ## [7.6.3](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.6.2...v7.6.3) (2026-06-02) ### Bug Fixes * incorrect modelId in some prepared buffers ([b754f04](https://github.com/Julusian/node-elgato-stream-deck/commit/b754f0483fefdae514400bcd86291b818631f764)) * mini not connecting on network dock ([001466f](https://github.com/Julusian/node-elgato-stream-deck/commit/001466fcadf6c22d7ea9766b5823c888b0cfc519)) * minimise buffer rewrapping ([c31faa7](https://github.com/Julusian/node-elgato-stream-deck/commit/c31faa7b5b775b85d174f71f2498c4d0c45e6bf5)) * mixing keyIndex and hidIndex ([392484e](https://github.com/Julusian/node-elgato-stream-deck/commit/392484e80774f9ce1ef615182faa2b91a756b523)) * truncated serial numbers for modern mini/6key ([8406fb0](https://github.com/Julusian/node-elgato-stream-deck/commit/8406fb0221909fd805e6d6711ad1cade5d33033f)) ## [7.6.2](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.6.1...v7.6.2) (2026-03-29) ### Bug Fixes * EISCONN upon connection loss of network dock ([#152](https://github.com/Julusian/node-elgato-stream-deck/issues/152)) ([7432235](https://github.com/Julusian/node-elgato-stream-deck/commit/7432235cf8449e7aba0c2cf4aa52fe89f6e54454)) ## [7.6.1](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.6.0...v7.6.1) (2026-03-19) ### Bug Fixes * avoid flooding streamdecks with too any feature reports in a short span ([f39a9ed](https://github.com/Julusian/node-elgato-stream-deck/commit/f39a9ed14aa204e802d514a02e6a8b7a3d00ba41)) * avoid flooding streamdecks with too any feature reports in a short span ([1418069](https://github.com/Julusian/node-elgato-stream-deck/commit/1418069bdf9f26253c6a7f49b2b7a931f22d0e6c)) * enable tcp noDelay, and reduce packet segmentation ([770927e](https://github.com/Julusian/node-elgato-stream-deck/commit/770927eb932c9f966ec1d9a9eb94120f4535ae7d)) * optimise clear panel calls ([d9078e9](https://github.com/Julusian/node-elgato-stream-deck/commit/d9078e933a40c83e708201cf96f1a891dad8fda0)) ## [7.6.0](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.5.2...v7.6.0) (2026-03-03) ### Features * support stream deck + xl ([#146](https://github.com/Julusian/node-elgato-stream-deck/issues/146)) ([22825ee](https://github.com/Julusian/node-elgato-stream-deck/commit/22825eedc12b47653e310e00611341b924bdf93e)) ## [7.5.2](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.5.1...v7.5.2) (2026-01-27) ### Bug Fixes * support newer jpeg-turbo library ([3fb9115](https://github.com/Julusian/node-elgato-stream-deck/commit/3fb9115df8f411a331f80c67b1549dbd4bd0ba53)) ## [7.5.1](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.5.0...v7.5.1) (2026-01-26) ### Bug Fixes * remove npm token for publish ([3a79fe2](https://github.com/Julusian/node-elgato-stream-deck/commit/3a79fe275857a31f9c800ad9bb5abdb820a68d73)) ## [7.5.0](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.4.0...v7.5.0) (2026-01-26) ### Features * support Corsair Galleon K100 SD ([ee2af69](https://github.com/Julusian/node-elgato-stream-deck/commit/ee2af69156117f02c7cfb43cabc09d31d4b47d55)) * support multiple vendorIds ([df13768](https://github.com/Julusian/node-elgato-stream-deck/commit/df13768b94301d3b45e52f1abf81f71270000d1a)) ## [7.4.0](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.3.4...v7.4.0) (2025-11-23) ### Features * add getStreamDeckModelName ([469de22](https://github.com/Julusian/node-elgato-stream-deck/commit/469de22780e9fcc3018b1300bdafb31cdc99a922)) * Add support for Mini (Discord Edition) ([#134](https://github.com/Julusian/node-elgato-stream-deck/issues/134)) ([f58cc15](https://github.com/Julusian/node-elgato-stream-deck/commit/f58cc1585f1a716a21d2642e0f2a2f0a09059a58)) ### Bug Fixes * webhid feature report length not 32 bytes ([#130](https://github.com/Julusian/node-elgato-stream-deck/issues/130)) ([c75993c](https://github.com/Julusian/node-elgato-stream-deck/commit/c75993c139e06ffcbdb00dc8bb607e18ee14a3f3)) ## [7.3.4](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.3.3...v7.3.4) (2025-10-21) ### Bug Fixes * **TCP:** Import EventEmitter correctly ([#126](https://github.com/Julusian/node-elgato-stream-deck/issues/126)) ([7d7e53e](https://github.com/Julusian/node-elgato-stream-deck/commit/7d7e53e46bb018fa8cfbd607e24f36f649ab7e8e)) * unify eventemitter imports ([a55bf39](https://github.com/Julusian/node-elgato-stream-deck/commit/a55bf3964ec58f04a57319f7a722f786b93d3f51)) ## [7.3.3](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.3.2...v7.3.3) (2025-10-08) ### Bug Fixes * network dock not working with streamdeck mini ([9688502](https://github.com/Julusian/node-elgato-stream-deck/commit/9688502d4797d4cbace164f540f91e9fbb2338e1)) ## [7.3.2](https://github.com/julusian/node-elgato-stream-deck/compare/v7.3.1...v7.3.2) (2025-07-14) ### Bug Fixes * network dock brightness (and some other messages) not working ([a31c810](https://github.com/julusian/node-elgato-stream-deck/commit/a31c8105dfe22b96ddd7e57a9af7461d9c76e88c)) ## [7.3.1](https://github.com/julusian/node-elgato-stream-deck/compare/v7.3.0...v7.3.1) (2025-05-30) **Note:** Version bump only for package elgato-stream-deck-packages # [7.3.0](https://github.com/julusian/node-elgato-stream-deck/compare/v7.2.0...v7.3.0) (2025-05-30) ### Features * prepared buffers ([#102](https://github.com/julusian/node-elgato-stream-deck/issues/102)) ([026cbf3](https://github.com/julusian/node-elgato-stream-deck/commit/026cbf37f643096002a5a8385f26e59d5a390d24)) * support network dock ([#115](https://github.com/julusian/node-elgato-stream-deck/issues/115)) ([58b8994](https://github.com/julusian/node-elgato-stream-deck/commit/58b899456dcf8e84c930c9f9943373aa1b931299)) # [7.2.0](https://github.com/julusian/node-elgato-stream-deck/compare/v7.1.2...v7.2.0) (2025-05-24) ### Features * add 6 module, 15 module and 32 module ([ca874d8](https://github.com/julusian/node-elgato-stream-deck/commit/ca874d8f857a944871f4aecb97699b8b1cf945f0)) * add mk2 scissor ([025961d](https://github.com/julusian/node-elgato-stream-deck/commit/025961d1dd9db21afa0c4c5764ae86a0ca977353)) ## [7.1.2](https://github.com/julusian/node-elgato-stream-deck/compare/v7.1.1...v7.1.2) (2024-12-09) ### Bug Fixes * studio clearPanel over usb ([6282b1b](https://github.com/julusian/node-elgato-stream-deck/commit/6282b1b401ce5a17955c3dc01e0757773efa520c)) ## [7.1.1](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.1.0...v7.1.1) (2024-11-14) ### Bug Fixes * simplify firmware versions ([1b94c63](https://github.com/Julusian/node-elgato-stream-deck/commit/1b94c63a6742bfe47d424acdf4c70927d62066b2)) # [7.1.0](https://github.com/Julusian/node-elgato-stream-deck/compare/v7.0.2...v7.1.0) (2024-11-14) ### Bug Fixes * fillKeyColor ([234fa8f](https://github.com/Julusian/node-elgato-stream-deck/commit/234fa8f0cc8c5755f356d2a01f75c5374f616d00)) * studio mac address ([dbbf04f](https://github.com/Julusian/node-elgato-stream-deck/commit/dbbf04fe9eacfb6abdb054a34f06cce9bdea2023)) * studio right encoder led ring offset ([024fd2a](https://github.com/Julusian/node-elgato-stream-deck/commit/024fd2a108ac0adeb6cd8d152b507da32c410fa2)) * studio right encoder led ring offset ([65839d8](https://github.com/Julusian/node-elgato-stream-deck/commit/65839d8a1ea70ba8d85475b0d9950629dab1551c)) * udev rules [#106](https://github.com/Julusian/node-elgato-stream-deck/issues/106) ([ba41a75](https://github.com/Julusian/node-elgato-stream-deck/commit/ba41a759cd9b86e6de1574230a0209229392ebef)) ### Features * additional studio firmware versions ([46c49d7](https://github.com/Julusian/node-elgato-stream-deck/commit/46c49d7cc91263931ff2a0e3d9a50b2e20f96a44)) * additional studio firmware versions (usb) ([4e2e5df](https://github.com/Julusian/node-elgato-stream-deck/commit/4e2e5df1811427d78f4515b3e313a39e4625bbb7)) ## [7.0.2](https://github.com/julusian/node-elgato-stream-deck/compare/v7.0.1...v7.0.2) (2024-09-16) ### Bug Fixes * ensure error handler is added while probing a tcp socket ([14e7765](https://github.com/julusian/node-elgato-stream-deck/commit/14e7765e10f860d46b25a9bf6c6f8a805495a705)) ## [7.0.1](https://github.com/julusian/node-elgato-stream-deck/compare/v7.0.0...v7.0.1) (2024-09-10) ### Bug Fixes * disable `SUPPORTS_RGB_KEY_FILL` for some models [#101](https://github.com/julusian/node-elgato-stream-deck/issues/101) ([d752b41](https://github.com/julusian/node-elgato-stream-deck/commit/d752b41726a37f3740ef5dafd85ec72408b19433)) # [7.0.0](https://github.com/julusian/node-elgato-stream-deck/compare/v7.0.0-0...v7.0.0) (2024-09-08) ### Features * streamdeck studio support ([#100](https://github.com/julusian/node-elgato-stream-deck/issues/100)) ([baf506d](https://github.com/julusian/node-elgato-stream-deck/commit/baf506da9f4a1e38bc8f7f393743491c21c59835)) # [7.0.0-0](https://github.com/julusian/node-elgato-stream-deck/compare/v6.2.2...v7.0.0-0) (2024-08-26) ### Features * target nodejs 18 ([5fe6c09](https://github.com/julusian/node-elgato-stream-deck/commit/5fe6c092ba46e09a1814ff627ec2991359dadd6c)) * rework how device functionality is exposed * rework events structure ## [6.2.2](https://github.com/julusian/node-elgato-stream-deck/compare/v6.2.1...v6.2.2) (2024-07-11) ### Bug Fixes * build error ([e23aa8b](https://github.com/julusian/node-elgato-stream-deck/commit/e23aa8b61a570b08dcaf53461bbf9ad857371d8c)) ## [6.2.1](https://github.com/julusian/node-elgato-stream-deck/compare/v6.2.0...v6.2.1) (2024-07-11) ### Bug Fixes * val.readUint8 is not a function ([#95](https://github.com/julusian/node-elgato-stream-deck/issues/95)) ([d80b765](https://github.com/julusian/node-elgato-stream-deck/commit/d80b76572cb02589549315eaee92de7c08f963eb)) # [6.2.0](https://github.com/julusian/node-elgato-stream-deck/compare/v6.0.0...v6.2.0) (2024-04-30) ### Bug Fixes * clear neo screen as part of `clearPanel` ([53b88e5](https://github.com/julusian/node-elgato-stream-deck/commit/53b88e5772cd7e8f0fb9716e6e7f4d714e5c029f)) * omit tests from npm packages ([80e6676](https://github.com/julusian/node-elgato-stream-deck/commit/80e6676bab58bf154b733c137881ba13bae9d04d)) * rework udev rules [#88](https://github.com/julusian/node-elgato-stream-deck/issues/88) ([d6054a7](https://github.com/julusian/node-elgato-stream-deck/commit/d6054a79781239dc8c845d2f866335621297d9c2)) * support longer serial numbers [#76](https://github.com/julusian/node-elgato-stream-deck/issues/76) ([545cb6e](https://github.com/julusian/node-elgato-stream-deck/commit/545cb6eaa2eccecc5f94e47973465e7b1a43f664)) * update examples to run and better support plus and neo ([219e37c](https://github.com/julusian/node-elgato-stream-deck/commit/219e37cdf77963cc59c4de810fdb555e30194408)) ### Features * add `KEY_SPACING_VERTICAL` and `KEY_SPACING_HORIZONTAL` properties ([d69e5c7](https://github.com/julusian/node-elgato-stream-deck/commit/d69e5c74fe027e3763eee645b1639c367de19155)) * neo lcd drawing ([7d13bc0](https://github.com/julusian/node-elgato-stream-deck/commit/7d13bc03306fccad119b4f203c9106bc93d5515b)) * **node:** expose path of opened device [#65](https://github.com/julusian/node-elgato-stream-deck/issues/65) ([45ebbe5](https://github.com/julusian/node-elgato-stream-deck/commit/45ebbe5a9e721f3a89d027d977193f7aa322f6ce)) * refactor image generation to be more modular ([4f62a9d](https://github.com/julusian/node-elgato-stream-deck/commit/4f62a9d05d7abb4d44779281cdc2285c66623f3a)) * refactor streamdeck plus lcd image generation (needs testing) ([e32eaa5](https://github.com/julusian/node-elgato-stream-deck/commit/e32eaa53e47b6c43a5bf4ffa0a55afd9eee7be87)) * support for streamdeck neo ([65197a7](https://github.com/julusian/node-elgato-stream-deck/commit/65197a7735d86ebd1883f96a5f7719b2bd1c95fb)) * **webhid:** Add forget method [#79](https://github.com/julusian/node-elgato-stream-deck/issues/79) ([f13ee36](https://github.com/julusian/node-elgato-stream-deck/commit/f13ee363ef1e1a236ce815917e7f5e76ae8efb79)) # [6.1.0](https://github.com/julusian/node-elgato-stream-deck/compare/v6.0.0...v6.1.0) (2024-04-21) ### Bug Fixes * rework udev rules [#88](https://github.com/julusian/node-elgato-stream-deck/issues/88) ([d6054a7](https://github.com/julusian/node-elgato-stream-deck/commit/d6054a79781239dc8c845d2f866335621297d9c2)) ### Features * add `KEY_SPACING_VERTICAL` and `KEY_SPACING_HORIZONTAL` properties ([d69e5c7](https://github.com/julusian/node-elgato-stream-deck/commit/d69e5c74fe027e3763eee645b1639c367de19155)) * **node:** expose path of opened device [#65](https://github.com/julusian/node-elgato-stream-deck/issues/65) ([45ebbe5](https://github.com/julusian/node-elgato-stream-deck/commit/45ebbe5a9e721f3a89d027d977193f7aa322f6ce)) * **webhid:** Add forget method [#79](https://github.com/julusian/node-elgato-stream-deck/issues/79) ([f13ee36](https://github.com/julusian/node-elgato-stream-deck/commit/f13ee363ef1e1a236ce815917e7f5e76ae8efb79)) # [6.0.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.7.3...v6.0.0) (2023-11-29) ### Features * use async node-hid ([#75](https://github.com/julusian/node-elgato-stream-deck/issues/75)) ([9938244](https://github.com/julusian/node-elgato-stream-deck/commit/9938244f1c61618ce821fe574127c5ae81211c72)) ## [5.7.3](https://github.com/julusian/node-elgato-stream-deck/compare/v5.7.2...v5.7.3) (2023-06-20) ### Bug Fixes * streamdeck mini unable to be opened on windows ([f8b174a](https://github.com/julusian/node-elgato-stream-deck/commit/f8b174a31a1afabf6f8aa1b69ed52809f5f6316b)) ## [5.7.2](https://github.com/julusian/node-elgato-stream-deck/compare/v5.7.1...v5.7.2) (2023-01-17) ### Bug Fixes * **node:** avoid duplicates in `listStreamDecks` [#32](https://github.com/julusian/node-elgato-stream-deck/issues/32) ([660eb39](https://github.com/julusian/node-elgato-stream-deck/commit/660eb39b3ed19febd2c95074a43034ca1b9e9dd3)) ## [5.7.1](https://github.com/julusian/node-elgato-stream-deck/compare/v5.7.0...v5.7.1) (2023-01-17) ### Bug Fixes * **webhid:** Ignore hid devices which are non-streamdeck [#60](https://github.com/julusian/node-elgato-stream-deck/issues/60) ([b212d4e](https://github.com/julusian/node-elgato-stream-deck/commit/b212d4e5d240c95995c90fb91185206d90da2aa2)) # [5.7.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.6.0-alpha.0...v5.7.0) (2022-11-15) ### Features * streamdeck plus ([#59](https://github.com/julusian/node-elgato-stream-deck/issues/59)) ([37479d8](https://github.com/julusian/node-elgato-stream-deck/commit/37479d8a14bffe6eb421164bbaad1161dc302502)) ### Reverts * Revert "chore: switch to yarn3" ([45f6137](https://github.com/julusian/node-elgato-stream-deck/commit/45f613755a274c350b7819d30856cf7aa27f27e3)) # [5.6.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.6.0-alpha.0...v5.6.0) (2022-09-30) **Note:** Version bump only for package elgato-stream-deck-packages # [5.6.0-alpha.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.5.0...v5.6.0-alpha.0) (2022-09-25) **Note:** Version bump only for package elgato-stream-deck-packages # [5.5.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.5.0-alpha.1...v5.5.0) (2022-07-25) **Note:** Version bump only for package elgato-stream-deck-packages # [5.5.0-alpha.1](https://github.com/julusian/node-elgato-stream-deck/compare/v5.5.0-alpha.0...v5.5.0-alpha.1) (2022-07-25) ### Bug Fixes * mini-v2 ([b5bce79](https://github.com/julusian/node-elgato-stream-deck/commit/b5bce799c8b46f4d882e6b80e073445be3261b8b)) # [5.5.0-alpha.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.4.0...v5.5.0-alpha.0) (2022-07-08) ### Bug Fixes * optimise coordinate manipulation for buffers ([4ca3b66](https://github.com/julusian/node-elgato-stream-deck/commit/4ca3b66a03b17c1d495a726d89a90a3890b23ddc)) * support @julusian/jpeg-turbo 2.x ([9a0a718](https://github.com/julusian/node-elgato-stream-deck/commit/9a0a718bab6cd77b8803b5e3e42396183b83d892)) ### Features * implement mini-v2 ([4993389](https://github.com/julusian/node-elgato-stream-deck/commit/49933898efb8772a008f8427eca15d4a1b20448d)) # [5.4.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.4.0-alpha.0...v5.4.0) (2022-05-10) ### Bug Fixes * add missing tslib dependency ([6b53699](https://github.com/julusian/node-elgato-stream-deck/commit/6b536994bea3686b4b03fccadafeb2a532e63f4d)) * UDEV rules example markdown. Missing * after hidraw ([#43](https://github.com/julusian/node-elgato-stream-deck/issues/43)) ([596b1f9](https://github.com/julusian/node-elgato-stream-deck/commit/596b1f9cf8b6bef2040c85a172e30690c15b9028)) * UDEV rules example markdown. Missing * after hidraw ([#43](https://github.com/julusian/node-elgato-stream-deck/issues/43)) ([6f94093](https://github.com/julusian/node-elgato-stream-deck/commit/6f94093444951104b37064d1bf7a815ffef0aa60)) # [5.4.0-alpha.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.3.1...v5.4.0-alpha.0) (2022-04-12) ### Features * support for the pedal (untested) ([ccc4389](https://github.com/julusian/node-elgato-stream-deck/commit/ccc4389844c67194060f32e741c41407713c4cf7)) ## [5.3.1](https://github.com/julusian/node-elgato-stream-deck/compare/v5.3.0...v5.3.1) (2022-02-21) ### Bug Fixes * ensure build before publish ([786ad79](https://github.com/julusian/node-elgato-stream-deck/commit/786ad798b5d6472cd35f3c895c901073edeea378)) # [5.3.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.2.0...v5.3.0) (2022-02-21) ### Features * allow the original 15 key to be used in webhid ([7ff5624](https://github.com/julusian/node-elgato-stream-deck/commit/7ff562446b77d17b119f27570937513f02338f28)) * use hidraw backend on linux, as modern (2 year old) kernels support it for all models now ([596e426](https://github.com/julusian/node-elgato-stream-deck/commit/596e426da1d67c268056bd5b37730d13bbc569f1)) # [5.2.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.2.0-alpha.1...v5.2.0) (2022-01-25) **Note:** Version bump only for package elgato-stream-deck-packages # [5.2.0-alpha.1](https://github.com/julusian/node-elgato-stream-deck/compare/v5.2.0-alpha.0...v5.2.0-alpha.1) (2022-01-19) **Note:** Version bump only for package elgato-stream-deck-packages # [5.2.0-alpha.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.1.2...v5.2.0-alpha.0) (2022-01-18) ### Features * add method to get info about a hid device, if it is a streamdeck ([1791e37](https://github.com/julusian/node-elgato-stream-deck/commit/1791e370e830c0fff7e3169e30cb0871675fdf86)) * add PRODUCT_NAME property ([fbe3d14](https://github.com/julusian/node-elgato-stream-deck/commit/fbe3d1476e5ce2c472cc738e0694c968a558e102)) ## [5.1.2](https://github.com/julusian/node-elgato-stream-deck/compare/v5.1.1...v5.1.2) (2021-12-02) ### Bug Fixes * fillPanelBuffer not waiting for write [#28](https://github.com/julusian/node-elgato-stream-deck/issues/28) ([020a047](https://github.com/julusian/node-elgato-stream-deck/commit/020a047dceb8816f5b884d1aef3de07482c5d8c3)) ## [5.1.1](https://github.com/julusian/node-elgato-stream-deck/compare/v5.1.0...v5.1.1) (2021-07-19) ### Bug Fixes * mk2 is different to v2 ([71feace](https://github.com/julusian/node-elgato-stream-deck/commit/71feace86e0c097ea2b375b4981c252628f7eb4b)) # [5.1.0](https://github.com/julusian/node-elgato-stream-deck/compare/v5.0.0...v5.1.0) (2021-07-19) ### Features * support streamdeck mk2 (15 key, new style) ([a239503](https://github.com/julusian/node-elgato-stream-deck/commit/a239503b2edf7d4a6dae780ffa5e7dfe481d8cd8)) # [5.0.0](https://github.com/julusian/node-elgato-stream-deck/compare/v4.0.0...v5.0.0) (2021-03-07) This is a major overhaul of the library to allow for support for webhid to be added cleanly. The major changes are listed below, and should be reviewed when updating. The most notable changes are the api now returns promises for every operation, and various methods have been renamed to be more consistent ### Features * convert most methods to return promises, as webhid uses them even though node-hid doesnt. ([7b1883b](https://github.com/julusian/node-elgato-stream-deck/commit/7b1883be9ff91293aeef95cd1c0f087d795a4fb1)) * lerna ([c942fb9](https://github.com/julusian/node-elgato-stream-deck/commit/c942fb970727944eb3b614b98fd996f2531b0c53)) * publish demo to github pages ([44428a2](https://github.com/julusian/node-elgato-stream-deck/commit/44428a23619538de9de5a50975e30a6957efc44b)) * refactor into a separate node package ([0e68e20](https://github.com/julusian/node-elgato-stream-deck/commit/0e68e206acf99024fa3673a3c8c26a52b08f83b1)) * remove exit-hook due to it potentially 'claiming' error handling ([a4aca6b](https://github.com/julusian/node-elgato-stream-deck/commit/a4aca6bb14d0cdbf3e0ac4d01b016b5e85e32890)) * use eventemitter3 instead of node eventemitter ([31e6bc3](https://github.com/julusian/node-elgato-stream-deck/commit/31e6bc300c963d45c103fa0de9788c458637c684)) * rename api methods to be clearer ([e8777bb](https://github.com/julusian/node-elgato-stream-deck/commit/e8777bbb3ac5b549d91f9062dd8b3e1a4b28021b)) ### [4.0.1](https://github.com/julusian/node-elgato-stream-deck/compare/v4.0.0...v4.0.1) (2021-01-07) ### Bug Fixes * don't require tslib in generated code ([69e1dfe](https://github.com/julusian/node-elgato-stream-deck/commit/69e1dfeda180ff0a04d0c82956bfe0e455b7f54a)) ## [4.0.0](https://github.com/julusian/node-elgato-stream-deck/compare/v3.3.5...v4.0.0) (2020-12-23) ### BREAKING CHANGES - Drop support for node 8 or older ### Features - support for buffers in any of rgb, rgba, bgr or bgra ([088d979](https://github.com/julusian/node-elgato-stream-deck/commit/088d979821d5614c0a751cfb594f7da936238552)) ### Bug Fixes - broken text-generation example ([364f6de](https://github.com/julusian/node-elgato-stream-deck/commit/364f6de8ca83bfa89138f65bea31a01af42cd108)) - dependencies too new for node8 ([875f5bd](https://github.com/julusian/node-elgato-stream-deck/commit/875f5bd9a215310610ad3a8b06173a4aa8b3f7ff)) ### [3.3.5](https://github.com/julusian/node-elgato-stream-deck/compare/v3.3.3...v3.3.5) (2020-12-08) ### [3.3.3](https://github.com/julusian/node-elgato-stream-deck/compare/v3.3.2...v3.3.3) (2020-12-04) ### [3.3.2](https://github.com/julusian/node-elgato-stream-deck/compare/v3.3.1...v3.3.2) (2020-08-28) ### [3.3.1](https://github.com/julusian/node-elgato-stream-deck/compare/v3.3.0...v3.3.1) (2020-07-18) ### Bug Fixes - only audit dependencies ([60e7cca](https://github.com/julusian/node-elgato-stream-deck/commit/60e7ccabfb1f655829b55a255c8d2062bdb3a4c0)) - only audit dependencies ([60e7cca](https://github.com/julusian/node-elgato-stream-deck/commit/60e7ccabfb1f655829b55a255c8d2062bdb3a4c0)) - trim the serial number to 12 characters, as it always is currently ([d371654](https://github.com/julusian/node-elgato-stream-deck/commit/d371654df32f7e7bf07e9ce1c0fc14c7876799b4)) - trim the serial number to 12 characters, as it always is currently ([d371654](https://github.com/julusian/node-elgato-stream-deck/commit/d371654df32f7e7bf07e9ce1c0fc14c7876799b4)) ## [3.3.0](https://github.com/julusian/node-elgato-stream-deck/compare/v3.2.0...v3.3.0) (2020-02-16) ### Features - pass buffers to node-hid ([d371969](https://github.com/julusian/node-elgato-stream-deck/commit/d371969be44e247c97e8f40e5b0b5f00bffc982a)) - upgrade jpeg-turbo and expose quality options ([344254a](https://github.com/julusian/node-elgato-stream-deck/commit/344254ae72119f34146dda4d30959ed7e65d19a4)) ### Bug Fixes - optimise buffer transform/color conversion ([c5987ac](https://github.com/julusian/node-elgato-stream-deck/commit/c5987ac4783634282a1db132f8b38e93d9497ade)) - remove dependency on node-hid typings for library users ([f83ae99](https://github.com/julusian/node-elgato-stream-deck/commit/f83ae990bf6208fd6efa6ec2235d6712b69f5a33)) - tests ([b493274](https://github.com/julusian/node-elgato-stream-deck/commit/b493274c20a8b8d4fa4f175dc1b910554a74a6b2)) - upgrade @types/node-hid ([3d59a4f](https://github.com/julusian/node-elgato-stream-deck/commit/3d59a4f8d2c5165cb96e77669884e9074bd583f9)) ## [3.2.0](https://github.com/julusian/node-elgato-stream-deck/compare/v3.1.0...v3.2.0) (2019-11-14) ### Features - Add support for the new hardware version of the original Stream Deck ([992ee21](https://github.com/julusian/node-elgato-stream-deck/commit/992ee21c56a120717dce7113af24d94f70ec20e1)) - close device on process exit ([105985e](https://github.com/julusian/node-elgato-stream-deck/commit/105985eb5f5a1fa0bc9396388450b55083feacf9)) - refactor originalv2 and xl to a shared base class ([c9357ac](https://github.com/julusian/node-elgato-stream-deck/commit/c9357acefa85df5870288212e7d31d01b4b68688)) ### Bug Fixes - add tests for original-v2 ([40030a8](https://github.com/julusian/node-elgato-stream-deck/commit/40030a8301a3c0dcb9e7375f6f0fd9fc15a37c56)) - line endings on windows ([c0af2d6](https://github.com/julusian/node-elgato-stream-deck/commit/c0af2d6f55f3268d932875543ea6fb9c7f4865bc)) - lint errors in origialv2 ([d8e7942](https://github.com/julusian/node-elgato-stream-deck/commit/d8e7942956930791aaa58c6b99363db089c4dd4b)) ## [3.1.0](https://github.com/julusian/node-elgato-stream-deck/compare/v3.0.0...v3.1.0) (2019-09-29) ### Bug Fixes - **xl:** resetToLogo not working ([2475726](https://github.com/julusian/node-elgato-stream-deck/commit/2475726)) ### Features - Add close method to cleanly close the HID device ([#72](https://github.com/julusian/node-elgato-stream-deck/issues/72)) ([877b5da](https://github.com/julusian/node-elgato-stream-deck/commit/877b5da)) ## [3.0.0](https://github.com/julusian/node-elgato-stream-deck/compare/v2.1.1...v3.0.0) (2019-06-03) ### Bug Fixes - Don't depend on tslib ([3ebd04f](https://github.com/julusian/node-elgato-stream-deck/commit/3ebd04f)) - Failing tests ([c36125d](https://github.com/julusian/node-elgato-stream-deck/commit/c36125d)) - **xl:** Fill full button with image. Fix images being horizontally flipped ([4044809](https://github.com/julusian/node-elgato-stream-deck/commit/4044809)) - Gracefully handle missing jpeg-turbo ([574068f](https://github.com/julusian/node-elgato-stream-deck/commit/574068f)) - ignore tests in coverage report. format config files. Add tests for device info and listing functions ([2c1db92](https://github.com/julusian/node-elgato-stream-deck/commit/2c1db92)) - JPEG encoding tests ([8efb092](https://github.com/julusian/node-elgato-stream-deck/commit/8efb092)) - Mini image display ([99c0c94](https://github.com/julusian/node-elgato-stream-deck/commit/99c0c94)) - Missing dependencies in travis ([9e0f5b5](https://github.com/julusian/node-elgato-stream-deck/commit/9e0f5b5)) - Missing devDependency ([f94ff51](https://github.com/julusian/node-elgato-stream-deck/commit/f94ff51)) - Move static device info methods to be separately importable. Reformat examples ([6dfde88](https://github.com/julusian/node-elgato-stream-deck/commit/6dfde88)) - Refactor fillImage command generation, and some attempted fixes for the mini ([15ce1f2](https://github.com/julusian/node-elgato-stream-deck/commit/15ce1f2)) - Refactor the packet generation code to be simpler ([d0ef9cf](https://github.com/julusian/node-elgato-stream-deck/commit/d0ef9cf)) - Remove padding from images for the mini ([751fc62](https://github.com/julusian/node-elgato-stream-deck/commit/751fc62)) - Switch to testing version of jpeg-turbo ([01e2e30](https://github.com/julusian/node-elgato-stream-deck/commit/01e2e30)) - Test and fix some extra commands for the XL ([7399b28](https://github.com/julusian/node-elgato-stream-deck/commit/7399b28)) - Travis not updating coveralls ([ea57f08](https://github.com/julusian/node-elgato-stream-deck/commit/ea57f08)) - update dependencies, and linux version used ([8916aec](https://github.com/julusian/node-elgato-stream-deck/commit/8916aec)) - Update node-hid to 0.7.9 ([da010e5](https://github.com/julusian/node-elgato-stream-deck/commit/da010e5)) ### Features - Add example for device detection ([81ad930](https://github.com/julusian/node-elgato-stream-deck/commit/81ad930)) - Add function to list available devices ([8c55598](https://github.com/julusian/node-elgato-stream-deck/commit/8c55598)) - Add resetToLogo function, ideal for when disconnecting from the device to reset it back to default ([1b94570](https://github.com/julusian/node-elgato-stream-deck/commit/1b94570)) - Convert to typescript ([a1492bd](https://github.com/julusian/node-elgato-stream-deck/commit/a1492bd)) - Functions to get firmware and serial numbers [#45](https://github.com/julusian/node-elgato-stream-deck/issues/45) ([ba130b9](https://github.com/julusian/node-elgato-stream-deck/commit/ba130b9)) - Initial (untested) support for StreamDeck Mini ([c41e684](https://github.com/julusian/node-elgato-stream-deck/commit/c41e684)) - Port tests to jest and typescript ([4ceaf90](https://github.com/julusian/node-elgato-stream-deck/commit/4ceaf90)) - Refactor logic to have a common base class with each device extending it ([8632d93](https://github.com/julusian/node-elgato-stream-deck/commit/8632d93)) - Reimplement fillPanel to work solely on buffers. Fix up all the examples ([f35c26c](https://github.com/julusian/node-elgato-stream-deck/commit/f35c26c)) - Removed references to sharp (BREAKING CHANGE) ([d17b7c4](https://github.com/julusian/node-elgato-stream-deck/commit/d17b7c4)) - Reorder the keys on the original to be left to right. The old behaviour can be restored if desired ([fdff5f1](https://github.com/julusian/node-elgato-stream-deck/commit/fdff5f1)) - Use jpeg-turbo as an optional dependency for image encoding, as it is significantly faster than jpeg-js but has a lot more dependencies ([e7e509e](https://github.com/julusian/node-elgato-stream-deck/commit/e7e509e)) - Working XL, with slightly dodgey but working image transfer ([eb294e8](https://github.com/julusian/node-elgato-stream-deck/commit/eb294e8)) ## [2.1.1](https://github.com/julusian/node-elgato-stream-deck/compare/v2.1.0...v2.1.1) (2018-04-05) ### Bug Fixes - **package:** pin node-hid to 0.6.0 ([de5186a](https://github.com/julusian/node-elgato-stream-deck/commit/de5186a)), closes [#46](https://github.com/julusian/node-elgato-stream-deck/issues/46) # [2.1.0](https://github.com/julusian/node-elgato-stream-deck/compare/v2.0.0...v2.1.0) (2018-03-05) ### Features - **package:** eliminate the need for compilation of dependencies on most platforms ([9e5f338](https://github.com/julusian/node-elgato-stream-deck/commit/9e5f338)) # [2.0.0](https://github.com/julusian/node-elgato-stream-deck/compare/v1.2.0...v2.0.0) (2017-11-28) ### Features - add `fillPanel` method - add `clearAllKeys` method - return the `StreamDeck` constructor instead of automatically instantiating it - allow providing a `devicePath` to the constructor - if no device path is provided, will attempt to use the first found Stream Deck. Errors if no Stream Decks are connected. - update `this.keyState` _before_ emitting `down` and `up` events - this is technically a _breaking change_, but is very unlikely to affect any production code ### Bug Fixes - fix center-cropping in `fillImageFromFile` - fix `sharp` only being a `devDependency`, and not a production `dependency` ### Code Refactoring - refactor `StreamDeck` class to move as much as possible to static methods and static getters - refactor code to use `async`/`await` - this is a _breaking change_, because we now only support Node.js v7.6 or newer ### Documentation - update all examples - add `fillPanel` example ### BREAKING CHANGES - `this.keyState` is now updated **before** `down` and `up` events are emitted. - Support for versions of Node.js earlier than 7.6 has been dropped. - The `StreamDeck` constructor is now required when `require`ing this library, instead of an instance of the class. \* See the docs for updated examples. # [1.2.0](https://github.com/julusian/node-elgato-stream-deck/compare/v1.1.0...v1.2.0) (2017-06-23) ### Features - add `clearKey` method #4 - add Typescript typings #13 - add `setBrightness` and `sendFeatureReport` [4d904f0](https://github.com/julusian/node-elgato-stream-deck/commit/4d904f0c7d40154186914599d877b5879179d48b) ### Bug Fixes - throw an error when no stream decks are present [c44a1bf](https://github.com/julusian/node-elgato-stream-deck/commit/c44a1bf3ae51bfdc7e9963f131a2ce02746b2975) - fix device detection on linux [e0b128c](https://github.com/julusian/node-elgato-stream-deck/commit/e0b128c82aa6e5075e3f8a77d9fca43103b83bc4) - `fillImage` fix blue and red channels being swapped [8efdb6b](https://github.com/julusian/node-elgato-stream-deck/commit/8efdb6bf0cb1fde3920c850c6b57d25e56648e09) ### Misc - Full test coverage # [1.1.0](https://github.com/julusian/node-elgato-stream-deck/compare/v1.0.0...v1.1.0) (2017-05-18) ### Features - add `write` method ([0085d87](https://github.com/julusian/node-elgato-stream-deck/commit/0085d87)) - add `fillColor`, `fillImage`, and `fillImageFromFile` methods ([5fe46ef](https://github.com/julusian/node-elgato-stream-deck/commit/5fe46ef)) # 1.0.0 (2017-05-17) Initial release.