Hej,
Kan telldus-core fungera utan udev?
Jag försöker installera på en ARM-baserad plattform (buildroot) där udev saknas och /dev hanteras genom statiska noder.
* Har installerat alla beroenden och korskompilerat telldus-core-2.1.1.
* Installerat i /usr/local på målsystemet
* Lagt till enheter i /etc/tellstick.conf - ändrat user/group till root/root (gruppen plugdev saknas)
* Kör telldusd --nodaemon utan klagomål
* tdtool --list listar alla mina enheter
* tdtool --on 3 svarar med "Turning on device 3, remote2 - TellStick not found"
Har provat samma sak med ett udev-baserat system och då fungerar det. Dock medför det en hel del andra problem i systemet, så jag vill helst undvika udev helt.
Mvh,
Robin
telldus-core utan udev
Moderator: Telldus
-
- Site Admin
- Posts: 2243
- Joined: Fri Mar 17, 2023 9:45 am
- Location: Lund
- Contact:
Re: telldus-core utan udev
Det går bra att köra utan udev. Dock får du lösa följande på annat sätt:
* Se till att användaren som telldusd körs som har rättigheter till din TellStick.
* Se till att telldusd får reda på när TellStick ansluts genom att kalla på tdadmin.
* Se till att användaren som telldusd körs som har rättigheter till din TellStick.
* Se till att telldusd får reda på när TellStick ansluts genom att kalla på tdadmin.
Micke Prag
Software
Telldus Technologies
Software
Telldus Technologies
-
- Posts: 8
- Joined: Fri Mar 17, 2023 9:45 am
Re: telldus-core utan udev
Hej Micke och tack för snabbt svar!
Punkt 2 förstår jag - jag måste manuellt göra det som hjälpskriptet udev.sh gör, alltså med xxx=1781, yyy=0c31 och zzz går väl att få fram från /sys/bus/usb/devices
Däremot har jag svårt att förstå punkt 1. Kommunicerar telldus-core med enheten via en device-nod under /dev (som inte längre heter /dev/tellstick utan /dev/bus/usb/00x/00y) och det är rättigheten till denna jag måste sätta? I mitt system skapas inga noder automatiskt - kan jag skapa en statisk nod med major=189, minor=? och hoppas att tellsticken kopplar sig mot den? Jag antar att namnet inte spelar någon roll utan att telldus-core hittar noden automatiskt genom punkt 1 ovan. Men kopplingen mellan hårdvaran och /dev/?? måste jag väl ordna. Korrekt?
Mvh,
Robin
Punkt 2 förstår jag - jag måste manuellt göra det som hjälpskriptet udev.sh gör, alltså
Code: Select all
tdadmin controller connect --pid=xxx --vid=yyy --serial=zzz
Däremot har jag svårt att förstå punkt 1. Kommunicerar telldus-core med enheten via en device-nod under /dev (som inte längre heter /dev/tellstick utan /dev/bus/usb/00x/00y) och det är rättigheten till denna jag måste sätta? I mitt system skapas inga noder automatiskt - kan jag skapa en statisk nod med major=189, minor=? och hoppas att tellsticken kopplar sig mot den? Jag antar att namnet inte spelar någon roll utan att telldus-core hittar noden automatiskt genom punkt 1 ovan. Men kopplingen mellan hårdvaran och /dev/?? måste jag väl ordna. Korrekt?
Mvh,
Robin
-
- Site Admin
- Posts: 2243
- Joined: Fri Mar 17, 2023 9:45 am
- Location: Lund
- Contact:
Re: telldus-core utan udev
/dev/tellstick används inte sedan 2.1.0 utan libusb används istället. Se även till att du inte har ftdi_sio laddat i kärnan då den kan "lägga beslag" på enheten.
Är det TellStick eller TellStick Duo du vill använda?
För att återgå till ursprungsinlägget.
Så troligtvis är det något annat som inte är rätt. Vad är det för hårdvara du kör på?
Är det TellStick eller TellStick Duo du vill använda?
För att återgå till ursprungsinlägget.
Gissar att du kör telldusd --nodaemon som root? Isåfall har telldusd root rättigheter så rättighetsproblem borde vi kunna undanröja.robin.stridh wrote:* Lagt till enheter i /etc/tellstick.conf - ändrat user/group till root/root (gruppen plugdev saknas)
* Kör telldusd --nodaemon utan klagomål
Finns ingen TellStick ansluten kommer telldusd scanna usb en extra gång även om tdadmin inte har körts.robin.stridh wrote:* tdtool --on 3 svarar med "Turning on device 3, remote2 - TellStick not found"
Så troligtvis är det något annat som inte är rätt. Vad är det för hårdvara du kör på?
Micke Prag
Software
Telldus Technologies
Software
Telldus Technologies
-
- Posts: 8
- Joined: Fri Mar 17, 2023 9:45 am
Re: telldus-core utan udev
Hej Micke,
Jag har inte kört "tdadmin controller connect ...", så det kanske förklarar hela problemet. Ska testa ikväll. Kör som sagt allt som root, så rättigheter borde inte vara problemet.
Mitt system är ett Atmel AT91SAM260 baserat kort med en hemmabyggd buildroot distribution. Mycket kan vara fel där... ...men det funkar när jag använder udev, så jag är nog ganska nära.
Mvh,
Robin
Jag har inte kört "tdadmin controller connect ...", så det kanske förklarar hela problemet. Ska testa ikväll. Kör som sagt allt som root, så rättigheter borde inte vara problemet.
Mitt system är ett Atmel AT91SAM260 baserat kort med en hemmabyggd buildroot distribution. Mycket kan vara fel där... ...men det funkar när jag använder udev, så jag är nog ganska nära.
Mvh,
Robin
-
- Posts: 8
- Joined: Fri Mar 17, 2023 9:45 am
Re: telldus-core utan udev - Löst!
Hej,
Nu fungerar det som det ska!
Hemligheten var att dessa devicenoder måste finnas:
(002 är Tellstick duo och 001 verkar vara själva USB-porten)
Antar att libusb använder dem för kommunikationen trots allt.
Tack för bra support!
Mvh,
Robin
Nu fungerar det som det ska!
Hemligheten var att dessa devicenoder måste finnas:
Code: Select all
crw-rw-r-- 1 root root 189, 0 Nov 19 2012 /dev/bus/usb/001/001
crw-rw-r-- 1 root root 189, 1 Nov 19 2012 /dev/bus/usb/001/002
Antar att libusb använder dem för kommunikationen trots allt.
Tack för bra support!
Mvh,
Robin
Re: telldus-core utan udev
Du bör inte köra som root utan isället skapa en user och grupp att köra som. Detta för att inte buggar i program orsakar säkerhetshål i onödan.
(du vet nog vad du gör, men tänkte så att inte andra får för sig att köra som root)
(du vet nog vad du gör, men tänkte så att inte andra får för sig att köra som root)