iobroker.e3oncan 1.0.0-beta.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.de.md CHANGED
@@ -60,7 +60,7 @@ Welche Modi verfügbar sind, hängt von der Gerätekonfiguration ab. Weitere Det
60
60
 
61
61
  ### Datenpunkte-Seite
62
62
 
63
- Eine neue **e3oncan Datenpunkte**-Seite ist direkt in der Instanzzeile des Adapters in der ioBroker-Instanzansicht verankert. Sie bietet eine dedizierte Oberfläche zum Verwalten von Zeitplänen und Collect-Einstellungen je Gerät und Datenpunkt — ohne dass der vollständige Adapterkonfigurationsdialog geöffnet werden muss.
63
+ Eine neue **e3oncan Datenpunkte**-Seite ist direkt in der Instanzzeile des Adapters in der ioBroker-Instanzansicht verankert. Klicke auf die Schaltfläche <img src="admin/icon_open_tab.svg" height="20"> in der Instanzzeile, um sie zu öffnen. Sie bietet eine dedizierte Oberfläche zum Verwalten von Zeitplänen und Collect-Einstellungen je Gerät und Datenpunkt — ohne dass der vollständige Adapterkonfigurationsdialog geöffnet werden muss.
64
64
 
65
65
  ### Automatische Erkennung von Energiezählern
66
66
 
@@ -383,6 +383,8 @@ Wenn Ihnen dieses Projekt gefällt — oder Sie einfach großzügig sind — wü
383
383
  ### **WORK IN PROGRESS**
384
384
  * (MyHomeMyData) Behoben: Beim Speichern von Schedules in der Datenpunkte-Seite konnten unter bestimmten Umständen veraltete Einträge verbleiben
385
385
  * (MyHomeMyData) Topology-Schaltfläche in der Datenpunkte-Seite ergänzt; öffnet das Bus-Topologie-Diagramm in einem modalen Dialog
386
+ * (MyHomeMyData) Scan-Status-Erkennung verbessert: nutzt `udsDidsWritable` statt `didsMetaDict`, um zuverlässig zu erkennen, ob ein Datenpunktscan durchgeführt wurde
387
+ * (MyHomeMyData) Hinweis auf erneuten Scan in der Datenpunkte-Seite ergänzt, wenn ein Scan vorhanden, aber die Collect-Erkennung noch nicht durchgeführt wurde
386
388
 
387
389
  ### 1.0.0-beta.1 (2026-04-30)
388
390
  * (MyHomeMyData) Bus-Topologie-Analyse wird jetzt automatisch nach dem Datenpunktscan erstellt; Ergebnisse werden in `info.topology` (JSON) und `info.topologyHtml` (HTML) gespeichert; Details im Readme
