Telldus/Tellstick i Debian Linux?

Elektronik- och mekanikrelaterad mjukvara/litteratur. (T.ex schema-CAD, simulering, böcker, manualer mm. OS-problem hör inte hit!)
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Telldus/Tellstick i Debian Linux?

Inlägg av JimmyAndersson »

Tänkte laborera lite med Tellstick i Debian. :)
(Tellstick är en USB-ansluten grej för att styra t.ex fjärrströmbrytare.)
Ifall något blir heltokigt så testar jag på en laptop utan något viktigt som kan gå åt skogen.

Den här tråden blir nog mest för att snabbt kunna dokumentera resan. ..och få hjälp när jag kör fast. :hacker:


Jag började med att köra:
sudo sh -c 'echo "deb http://download.telldus.com/debian/ stable main" >> /etc/apt/sources.list'
för att kunna ladda ner och installera ..Telldus-grejer. Gick fint.

Sedan:
sudo apt-key adv --fetch-keys http://download.telldus.se/debian/telldus-public.key

Men då fick jag:
Executing: /tmp/apt-key-gpghome.pCoLF4IaZE/gpg.1.sh --fetch-keys http://download.telldus.se/debian/telldus-public.key
gpg: requesting key from 'http://download.telldus.se/debian/telldus-public.key'
gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory
gpg: connecting dirmngr at '/tmp/apt-key-gpghome.pCoLF4IaZE/S.dirmngr' failed: No such file or directory
gpg: WARNING: unable to fetch URI http://download.telldus.se/debian/telldus-public.key: No dirmngr


Provade apt-get update för att se mer och det gick fint hela vägen, bortsett från:

Fetched 33.5 MB in 1min 42s (327 kB/s)
Reading package lists... Done
W: GPG error: http://download.telldus.com/debian stable InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5A949181E501EA76
W: The repository 'http://download.telldus.com/debian stable InRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.



"requesting key" alltså.. Hur fixar man det tro? apt-key list ger ingen som rör Telldus.

Jag har sett två varianter på det.
Ena är att lägga till en nyckel från https://s3.eu-central-1.amazonaws.com/d ... public.key
Andra varianten är att ladda ner källkoden och kompilera själv.


Någon här som pysslat med Telldus/Tellstick eller liknande?
Hur har ni gjort? :)

edit: Justerade rubriken igen.
Senast redigerad av JimmyAndersson 5 juni 2020, 19:54:49, redigerad totalt 1 gång.
Nerre
Inlägg: 26633
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Telldus/Tellstick i Debian Linux? -Jätteintressant tråd

Inlägg av Nerre »

Jag har pysslat lite med Tellstick förut och jag vill minnas att det senaste jag läste var att de höll på att göra om i grejerna så just då gick det inte att ladda ner nåt som gick att kompilera.

Fick tyvärr alldeles för dålig räckvidd i huset, diagonalt genom väggar var tvärkört, jag hade nog behövs sätta upp 3 stycken för att täcka hela huset.

Då när jag körde så skrev jag egna script som upprepade samma kommando 5 gånger, men ändå hände de ibland att nån lampa blev lysande hela natten fast den skulle vara släckt.
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Telldus/Tellstick i Debian Linux? -Jätteintressant tråd

Inlägg av JimmyAndersson »

Det låter väldigt jobbigt med så dålig räckvidd. Då försvinner ju hela tanken.
Jag får prova. Annars får det bli wifi. Har länge haft tanken om att bygga om vanliga billiga fjärrströmbrytare till wifi-styrning.
(Har gjort en med 1wire-styrning. Behövs bara en 1wire-switch (DS2405 tror jag det var) och optokopplare,
så man plockar ur mer delar än man stoppar in, vilket gör att det får plats ett bättre relä än de som brukar sitta i.)

Jag har just testat att ladda ner och kompilera själv Gick bra med version 2.1.2.
Fick något fel i konfigureringen (när jag körde cmake .)
Allt går bra tills slutet, då jag fick:

-----
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'libftdi'
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
FTDI_LIBRARY
linked by target "telldusd" in directory /root/download/telldus-core-2.1.2/service

-- Configuring incomplete, errors occurred!
See also "/root/download/telldus-core-2.1.2/CMakeFiles/CMakeOutput.log".
See also "/root/download/telldus-core-2.1.2/CMakeFiles/CMakeError.log".

-----


Än så länge har jag inte börjat undersöka hur jag ska fixa det.
Men låt inte det hindra er från att berätta ifall ni vet. :wink:


edit:
CMakeOutput.log var enorm, men innehöll inget anmärkningsvärt.
CMakeError.log ser ut såhär:

Kod: Markera allt

