NEWS
Test Adapter rpi2 2.x
-
Ich weiß nicht mal wo und wie man die Dinger einstellt, weil ich das noch nie benötigt habe.
-
@thomas-braun Na das ist easy, einfach bei der Instanz auf Einstellung, dann der Reiter GPIO und dort hinzufügen. Kannst die Pin 17 beispielsweise einfach als Eingang definieren. Dort auch wieder löschen, neustart -> Fehlermeldung wieder weg.
-
Hier kein Ding:
2024-12-30 13:25:47.003 - info: rpi2.0 (558114) Got terminate signal TERMINATE_YOURSELF 2024-12-30 13:25:47.011 - info: rpi2.0 (558114) terminating 2024-12-30 13:25:47.013 - info: rpi2.0 (558114) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2024-12-30 13:25:47.511 - info: rpi2.0 (558114) terminating 2024-12-30 13:25:54.001 - info: rpi2.0 (609403) starting. Version 2.3.0 in /opt/iobroker/node_modules/iobroker.rpi2, node: v23.5.0, js-controller: 7.0.6
Nix Fehlermeldung.
Edit: Wenn ich den neuen Eintrag dann wieder lösche kommt natürlich korrekterweise der Hinweis, das kein GPIO konfiguriert ist:
2024-12-30 13:35:54.277 - info: rpi2.0 (609889) starting. Version 2.3.0 in /opt/iobroker/node_modules/iobroker.rpi2, node: v23.5.0, js-controller: 7.0.6 2024-12-30 13:35:54.846 - info: rpi2.0 (609889) GPIO ports are not configured
-
@thomas-braun na das ist ja interessant. Was für ein Pi hast du? Kann es sein das es an der Node Version liegt?
Den State in den Objekten bekommst du angezeigt? -
Ich hab jetzt node mal auf 23.5. gezogen -> ebenfalls keine Verbesserung.
Wovon wir aber abgekommen sind, der Installationspfad.
Für npm list | grep opengpio bekommme ich auf dem Raspberry Pi (SLAVE) keine Installation angezeigt. Das installiert er auf dem Master, darauf habe ich keinen Einfluss. Kann ich das manuell nachinstallieren? Am Master gibt es ja keine GPIO -
@smallfeuer sagte in Test Adapter rpi2 2.x:
Das installiert er auf dem Master, darauf habe ich keinen Einfluss.
wieso nicht?
Hast du keinen SSH-Zugriff auf den Slave? -
@smallfeuer sagte in Test Adapter rpi2 2.x:
Das installiert er auf dem Master, darauf habe ich keinen Einfluss.
Versuch den Adapter mal direkt auf dem Slave zu installieren. Mit der Option --host geht das.
-
@thomas-braun ich dachte er meint opengpio würde auf dem Master installiert.
das kann man doch via SSH auf dem Slave installieren. -
Der 1. Befehlt (npm list | grep opengpio) gibt keine Ausgabe, der 2.( npm ls opengpio ) Befehlt passt wie folgt:
smallfeuer@pi3garage:/opt/iobroker $ npm list | grep opengpio smallfeuer@pi3garage:/opt/iobroker $ cd /opt/iobroker npm ls opengpio iobroker.inst@3.0.0 /opt/iobroker └─┬ iobroker.rpi2@2.3.0 └── opengpio@1.0.17 smallfeuer@pi3garage:/opt/iobroker $
die Json Datei die wir gestern angesprochen haben liegt aber auf dem Master.
@thomas braun Kannst du mir sagen wie ich den Adapter jetzt mit --host installieren soll? Über benutzerdefinierte Installation ? -> dann so?
https://github.com/iobroker-community-adapters/ioBroker.rpi2.git --pi3garage
oder via ssh ? mit welchem Befehl ?
-
rpi2.0 2024-12-30 14:38:37.582 warn If the library is installed and npm list | grep opengpio shows the npm library is also installed, please report this issue to the adapter developer with the model of your device and deboug output from an adapter start. rpi2.0 2024-12-30 14:38:37.581 warn Please make sure that libgpiod-dev (on raspian/debian run sudo apt install libgpiod-dev) is installed in the system and then reinstall the adapter. rpi2.0 2024-12-30 14:38:37.579 warn Cannot initialize GPIO: No chip found. GPIO functionality disabled! rpi2.0 2024-12-30 14:38:33.471 info starting. Version 2.3.0 (non-npm: iobroker-community-adapters/ioBroker.rpi2#9c52326d12cf43e152fca1daedb16389cead6fb6) in /opt/iobroker/node_modules/iobroker.rpi2, node: v23.5.0, js-controller: 7.0.6 host.pi3garage 2024-12-30 14:38:29.335 info instance system.adapter.rpi2.0 in version "2.3.0" (non-npm: iobroker-community-adapters/ioBroker.rpi2#9c52326d12cf43e152fca1daedb16389cead6fb6) started with pid 1493 host.pi3garage 2024-12-30 14:38:15.164 info instance system.adapter.rpi2.0 terminated with code null () host.pi3garage 2024-12-30 14:38:15.163 warn instance system.adapter.rpi2.0 terminated due to SIGKILL host.pi3garage 2024-12-30 14:38:14.475 info stopInstance timeout system.adapter.rpi2.0 killing pid 1485 host.pi3garage 2024-12-30 14:38:13.473 info stopInstance system.adapter.rpi2.0 send kill signal host.pi3garage 2024-12-30 14:38:13.343 info stopInstance system.adapter.rpi2.0 (force=false, process=true) host.pi3garage 2024-12-30 14:38:12.435 info instance system.adapter.rpi2.0 in version "2.3.0" (non-npm: iobroker-community-adapters/ioBroker.rpi2#9c52326d12cf43e152fca1daedb16389cead6fb6) started with pid 1485 host.pi3garage 2024-12-30 14:38:00.516 info iobroker exit 0 host.pi3garage 2024-12-30 14:37:59.414 info iobroker host.pi3garage object system.adapter.rpi2.0 created host.pi3garage 2024-12-30 14:37:59.353 info iobroker host.pi3garage object system.adapter.rpi2.0.logLevel created host.pi3garage 2024-12-30 14:37:59.294 info iobroker host.pi3garage object system.adapter.rpi2.0.sigKill created host.pi3garage 2024-12-30 14:37:59.234 info iobroker host.pi3garage object system.adapter.rpi2.0.eventLoopLag created host.pi3garage 2024-12-30 14:37:59.178 info iobroker host.pi3garage object system.adapter.rpi2.0.outputCount created host.pi3garage 2024-12-30 14:37:59.122 info iobroker host.pi3garage object system.adapter.rpi2.0.inputCount created host.pi3garage 2024-12-30 14:37:59.061 info iobroker host.pi3garage object system.adapter.rpi2.0.uptime created host.pi3garage 2024-12-30 14:37:59.013 info iobroker host.pi3garage object system.adapter.rpi2.0.memRss created host.pi3garage 2024-12-30 14:37:58.962 info iobroker host.pi3garage object system.adapter.rpi2.0.memHeapTotal created host.pi3garage 2024-12-30 14:37:58.906 info iobroker host.pi3garage object system.adapter.rpi2.0.memHeapUsed created host.pi3garage 2024-12-30 14:37:58.851 info iobroker host.pi3garage object system.adapter.rpi2.0.cputime created host.pi3garage 2024-12-30 14:37:58.790 info iobroker host.pi3garage object system.adapter.rpi2.0.cpu created host.pi3garage 2024-12-30 14:37:58.734 info iobroker host.pi3garage object system.adapter.rpi2.0.compactMode created host.pi3garage 2024-12-30 14:37:58.678 info iobroker host.pi3garage object system.adapter.rpi2.0.connected created host.pi3garage 2024-12-30 14:37:58.618 info iobroker host.pi3garage object system.adapter.rpi2.0.alive created host.pi3garage 2024-12-30 14:37:58.562 info iobroker host.pi3garage create instance rpi2 host.pi3garage 2024-12-30 14:37:50.686 info iobroker add rpi2 auto --host pi3garage --debug host.pi3garage 2024-12-30 14:31:40.001 info iobroker exit 0 host.pi3garage 2024-12-30 14:31:36.084 info iobroker Updating objects from io-package.json for adapter "rpi2" with version "2.3.0" host.pi3garage 2024-12-30 14:31:35.864 info iobroker upload [0] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/words.js words.js application/javascript host.pi3garage 2024-12-30 14:31:35.714 info iobroker upload [1] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/rpi2.png rpi2.png image/png host.pi3garage 2024-12-30 14:31:35.603 info iobroker upload [2] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/jsonConfig.json jsonConfig.json application/json host.pi3garage 2024-12-30 14:31:35.425 info iobroker upload [3] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/zh-cn/translations.json i18n/zh-cn/translations.json application/json host.pi3garage 2024-12-30 14:31:35.293 info iobroker upload [4] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/uk/translations.json i18n/uk/translations.json application/json host.pi3garage 2024-12-30 14:31:35.080 info iobroker upload [5] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/ru/translations.json i18n/ru/translations.json application/json host.pi3garage 2024-12-30 14:31:34.982 info iobroker upload [6] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/pt/translations.json i18n/pt/translations.json application/json host.pi3garage 2024-12-30 14:31:34.896 info iobroker upload [7] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/pl/translations.json i18n/pl/translations.json application/json host.pi3garage 2024-12-30 14:31:34.781 info iobroker upload [8] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/nl/translations.json i18n/nl/translations.json application/json host.pi3garage 2024-12-30 14:31:34.684 info iobroker upload [9] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/it/translations.json i18n/it/translations.json application/json host.pi3garage 2024-12-30 14:31:34.564 info iobroker upload [10] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/fr/translations.json i18n/fr/translations.json application/json host.pi3garage 2024-12-30 14:31:34.393 info iobroker upload [11] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/es/translations.json i18n/es/translations.json application/json host.pi3garage 2024-12-30 14:31:34.288 info iobroker upload [12] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/en/translations.json i18n/en/translations.json application/json host.pi3garage 2024-12-30 14:31:34.125 info iobroker upload [13] rpi2.admin /opt/iobroker/node_modules/iobroker.rpi2/admin/i18n/de/translations.json i18n/de/translations.json application/json host.pi3garage 2024-12-30 14:31:22.448 info iobroker up to date in 3m57 packages are looking for funding run `npm fund` for details host.pi3garage 2024-12-30 14:28:09.019 info iobroker Installing iobroker-community-adapters/ioBroker.rpi2#9c52326d12cf43e152fca1daedb16389cead6fb6... (System call) host.pi3garage 2024-12-30 14:28:09.016 info iobroker NPM version: 10.9.2 host.pi3garage 2024-12-30 14:28:08.497 info iobroker install iobroker-community-adapters/ioBroker.rpi2#9c52326d12cf43e152fca1daedb16389cead6fb6 host.pi3garage 2024-12-30 14:28:03.035 info iobroker url https://github.com/iobroker-community-adapters/ioBroker.rpi2.git --host pi3garage --host pi3garage --debug
In dem Files Pfad taucht allerdings kein rpi2.admin auf. Aber vielleicht hat er da auch nichts zu suchen. Diesen finde ich nur auf dem Master. Das Thema hatten wir gestern bereits angekratzt.
smallfeuer@pi3garage:/opt/iobroker/iobroker-data/files $ dir admin.admin backitup.admin discovery.admin
@smallfeuer sagte in Test Adapter rpi2 2.x:
@thomas-braun
Der Pfad /opt/iobroker/iobroker-date/files/rpi2.admin wurde bei mir auf dem Master erstellt. Nicht auf dem Slave. Ist das korrekt? Wäre es nicht sinnvoll das die Daten auf dem Slave installiert werden? -
ich wollte heute den Adapter auf einem neuen System endlich testen.
Pi4 mit Pi OS Lite (64-bit Bookworm)
Nach dem Start kommt fogende Meldung
rpi2.0 2025-01-01 12:55:44.374 warn If the library is installed and npm list | grep opengpio shows the npm library is also installed, please report this issue to the adapter developer with the model of your device and deboug output from an adapter start. rpi2.0 2025-01-01 12:55:44.373 warn Please make sure that libgpiod-dev (on raspian/debian run sudo apt install libgpiod-dev) is installed in the system and then reinstall the adapter. rpi2.0 2025-01-01 12:55:44.372 warn Cannot initialize GPIO: No chip found. GPIO functionality disabled!
sudo apt install libgpiod-dev Reading package lists... Done Building dependency tree... Done Reading state information... Done libgpiod-dev is already the newest version (1.6.3-1+b3). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
npm list | grep opengpio zeigt nix an.
Ich möchte lediglich den Reeder meiner Gasuhr einbinden.
Jemand einen Tipp für mich?
-
@stenmic sagte in Test Adapter rpi2 2.x:
npm list | grep opengpio zeigt nix an.
Kann auch nicht. Der Befehl lautet
cd /opt/iobroker && npm ls opengpio
-
@thomas-braun sagte in Test Adapter rpi2 2.x:
cd /opt/iobroker && npm ls opengpio
dann komm das hier
pi@Smartmeter:~ $ cd /opt/iobroker && npm ls opengpio iobroker.inst@3.0.0 /opt/iobroker └─┬ iobroker.rpi2@2.2.1 └── opengpio@1.0.17 pi@Smartmeter:/opt/iobroker $
-
@thomas-braun muss ich noch etwas unter "raspi-config" einstellen?
-
2025-01-01 12:55:44.374 warn If the library is installed and npm list | grep opengpio shows the npm library is also installed, please report this issue to the adapter developer with the model of your device and deboug output from an adapter start.
-
@thomas-braun sagte in Test Adapter rpi2 2.x:
@smallfeuer sagte in Test Adapter rpi2 2.x:
2024-12-30 12:24:43.719 warn Cannot initialize GPIO: No chip found. GPIO functionality disabled!
Ist das im
rpi-config
aktiviert?
was muss denn in der config aktiviert werden?
-
'Früher' konnte man da soweit ich weiß die GPIOs einstellen. Ist aber wohl rausgefallen.
-
@thomas-braun
@stenmic
@HomoranWenn ich es richtig sehe liegt der Fehler in der Initialisierung des richtigen Pi. Der Fehler läuft also in der Abfrage in der Datei gpioControl.js in den Fehler.
Pi kleiner 5 sollte hier also gpio Chip 0 sein. ansonsten 4.
Vielleicht sieht hier einer von euch das Problem: Zeile 9 liest er das Model aus, oder versucht es aus der Info:
der Befehlcat /proc/cpuinfo
ergibt bei mir in der letzten Zeile:
"Model : Raspberry Pi 3 Model B Rev 1.2"
was hier anscheinend abgefragt wird - mal ein Ausschnitt aus der Datei - am Ende unsere Fehlermeldung:
function getRaspberryModelFromCpuInfo(cpuinfo) { //Zero reports: Raspberry Pi Zero 2 W Rev 1.0 // RPi Zero family has a different naming. // All Rpi Zero share the same ChipNum as RPi 1 and thus can all be handled as a Rpi 1. if (cpuinfo.includes('Zero')) { return 1; } const modelRegEx = /^Raspberry Pi (\d+) Model.*/mi; const model = modelRegEx.exec(cpuinfo)[1]; return Number(model); } class GpioControl { constructor(adapter, log) { this.adapter = adapter; this.gpioChip = null; //this.gpioButtons = null; this.log = log; this.gpioPorts = []; this.gpioSettings = []; this.gpioPortLastWrite = []; this.gpioInputPorts = []; this.gpioOutputPorts = []; this.gpioInputPortsHandler = null; } /** * Setup GPIO ports & buttons * @param gpioPorts {Array<Object>} * @param buttonPorts {Array<Object>} * @returns undefined */ async setupGpio(gpioPorts, buttonPorts) { if (gpioPorts.length === 0 && buttonPorts.length === 0) return; try { const { DefaultDevice, Edge } = require('opengpio'); let chipNum = 0; try { this.log.debug(DefaultDevice); const {stdout, stderr} = await exec('cat /proc/device-tree/model'); this.log.debug('CPU Info: ' + stdout); this.log.debug('STDERR: ' + stderr); const model = getRaspberryModelFromCpuInfo(stdout); this.log.debug(`Got ${model} from ${stdout}.`); if (model >= 5) { this.log.debug('Using GPIO chip 4 for Raspberry Pi 5 or newer.'); chipNum = 4; } this.gpioChip = true; //let's keep this condition for now. } catch (e) { this.log.error('Cannot read CPU Info: ' + e); } this.gpioChip = DefaultDevice; if (this.gpioChip === undefined) { this.log.warn('Cannot initialize GPIO: No chip found. GPIO functionality disabled!'); this.log.warn('Please make sure that libgpiod-dev (on raspian/debian run sudo apt install libgpiod-dev) is installed in the system and then reinstall the adapter.'); this.log.warn('If the library is installed and npm list | grep opengpio shows the npm library is also installed, please report this issue to the adapter developer with the model of your device and deboug output from an adapter start.'); } this.log.debug('Got chip: ' + this.gpioChip); this.log.debug(`GPIO chip ${JSON.stringify(this.gpioChip?.info)} initialized`);