package/README.md CHANGED
@@ -61,7 +61,7 @@ Which modes are available depends on your device topology. See the [device topol
61
61
 
62
62
  ### Datapoints tab
63
63
 
64
- A new **e3oncan datapoints** page is pinned directly to the adapter's instance row in the ioBroker instances view. It provides a dedicated UI for managing schedules and Collect settings per device and data point — no need to open the full adapter configuration dialog for day-to-day changes.
64
+ A new **e3oncan datapoints** page is pinned directly to the adapter's instance row in the ioBroker instances view. Click the <img src="admin/icon_open_tab.svg" height="20"> button in the instance row to open it. It provides a dedicated UI for managing schedules and Collect settings per device and data point — no need to open the full adapter configuration dialog for day-to-day changes.
65
65
 
66
66
  ### Auto-detection of energy meters
67
67
 
@@ -399,6 +399,11 @@ If you enjoyed this project — or just feeling generous, consider buying me a b
399
399
  Placeholder for the next version (at the beginning of the line):
400
400
  ### **WORK IN PROGRESS**
401
401
  -->
402
+ ### 1.0.0 (2026-05-06)
403
+ * (MyHomeMyData) Adapter requires node.js >= 22 now
404
+ * (MyHomeMyData) Improved scan status detection: uses `udsDidsWritable` instead of `didsMetaDict` to reliably detect whether a data point scan has been performed
405
+ * (MyHomeMyData) Added re-scan recommendation hint in datapoints tab when a scan exists but Collect auto-detection has not yet been run
406
+
402
407
  ### 1.0.0-beta.2 (2026-05-02)
403
408
  * (MyHomeMyData) Fixed: saving schedules in the datapoints tab could leave stale entries under certain conditions
404
409
  * (MyHomeMyData) Added Topology button to the datapoints tab; opens the bus topology diagram in a modal dialog
@@ -416,6 +421,9 @@ If you enjoyed this project — or just feeling generous, consider buying me a b
416
421
  * (MyHomeMyData) Collect-capable devices are now auto-detected during the data point scan by passive CAN listening; a pin icon is shown in the device card header for each detected device
417
422
  * (MyHomeMyData) Added option to suppress storing of data point values during data point scan
418
423
 
424
+ ### 0.11.3 (2026-05-03)
425
+ * (MyHomeMyData) The accidentally mentioned data points 1415-1418 have been removed from the changelog of version 0.11.0
426
+
419
427
  ### 0.11.2 (2026-05-02)
420
428
  * (MyHomeMyData) Added "What's new in v0.11.x" section to Readme with upgrade notes for data point structure changes
421
429
 
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24" fill="#4caf50"><path d="M160-160q-33 0-56.5-23.5T80-240v-120h80v120h640v-480H160v120H80v-120q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm300-140-56-58 83-82H80v-80h407l-83-82 56-58 180 180-180 180Z"/></svg>
package/admin/tab.html CHANGED
@@ -86,6 +86,14 @@
86
86
  The assignment of data points to devices is unknown and writing of data points is locked.
87
87
  Please run a data point scan from the adapter configuration dialog (<strong>List of Data Points</strong> tab).
88
88
  </div>
89
+ <div id="rescan-hint" class="alert alert-info d-none" role="alert">
90
+ <i class="bi bi-info-circle-fill"></i>
91
+ <strong>Re-scan recommended.</strong>
92
+ A data point scan with adapter v1.x has not been performed yet.
93
+ Please run a new data point scan from the adapter configuration dialog (<strong>List of Data Points</strong> tab)
94
+ to enable auto-detection of Collect-capable devices and energy meters.
95
+ <button type="button" class="btn btn-sm btn-outline-secondary ms-3" id="btn-dismiss-rescan-hint">Don't show again</button>
96
+ </div>
89
97
  <div id="devices-container"></div>
90
98
 
91
99
  <div class="modal fade" id="topology-modal" tabindex="-1">
@@ -118,6 +126,11 @@
118
126
  let loadedEnergyMeters = {};
119
127
  let topologyHtml = '';
120
128
 
129
+ document.getElementById('btn-dismiss-rescan-hint').addEventListener('click', function() {
130
+ localStorage.setItem('rescanHintDismissed_' + namespace, '1');
131
+ document.getElementById('rescan-hint').classList.add('d-none');
132
+ });
133
+
121
134
  function initSocket() {
122
135
  return new Promise(function(resolve) {
123
136
  setStatus('Connecting…');
@@ -170,7 +183,10 @@
170
183
  const totalDids = allDevices.reduce(function(s, d) { return s + d.dids.length; }, 0);
171
184
  setStatus('Loaded ' + totalDids + ' datapoints across ' + allDevices.length + ' device(s).');
172
185
  const anyScanMissing = allDevices.some(function(d) { return !d.scanDone; });
186
+ const collectScanDone = !!result.collectScanDone;
187
+ const rescanHintDismissed = !!localStorage.getItem('rescanHintDismissed_' + namespace);
173
188
  document.getElementById('scan-warning').classList.toggle('d-none', !anyScanMissing);
189
+ document.getElementById('rescan-hint').classList.toggle('d-none', anyScanMissing || collectScanDone || rescanHintDismissed);
174
190
  document.getElementById('btn-load').disabled = false;
175
191
  sock.emit('getState', namespace + '.info.topologyHtml', function(_err, state) {
176
192
  setTopologyButton(state && state.val ? state.val : '');
package/io-package.json CHANGED
@@ -1,8 +1,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "e3oncan",
4
- "version": "1.0.0-beta.2",
4
+ "version": "1.0.0",
5
5
  "news": {
6
+ "1.0.0": {
7
+ "en": "Adapter requires node.js >= 22 now\nImproved scan status detection: uses `udsDidsWritable` instead of `didsMetaDict` to reliably detect whether a data point scan has been performed\nAdded re-scan recommendation hint in datapoints tab when a scan exists but Collect auto-detection has not yet been run",
8
+ "de": "Adapter benötigt node.js >= 22\nVerbesserte Scan-Status-Erkennung: verwendet `udsDidsWritable` anstelle von `didsMetaDict`, um sicher zu erkennen, ob ein Datenpunkt-Scan durchgeführt wurde\nZusätzlicher re-scan Hinweis in Datenpunkte Tab, wenn ein Scan existiert, aber Collect Auto-Detektion noch nicht ausgeführt wurde",
9
+ "ru": "Адаптер требует node.js >= 22 сейчас\nУлучшенное обнаружение статуса сканирования: использует «udsDidsWritable» вместо «didsMetaDict», чтобы надежно определить, было ли выполнено сканирование точки данных\nДобавлен намек на рекомендацию повторного сканирования на вкладке точки данных, когда существует сканирование, но автоматическое обнаружение еще не запущено",
10
+ "pt": "Adaptador requer nod.js >= 22 agora\nDetecção de status de digitalização melhorada: usa `udsDidsWritable` em vez de `didsMetaDict` para detectar de forma confiável se uma varredura de ponto de dados foi realizada\nAdicionado re- scan sugestão de recomendação na aba pontos de dados quando uma varredura existe, mas Coletar auto- detecção ainda não foi executado",
11
+ "nl": "Voor de adapter zijn node.js < 22 nu nodig\nVerbeterde scanstatus detectie: maakt gebruik van \nToegevoegd re-scan aanbeveling hint in datapoints tabblad wanneer een scan bestaat, maar verzamelen auto-detectie is nog niet uitgevoerd",
12
+ "fr": "Adaptateur nécessite node.js >= 22 maintenant\nAmélioration de la détection de l'état de l'analyse: utilise `udsDidsWritable` au lieu de `didsMetaDict` pour détecter de manière fiable si une analyse de points de données a été effectuée\nAjout d'un indice de recommandation de re-scan dans l'onglet datapoints lorsqu'un scan existe mais Collecter la détection automatique n'a pas encore été exécuté",
13
+ "it": "Adattatore richiede node.js >= 22 ora\nRilevamento dello stato di scansione migliorato: utilizza `udsDidsWritable` invece di `didsMetaDict` per rilevare in modo affidabile se è stata eseguita una scansione del punto di dati\nAggiunto suggerimento re-scan nella scheda datapoints quando una scansione esiste ma Collect auto-detection non è ancora stato eseguito",
14
+ "es": "Adaptador requiere node.js ю= 22 ahora\nMejora de la detección del estado del escaneo: utiliza `udsDidsWritable` en lugar de `didsMetaDict` para detectar fiablemente si se ha realizado un análisis de puntos de datos\nAñadido re-escan recomendación indirecto en la pestaña puntos de datos cuando existe un escaneo, pero aún no se ha realizado la detección automática",
15
+ "pl": "Adapter wymaga node.js > = 22\nUlepszone wykrywanie statusu skanowania: używa 'udsDidsWritable' zamiast 'didsMetaDict' w celu wiarygodnego wykrycia, czy skan punktowy danych został wykonany\nDodano podpowiedź rekomendacji ponownego skanowania w zakładce datapoints, gdy skanowanie istnieje, ale zbieranie autodetekcji nie zostało jeszcze uruchomione",
16
+ "uk": "Адаптер вимагає node.js >= 22 тепер\nУдосконалено виявлення стану сканування: використовує `udsDidsWritable` замість `didsMetaDict` для надійного виявлення, чи проводиться сканування точок даних\nДодано повторне сканування натиснення в вкладці даних, коли існує сканування, але Збір автодетекції ще не працює",
17
+ "zh-cn": "适配器需要节点.js 现在22\n改进扫描状态检测:使用“didsWriteble”而不是“didsMetaDict”可靠地检测是否已进行数据点扫描\n当扫描已经存在但收集自动检测尚未运行时, 在数据点标签中添加了重新扫描建议提示"
18
+ },
6
19
  "1.0.0-beta.2": {
7
20
  "en": "Fixed: saving schedules in the datapoints tab could leave stale entries under certain conditions\nAdded Topology button to the datapoints tab; opens the bus topology diagram in a modal dialog",
8
21
  "de": "Behoben: Das Speichern von Zeitplänen in der Registerkarte Datenpunkte könnte unter bestimmten Bedingungen doppelte Einträge hinterlassen\nHinzugefügt: Button Topologie auf der Seite Datenpunkte öffnet die Topologie-Übersicht",
@@ -42,6 +55,19 @@
42
55
  "uk": "Нова веб-сторінка точок даних e3oncan, закріплена в рядку екземпляра адаптера\nЛічильники електроенергії (E380, E3100CB) тепер автоматично виявляються під час сканування пристроїв шляхом пасивного прослуховування CAN на обох каналах\nІмена станів для лічильників електроенергії призначаються автоматично на основі адреси CAN та каналу; подробиці у Readme\nПеремикач Collect і затримка для лічильників електроенергії налаштовуються виключно на сторінці точок даних e3oncan; зміни набирають чинності після перезапуску адаптера\nПри першому запуску після оновлення активне налаштування автоматично переноситься з попередньої конфігурації адаптера\nПристрої з підтримкою Collect тепер автоматично виявляються під час сканування точок даних; значок шпильки відображається у заголовку картки пристрою\nДодано опцію для відключення збереження значень точок даних під час сканування",
43
56
  "zh-cn": "新的e3oncan数据点网页固定在适配器实例行中\n能量表(E380、E3100CB)现在在设备扫描期间通过对两个CAN通道的被动监听自动检测\n能量表的状态名称根据CAN地址和通道自动分配;详情请参阅Readme\n能量表的Collect开关和延迟仅在e3oncan数据点页面中配置;更改在适配器重启后生效\n升级后首次运行时,激活设置会自动从之前的适配器配置中迁移\n在数据点扫描期间,通过被动CAN监听自动检测支持Collect模式的设备;每个检测到的设备在设备卡片标题中显示图钉图标\n添加了在扫描期间抑制数据点值存储的选项"
44
57
  },
58
+ "0.11.3": {
59
+ "en": "The accidentally mentioned data points 1415-1418 have been removed from the changelog of version 0.11.0",
60
+ "de": "Die versehentlich erwähnten Datenpunkte 1415-1418 wurden aus dem Changelog der Version 0.11.0 entfernt",
61
+ "ru": "Случайно упомянутые точки 1415-1418 данных были удалены из журнала изменений версии 0.11.0",
62
+ "pt": "Os dados referidos acidentalmente pontos 1415-1414 foram retirados do changelog da versão 0.11.0",
63
+ "nl": "De per ongeluk genoemde gegevenspunten 1415-1418 zijn verwijderd uit het changelog van versie 0.11.0",
64
+ "fr": "Les points de données accidentellement mentionnés 1415-1418 ont été supprimés du journal de changement de la version 0.11.0",
65
+ "it": "I punti di dati menzionati accidentalmente 1415-1418 sono stati rimossi dal changelog della versione 0.11.0",
66
+ "es": "Los puntos de datos mencionados accidentalmente 1415-1418 han sido eliminados del cambio de la versión 0.11.0",
67
+ "pl": "Przypadkowo wymienione punkty danych 1415- 1418 zostały usunięte z changelog wersji 0.11.0",
68
+ "uk": "У випадково зазначених пунктах даних 1415-1418 було вилучено з зміни версії 0.11.0",
69
+ "zh-cn": "无意中提到的1415-1418数据点已经从0.110"
70
+ },
45
71
  "0.11.2": {
46
72
  "en": "Added \"What's new in v0.11.x\" section to Readme with upgrade notes for data point structure changes",
47
73
  "de": "Hinzugefügt \"Was ist neu in v0.11.x\" Abschnitt zu Readme mit Upgrade-Notizen für Datenpunkt Strukturänderungen",
@@ -67,32 +93,6 @@
67
93
  "pl": "Lepsza odporność: Otrzymanie punktu danych o długości zero jest traktowane jako \"odpowiedź negatywna\"\nMetadane są teraz również przywrócone po usunięciu punktu danych\nDopasowanie przypadków testowych dla języka niemieckiego",
68
94
  "uk": "Покращена надійність: Отримання точки даних довжини нульового обробляється як \"негативна відповідь\"\nМетадані також відновлюються після видалення даних\nВизначені тестові випадки для німецької мови системи",
69
95
  "zh-cn": "增强强性:接收长度为0的数据点作为\"负反应\"处理\n在删除一个数据点后, 元数据现在也被恢复\n德语系统语言的对齐测试例"
70
- },
71
- "0.11.0": {
72
- "en": "To take full advantage of the variant data points and metadata, please perform a device scan followed by a data point scan\nAdded handling for variant data points and for device's data format configuration, refer to https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md for details\nAdded metadata to several data points, e.g. description, unit, link to further info\nDuring scan of data points now metadata are added to data point objects\nChanged handling of writable data points; this info now also is available within definition of data point; however, there is no change to handling of the whitelist of writables\nDuring device scan the information about used data formats (data point 382) is evaluated\nUpdated structure of many data points; for details see this [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
73
- "de": "Um das Konzept der varianten Datenpunkte und der Metadaten voll auszunutzen, führen Sie bitte einen Gerätescan an, gefolgt von einem Datenpunktscan durch\nNeues Konzept für variante Datenpunkte und für die Konfiguration des Datenformats des Geräts finden Sie unter https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md für Details\nMetadaten zu vielen Datenpunkten hinzugefügt, z.B. Beschreibung, Einheit, Link zu weiteren Informationen\nBeim Scannen von Datenpunkten werden nun Metadaten zu Datenpunktobjekten hinzugefügt\nGeänderte Handhabung von schreibbaren Datenpunkten; diese Informationen sind nun auch innerhalb der Definition von Datenpunkt verfügbar; es gibt jedoch keine Änderung der Handhabung der Whitelist\nBeim Gerätescannen werden die Informationen über verwendete Datenformate (Datenpunkt 382) ausgewertet\nAktualisierte Struktur vieler Datenpunkte; für Details siehe diese [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
74
- "ru": "Чтобы в полной мере использовать различные точки данных и метаданные, пожалуйста, выполните сканирование устройства с последующим сканированием точки данных\nДобавленная обработка для точек данных варианта и конфигурации формата данных устройства, см. https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md для деталей\nДобавлены метаданные в несколько точек данных, например описание, блок, ссылка на дополнительную информацию\nВо время сканирования точек данных метаданные добавляются к объектам точек данных\nИзмененная обработка записываемых точек данных; эта информация теперь также доступна в определении точки данных; однако нет никаких изменений в обработке белого списка записываемых данных\nПри сканировании устройства оценивается информация об используемых форматах данных (точка 382)\nОбновленная структура многих точек данных; для получения подробной информации см. [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
75
- "pt": "Para tirar o máximo proveito dos pontos de dados e metadados variantes, por favor realize uma varredura do dispositivo seguida de uma varredura do ponto de dados\nManuseamento adicionado para os pontos de dados variantes e para a configuração do formato de dados do dispositivo, consulte https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md para detalhes\nAdicionados metadados a vários pontos de dados, por exemplo, descrição, unidade, link para informações adicionais\nDurante a varredura de pontos de dados agora os metadados são adicionados aos objetos do ponto de dados\nManuseamento alterado de pontos de dados graváveis; esta informação agora também está disponível dentro da definição de ponto de dados; no entanto, não há nenhuma alteração no manuseio da lista de dados graváveis\nDurante a verificação do dispositivo, são avaliadas as informações sobre os formatos de dados utilizados (ponto de dados 382)\nEstrutura atualizada de muitos pontos de dados; para detalhes veja este [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
76
- "nl": "Om optimaal gebruik te maken van de verschillende datapunten en metadata, voert u een apparaatscan uit gevolgd door een datapointscan\nZie https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md voor details\nToegevoegd metadata aan verschillende datapunten, bijvoorbeeld beschrijving, eenheid, link naar verdere informatie\nTijdens het scannen van datapunten worden nu metadata toegevoegd aan datapuntobjecten\nGewijzigde behandeling van schrijfbare datapunten; deze informatie is nu ook beschikbaar binnen de definitie van datapunt; er is echter geen verandering in de verwerking van de whitelist van schrijfbare gegevens\nTijdens het scannen van het apparaat wordt de informatie over gebruikte gegevensformaten (gegevenspunt 382) geëvalueerd\nBijgewerkte structuur van veel datapunten; zie voor details deze [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
77
- "fr": "Pour profiter pleinement des différents points de données et métadonnées, veuillez effectuer une analyse de périphérique suivie d'une analyse de points de données\nAjout du traitement pour les points de données variables et pour la configuration du format de données de l'appareil, consultez https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md pour plus de détails\nAjout de métadonnées à plusieurs points de données, par exemple description, unité, lien vers d'autres informations\nLors de l'analyse des points de données, les métadonnées sont désormais ajoutées aux objets de points de données\nTraitement modifié des points de données en écriture; cette information est maintenant également disponible dans la définition de point de données; cependant, il n'y a pas de changement au traitement de la liste blanche des points en écriture\nLors de l'analyse de l'appareil, les informations sur les formats de données utilisés (point 382) sont évaluées\nMise à jour de la structure de nombreux points de données; pour plus de détails, voir cette [changelog](lib/data-points.md#changelog-of-data-point-définitions)",
78
- "it": "Per sfruttare appieno i punti di dati e i metadati della variante, eseguire una scansione del dispositivo seguita da una scansione del punto dati\nGestione aggiuntiva per i punti di dati variante e per la configurazione del formato di dati del dispositivo, fare riferimento a https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md per i dettagli\nAggiunto metadati a diversi punti di dati, ad esempio descrizione, unità, link a ulteriori informazioni\nDurante la scansione dei punti di dati ora i metadati vengono aggiunti agli oggetti del punto di dati\nModificata la gestione dei punti di dati scrivibili; questa informazione ora è disponibile anche all'interno della definizione del punto di dati; tuttavia, non vi è alcuna modifica alla gestione della whitelist dei scrivibili\nDurante la scansione del dispositivo le informazioni sui formati di dati utilizzati (data point 382) vengono valutate\nStruttura aggiornata di molti punti di dati; per i dettagli vedere questo [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
79
- "es": "Para aprovechar plenamente los puntos de datos y metadatos de la variante, por favor realice un análisis del dispositivo seguido de un análisis de puntos de datos\nSe agregó el manejo para puntos de datos variantes y para la configuración del formato de datos del dispositivo, consulte https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md para detalles\nMetadatos añadidos a varios puntos de datos, por ejemplo, descripción, unidad, enlace a más información\nDurante el escaneo de puntos de datos ahora los metadatos se agregan a los objetos de puntos de datos\nModificación del manejo de los puntos de datos caritativos; esta información ahora también está disponible dentro de la definición de punto de datos; sin embargo, no hay cambio en el manejo de la lista blanca de writables\nDurante el análisis del dispositivo se evalúa la información sobre los formatos de datos usados (punto de datos 382)\nEstructura actualizada de muchos puntos de datos; para más detalles ver este [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
80
- "pl": "Aby w pełni wykorzystać alternatywne punkty danych i metadane, należy wykonać skanowanie urządzenia, a następnie skanowanie punktów danych\nDodano obsługę odmiennych punktów danych i konfiguracji formatu danych urządzenia, zobacz https: / / github.com / MyHomeMyData / ioBroker.e3oncan / lib / data- points.md w celu uzyskania szczegółowych informacji\nDodano metadane do kilku punktów danych, np. opis, jednostka, link do dalszych informacji\nPodczas skanowania punktów danych teraz metadane są dodawane do obiektów punktów danych\nZmieniona obsługa zapisywalnych punktów danych; informacja ta jest teraz dostępna również w definicji punktu danych; jednak nie ma zmian w obsłudze Whitelist pisanych\nPodczas skanowania urządzenia ocenia się informacje o używanych formatach danych (punkt danych 382)\nAktualizacja struktury wielu punktów danych; szczegółowe informacje można znaleźć w [changelog] (lib / data- points.md # changelog- of- data- point-definitions)",
81
- "uk": "Щоб скористатися перевагами точок та метаданих, скористайтеся скануванням пристрою, що слідує скануванням точок даних\nДодано обробку для параметра міток даних і для конфігурації формату пристрою, див. на https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md для деталей\nДодано метадані в кілька точок даних, наприклад, опис, блок, посилання на подальшу інформацію\nПід час сканування точок даних додано метадані дані\nУ зв'язку з тим, що інформація доступна також у визначенні точки даних, однак, не існує змін до обробки білим переліком витратних матеріалів\nПід час сканування інформації про використовувані формати даних (тариф даних 382) оцінюється\nОновлена структура багатьох точок даних; для деталей див. це [changelog](lib/data-points.md#changelog-of-data-point-definitions)",
82
- "zh-cn": "为了充分利用变位数据点和元数据,请进行设备扫描,然后进行数据点扫描\n添加了变体数据点和设备数据格式配置的处理,详见https://github.com/MyHomeMyData/ioBroker.e3oncan/lib/data-points.md\n添加元数据到多个数据点, 例如描述、 单位、 链接到进一步的信息\n在扫描数据点时,将元数据添加到数据点对象中\n更改了可写数据点的处理方式;这一信息现在也可以在数据点定义中找到;然而,对可写字点白名单的处理没有变化\n在设备扫描期间,将评价关于旧数据格式的信息(数据点382)\n许多数据点的更新结构;详情参见此[changelog](lib/data-points.md#changelog-of-data-point-designs)"
83
- },
84
- "0.10.14": {
85
- "en": "Added elements to enums.js based of PR no. 182 of open3e\nSimplified configuration of dids scan limits in source code\nExtended scan up to did 3338\nAdded hint regarding scan range in Readme\nFixes for issue #169 (repository checker)\nBugfix: Manual change of device specific dids was not evaluated for collect workers\nUpdate of list of data points for E3 devices to version 20251102",
86
- "de": "Elemente zu enums.js hinzugefügt, basierend auf PR-Nr. 182 von open3e\nVereinfachte Konfiguration der Grenzen des Datenpunt-Scans im Quellcode\nErweiterter Scan bis Datenpunkt 3338\nHinweis auf Scan-Bereich in Readme hinzugefügt\nFixes für Issue #169 (Repository Checker)\nBugfix: Manuelle Änderung der gerätespezifischen Datenpunkte wurde nicht für Collect-Worker aktualisiert\nAktualisierung der Liste der Datenpunkte für E3 Geräte auf Version 20251102",
87
- "ru": "Добавлены элементы в enums.js на основе PR No 182 open3e\nУпрощенная конфигурация ограничений сканирования в исходном коде\nРасширенное сканирование до 3338\nДобавлен намек на диапазон сканирования в Readme\nИсправления для выпуска #169 (проверка хранилища)\nBugfix: ручная смена устройств не оценивалась для коллекционных работников\nОбновление списка точек данных для устройств E3 до версии 20251102",
88
- "pt": "Elementos adicionados a enums.js baseados em PR n.o 182 de open3e\nConfiguração simplificada dos limites de digitalização do dids no código fonte\nEscaneamento estendido até 3338\nAdicionada dica sobre o intervalo de varredura no Readme\nCorrecções para o número 169 (verificador de repositório)\nBugfix: Não foi avaliada a mudança manual de dids específicos do dispositivo para trabalhadores de coleta\nActualização da lista de pontos de dados para os dispositivos E3 na versão 20251102",
89
- "nl": "Toegevoegd elementen aan enums.js op basis van PR nr. 182 van open3e\nVereenvoudigde configuratie van dids-scanlimieten in broncode\nUitgebreide scan tot 3338\nTips toegevoegd met betrekking tot scanbereik in Readme\nFixes voor nummer #169 (repository checker)\nBugfix: Handmatige verandering van apparaat specifieke dids werd niet geëvalueerd voor collect werknemers\nUpdate van de lijst van gegevenspunten voor E3-apparaten naar versie 20251102",
90
- "fr": "Ajout d'éléments à enums.js basés sur le PR n° 182 de open3e\nConfiguration simplifiée des limites de dids scan dans le code source\nScannage étendu jusqu'à 3338\nAjout d'un indice concernant la plage de balayage dans Readme\nCorrections pour l'émission #169 (vérificateur de dépôt)\nBugfix: La modification manuelle des dids spécifiques de l'appareil n'a pas été évaluée pour les travailleurs de collecte\nMise à jour de la liste des points de données pour les appareils E3 vers la version 20251102",
91
- "it": "Aggiunto elementi a enums.js basato di PR n. 182 di open3e\nConfigurazione semplificata dei limiti di scansione dei fatti nel codice sorgente\nControllo esteso fino a 3338\nAggiunto suggerimento per quanto riguarda la gamma di scansione in Readme\nCorrezioni per numero #169 (repository checker)\nBugfix: Il cambio manuale dei dispositivi specifici non è stato valutato per i lavoratori collettivi\nAggiornamento dell'elenco dei punti di dati per i dispositivi E3 alla versione 20251102",
92
- "es": "Elementos añadidos a enums.js basado en PR No 182 de open3e\nConfiguración simplificada de los límites de escaneado en código fuente\nEscaneo extendido hasta 3338\nInsinuación agregada con respecto al rango de exploración en Readme\nArreglos para el número #169 (repositorio)\nBugfix: No se evaluó el cambio manual de piezas específicas del dispositivo para los trabajadores coleccionistas\nActualización de la lista de puntos de datos para dispositivos E3 a la versión 20251102",
93
- "pl": "Dodano elementy enums.js oparte na PR nr 182 open3e\nUproszczona konfiguracja didów w kodzie źródłowym\nRozszerzone skanowanie do 3338\nDodano podpowiedź odnośnie zakresu skanowania w Readme\nFixes for issue # 169 (repository checker)\nBugfix: Ręczna zmiana dysków specyficznych dla urządzenia nie była oceniana dla pracowników zbierających\nAktualizacja wykazu punktów danych dla urządzeń E3 do wersji 20251102",
94
- "uk": "Додано елементи для enums.js на основі PR No 182 відкрито3e\nСпрощена конфігурація лімітів сканування даних у вихідному коді\nРозширене сканування до 3338\nДодано підказок про діапазон сканування в Readme\nВиправлення для випуску #169 (репозиторійний чекер)\nВиправлення помилок: Ручна зміна параметрів пристрою не оцінювалася для збору робітників\nОновлення списку точок даних для пристроїв E3 до версії 20251102",
95
- "zh-cn": "在基于open3e第182号公关规则的enums.js中添加元素\n简化源代码中 dos 扫描限制的配置\n扩展扫描至完成 3338\n关于Readme 扫描范围的添加提示\n修复第169期(仓库检查器)\nBugfix:没有评估收集工人手动更改设备特定操作\nE3设备数据点列表更新至20251102版本"
96
96
  }
97
97
  },
98
98
  "titleLang": {
@@ -147,9 +147,8 @@ Updated structure of the following data points:
147
147
 
148
148
  **Notes:**
149
149
  - For all sensor data points the last entry `Unknown` was renamed to `SensorStatus`. This is the reason for the large number of changed data points.
150
- - For the frequently used data points 531, 1415–1418, 2351, 2532 and 2735 the numerical value has been moved to a sub-state `ID`:
150
+ - For the frequently used data points 531, 2351, 2532 and 2735 the numerical value has been moved to a sub-state `ID`:
151
151
  - `0531_DomesticHotWaterOperationState.ID`
152
- - `1415_MixerOneCircuitOperationState.State.ID`
153
152
  - `2351_HeatPumpCompressor.PowerState.ID`
154
153
  - `2352_AdditionalElectricHeater.PowerState.ID`
155
154
  - `2735_FourThreeWayValveValveCurrentPosition.ID`
package/lib/storage.js CHANGED
@@ -232,7 +232,7 @@ class storageDids {
232
232
  this.dids = await this.mergeDids(this.didsDictDevCom, this.didsDictDevSpec);
233
233
  }
234
234
  }
235
- this.didsScanDone = Object.keys(this.didsMetaDict).length > 0;
235
+ this.didsScanDone = Object.keys(this.didsWritable).length > 0;
236
236
  }
237
237
 
238
238
  /**
package/lib/udsScan.js CHANGED
@@ -4,6 +4,20 @@ const E3DidsVarDict = require('./didsE3var.json');
4
4
  const E3DidsWritable = require('./didsE3Writables.json');
5
5
  const { buildTopologySummary, TOPOLOGY_DIDS } = require('./topologyAnalysis');
6
6
 
7
+ /**
8
+ * Scan status indicators used by tab.html to show warnings:
9
+ *
10
+ * | State | anyScanMissing | collectScanDone | scan-warning | rescan-hint |
11
+ * |--------------------------------------------|----------------|-----------------|--------------|-------------|
12
+ * | No scan done | true | false | shown | — |
13
+ * | Old scan (pre-v1.x), no collect data | false | false | — | shown |
14
+ * | New v1.x scan, no collect devices found | false | true | — | — |
15
+ * | New v1.x scan, collect devices found | false | true | — | — |
16
+ *
17
+ * anyScanMissing: any device has didsScanDone=false (storage.js: Object.keys(didsWritable).length === 0)
18
+ * collectScanDone: info.collect exists in v1.x format (detectedIds array) — set in main.js on adapter start
19
+ */
20
+
7
21
  /**
8
22
  * Perform scan for devices or scan for data points of a specific device
9
23
  */
package/main.js CHANGED
@@ -79,6 +79,7 @@ class E3oncan extends utils.Adapter {
79
79
  this.udsScanWorker = new udsScan.udsScan();
80
80
  this.detectedEnergyMeters = { e380_97: '', e380_98: '', e3100cb: '' };
81
81
  this.detectedCollectCanIds = new Set();
82
+ this.collectScanDone = false; // true if info.collect exists in v1.x format (detectedIds array)
82
83
  this.udsScanDevices = []; // UDS devices found during scan
83
84
  this.udsDevAddrs = [];
84
85
  this.udsDevStateNames = [];
@@ -173,6 +174,7 @@ class E3oncan extends utils.Adapter {
173
174
  const co = JSON.parse(String(sCo.val));
174
175
  if (Array.isArray(co.detectedIds)) {
175
176
  // Current format: array of numeric CAN IDs
177
+ this.collectScanDone = true;
176
178
  for (const id of co.detectedIds) {
177
179
  this.detectedCollectCanIds.add(Number(id));
178
180
  }
@@ -1045,6 +1047,7 @@ class E3oncan extends utils.Adapter {
1045
1047
  devices: result,
1046
1048
  energyMeters: this.detectedEnergyMeters,
1047
1049
  detectedCollectCanIds: [...this.detectedCollectCanIds],
1050
+ collectScanDone: this.collectScanDone,
1048
1051
  energyMeterDelays: { e380: this.e380Delay, e3100cb: this.e3100cbDelay },
1049
1052
  energyMeterActive: { e380: this.e380Active, e3100cb: this.e3100cbActive },
1050
1053
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.e3oncan",
3
- "version": "1.0.0-beta.2",
3
+ "version": "1.0.0",
4
4
  "description": "Collect data on CAN bus for Viessmann E3 devices, e.g. Vitocal, Vitocharge, Energy Meters E380CA and E3100CB",
5
5
  "author": {
6
6
  "name": "Juergen",
@@ -22,7 +22,7 @@
22
22
  "url": "https://github.com/MyHomeMyData/ioBroker.e3oncan.git"
23
23
  },
24
24
  "engines": {
25
- "node": ">= 20"
25
+ "node": ">= 22"
26
26
  },
27
27
  "dependencies": {
28
28
  "@iobroker/adapter-core": "^3.3.2",
@@ -38,7 +38,7 @@
38
38
  "@iobroker/eslint-config": "^2.2.0",
39
39
  "@iobroker/testing": "^5.2.2",
40
40
  "@tsconfig/node22": "^22.0.5",
41
- "@types/node": "^25.5.2",
41
+ "@types/node": "^25.6.0",
42
42
  "@types/proxyquire": "^1.3.31",
43
43
  "proxyquire": "^2.1.3",
44
44
  "typescript": "~5.8.3"