Determining if the pthread_create exist failed with the following output:
Change Dir: /root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_a0f87/fast"
/usr/bin/make -f CMakeFiles/cmTC_a0f87.dir/build.make CMakeFiles/cmTC_a0f87.dir/build
make[1]: Entering directory '/root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_a0f87.dir/CheckSymbolExists.c.o
/usr/bin/cc     -o CMakeFiles/cmTC_a0f87.dir/CheckSymbolExists.c.o   -c /root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTC_a0f87
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a0f87.dir/link.txt --verbose=1
/usr/bin/cc       CMakeFiles/cmTC_a0f87.dir/CheckSymbolExists.c.o  -o cmTC_a0f87 -rdynamic 
CMakeFiles/cmTC_a0f87.dir/CheckSymbolExists.c.o: In function `main':
CheckSymbolExists.c:(.text+0x15): undefined reference to `pthread_create'
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_a0f87.dir/build.make:97: recipe for target 'cmTC_a0f87' failed
make[1]: *** [cmTC_a0f87] Error 1
make[1]: Leaving directory '/root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp'
Makefile:126: recipe for target 'cmTC_a0f87/fast' failed
make: *** [cmTC_a0f87/fast] Error 2

File /root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <pthread.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef pthread_create
  return ((int*)(&pthread_create))[argc];
#else
  (void)argc;
  return 0;
#endif
}

Determining if the function pthread_create exists in the pthreads failed with the following output:
Change Dir: /root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_ee1b8/fast"
/usr/bin/make -f CMakeFiles/cmTC_ee1b8.dir/build.make CMakeFiles/cmTC_ee1b8.dir/build
make[1]: Entering directory '/root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_ee1b8.dir/CheckFunctionExists.c.o
/usr/bin/cc    -DCHECK_FUNCTION_EXISTS=pthread_create   -o CMakeFiles/cmTC_ee1b8.dir/CheckFunctionExists.c.o   -c /usr/share/cmake-3.7/Modules/CheckFunctionExists.c
Linking C executable cmTC_ee1b8
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ee1b8.dir/link.txt --verbose=1
/usr/bin/cc   -DCHECK_FUNCTION_EXISTS=pthread_create    CMakeFiles/cmTC_ee1b8.dir/CheckFunctionExists.c.o  -o cmTC_ee1b8 -rdynamic -lpthreads 
/usr/bin/ld: cannot find -lpthreads
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_ee1b8.dir/build.make:97: recipe for target 'cmTC_ee1b8' failed
make[1]: *** [cmTC_ee1b8] Error 1
make[1]: Leaving directory '/root/download/telldus-core-2.1.2/CMakeFiles/CMakeTmp'
Makefile:126: recipe for target 'cmTC_ee1b8/fast' failed
make: *** [cmTC_ee1b8/fast] Error 2
Lite av varje som gått fel...
Men det känns som att man måste vara ordentligt insatt i både källkoden och C-språket för att fixa. Jag är varken det ena eller det andra.
Senast redigerad av JimmyAndersson 5 juni 2020, 20:15:10, redigerad totalt 1 gång.
Användarvisningsbild
ecenier
Inlägg: 1103
Blev medlem: 13 december 2007, 17:51:42
Ort: Älvsjö
Kontakt:

Re: Telldus/Tellstick i Debian Linux?

Inlägg av ecenier »

sudo apt install dirmngr

Prova sedan igen med nyckeln.
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Telldus/Tellstick i Debian Linux?

Inlägg av JimmyAndersson »

Efter att ha installerat dirmngr
och sedan provat igen, med sudo apt-key adv --fetch-keys http://download.telldus.se/debian/telldus-public.key så får jag:

"Executing: /tmp/apt-key-gpghome.sX9FTxbeSA/gpg.1.sh --fetch-keys http://download.telldus.se/debian/telldus-public.key
gpg: requesting key from 'http://download.telldus.se/debian/telldus-public.key'
gpg: WARNING: unable to fetch URI http://download.telldus.se/debian/telldus-public.key: No data"


Ah! Testar med .com istället. :idea:

Det gick bättre:

"Executing: /tmp/apt-key-gpghome.b82tDOHG9e/gpg.1.sh --fetch-keys http://download.telldus.com/debian/telldus-public.key
gpg: requesting key from 'http://download.telldus.com/debian/telldus-public.key'
gpg: key 5A949181E501EA76: 1 signature not checked due to a missing key
gpg: key 5A949181E501EA76: public key "Telldus Technologies AB <info.tech@telldus.se>" imported
gpg: Total number processed: 1
gpg: imported: 1"


Och så apt-get update igen. Gick också fint. :)



Okej, hur gör man sedan... ah, just det ja, drivrutiner! apt-get install -y telldus-core libftdi1 Det gav:

Kod: Markera allt

Reading package lists... Done
Building dependency tree       
Reading state information... Done
libftdi1 is already the newest version (0.20-4).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 telldus-core : Depends: libconfuse0 (>= 2.5) but it is not installable
E: Unable to correct problems, you have held broken packages.
libconfuse0 har jag inte lyckats hitta med apt. :humm:
Bara libconfuse1.


-
(För nytillkomna smygtittare så kan jag berätta att det här inlägget är fortsättningen på trådens första inlägg.
I mitt förra inlägg gjorde jag en avstickare och testade att kompliera själv, men det gick inte bra.
Multitasking så här på fredagskvällen? Jadå, inga problem med två spår samtidigt! Jag har ju två hjärnceller! 8) )
Användarvisningsbild
JimmyAndersson
Inlägg: 26308
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Telldus/Tellstick i Debian Linux?

Inlägg av JimmyAndersson »

Dags att fortsätta äventyret. :)

Okej, så libconfuse0 finns inte. I senare uppdateringar av Debian är det ersatt av libconfuse1
som, som tur är, är kompatibelt med Telldus Tellstick.
Men: Däremot så fungerar det inte med libconfuse2 ! Kan vara bra att veta för framtida uppgraderingar.

Så jag installerar libconfuse1.
Installerade även libtelldus-core2 och libftdi1.

Sedan borde tricket vara att prova igen. Så jag kör: apt-get install -y telldus-core libftdi1
(En av dem finns redan, men jag minns inte vilken, så jag kör båda.) Ah, det var libftdi1 som redan fanns.
Men jag fick samma felmeddelande igen om telldus-core.

Så jag testar: apt-get install --nodeps telldus-core

Nähepp:
"E: Command line option --nodeps is not understood in combination with the other options"

Other options? Vilka other? Det är ju bara *en* option! Väl..?

Att göra saker i Linux är ibland som att till varje pris försöka övertala någon. :D
"Skulle du vilja det här? Inte? Men om vi gör såhär? Jasså inte, men på det här sättet kanske det går ändå? Nähä. Vadå vill inte prata mer med mig?"


Funderar lite på alternativa options för apt-get...
Möjligen:
--fix-broken
--ignore-missning
--fix-missing
--please?

Men jag bromsar här för i dag. Det är ju en dag i morgon också. Rent statistiskt.
Och när jag kommer tillbaka så har ni skrivit något smart. Eller hur? Inte? Men om vi gör såhär då? Bra! Visste väl att jag kunde lita på er. :D
Mr Andersson
Inlägg: 1393
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Telldus/Tellstick i Debian Linux?

Inlägg av Mr Andersson »

Du kan skapa ett tomt libconfuse0-paket för att lura systemet att det redan är installerat.
sudo apt install equivs
equivs-control libconfuse0.control
Detta skapar en fil med samma namn i mappen du kör kommandot från.
Öppna filen i en texteditor och fyll i
Package: libconfuse0
Version: 2.5

equivs-build libconfuse0.control skapar en .deb
sudo dpkg -i libconfuse0_2.5_all.deb

Sen måste du förmodligen skapa en symlänk från confuse1 till confuse0 då telldus länkar mot det gamla namnet.
sudo ln -s /usr/lib/x86_64-linux-gnu/libconfuse.so.1 /usr/lib/x86_64-linux-gnu/libconfuse.so.0
Sökvägen måste anpassas efter vilken plattform du använder.
Nerre
Inlägg: 26633
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Telldus/Tellstick i Debian Linux?

Inlägg av Nerre »

Det är väl så att apt-get även har options i nån konfigurationsfil?

Men jag tror det var nånstans i det där jag fastnade sist också, Telldus hade inte uppdaterat för nya libbar, och det var inget jag orkade gräva i.

Det är lite trist att jag aldrig fått igång det för jag köpte på mig en massa billiga fjärrströmbrytare i början... Började t.o.m. byta ut flera fasta strömbrytare mot Nexas inbyggnadsbrytare. Jag hade det halvfungerande ett tag på en rPi, men dels hittade jag då (det är rätt många år sen) inget bra program att göra schema i (det var crontab som gällde) och dels hade jag räckviddsproblemen.


Men Telldus har väl källkoden öppen, så det borde väl inte vara helt omöjligt att fräsha upp den om man är lite van vid programmering (men det är inte jag).

Det verkar ju vara en FTDI serieportsadapter som sitter i den, resten måste ju vara olika kommandon som skickas via serieporten bara?
Användarvisningsbild
ojz0r
Inlägg: 244
Blev medlem: 14 september 2007, 19:38:04
Ort: Växjö

Re: Telldus/Tellstick i Debian Linux?

Inlägg av ojz0r »

Ett tips om du har problem med dependencies; Installera Aptitude. Den är otroligt kraftful med en GUI just för hantering av paketen och deras dependencies.
Löste en knipa för mig som varken synaptic, muon eller cli apt lyckades med. Men det kräver ju självklart att du har en repository som innehåller alla libbar du behöver.
Om du går in på debians sida så skall man kunna söka på paket ifall ett specifikt paket finns längre tillbaka i ett gammalt repository.
Skriv svar