jf:/dev/blog

KDE Connect project

This android and KDE Desktop integration project was created by Albert Vaka and I thought this is very interesting project. It was a Google Summer of Code project 2013 and aiming to be seamless and integrated solution between android phone and KDE desktop. Here is the look on how it works :

This project is pre beta software, so the features will be added overtime. At present, the available plugins are :

  • Battery Report
  • Clipboard Sync
  • Multimedia Remote Controls
  • Notification Sync (The android notification plugins needs at least android 4.3 to run)
  • Ping
  • Telephony notifier

Pretty cool isn’t it ?

HOW TO INSTALL :

On the Android :

Download this KDE Connect APK and install it like usual :

Download : KDE-Connect-apk –> (this is old version apk, don’t use this, use the updated playstore version)

kde-connect-n7 kde-connect-s4

At the time I try this, my nexus 7 is already at 4.3 (self-build-cm10.2+some-cherrypicks) on the left, and not having any problem at all, but my S4 still use 4.2.2 (damn exynos5410), so the notification sync plugin is failed to load. It means, my nexus 7 can send any notification from the system to my desktop but not with my S4. However, both are running stable and usable.

This project is currently under development, for the latest apk from Albert Vaka, of course use the playstore version always.

On the ubuntu :

There are still no ppa for this KDE Connect at this time, so if you want to install on your ubuntu, you have to compile from source, but no worry, it’s easy, Emil Österlund already create some short walkthrough. Follow this and you should be ok :

To compile the source you need cmake and some devel package, do this :

sudo apt-get install cmake kdebase-workspace-dev libqjson-dev git libqca2-dev

and all needed dependencies will be resolved itself. If done, we need to pull the source from the repository :

mkdir ~/project/kde-connect
cd ~/project/kde-connect
git clone git://anongit.kde.org/kdeconnect-kde
cd kdeconnect-kde

It’s time to compile, do this :

cmake -DCMAKE_INSTALL_PREFIX=/usr ./
make
sudo make install

If everything is ok, then load the daemon so the KDE dbus could take advantage of it :

qdbus org.kde.kded /kded loadModule kdeconnect

That command should return true like below, otherwise there something error during compiling.

(jfdesign@jfklixs-ubuntu64:kdeconnect-kded)$ qdbus org.kde.kded /kded loadModule kdeconnect
true
(jfdesign@jfklixs-ubuntu64:kdeconnect-kded)$

Now, everything is set up, then invoke this command at last :

kbuildsycoca4 -noincremental

If you’re upgrading this kde-connect daemon protocol from previous version, then you need to logout and log back in for the service to reload, but if this is your first time, then it’s done.

Open the KDE system settings, and under Devices on Hardware Tab you could found your devices :

KDE-connect-devicesAnd here is the notification looks :

kdeconnect2

 

 

Thanks to Albert Vaka, Emil Österlund and Ján Dráb.

Happy hacking and keep informed 🙂

 

  • Ján Dráb

    Hi, thank you very much for those detailed instructions but there is one error:
    git repo has moved to git://anongit.kde.org/kdeconnect-kde

    I just have to point out that during “make” if one gets error
    “CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
    Could NOT find QCA2 (missing: QCA2_LIBRARIES QCA2_INCLUDE_DIR)”

    sudo apt-get install libqca2-dev

    and one last thing i did replace line “sudo make install” with “sudo checkinstall” to create a .deb package. I really like to remove things when i get bored and you can easilly “update” kdeconnect.
    This is really awesome project.

    • thank you very much for the info my friend, appreciate this 🙂 🙂
      i couldn’t agree more with you about using checkinstall, awesome !

  • Hi, thank you very much for those detailed instructions but there is one error:
    git repo has moved to git://anongit.kde.org/kdeconnect-kde

    I just have to point out that during “make” if one gets error
    “CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
    Could NOT find QCA2 (missing: QCA2_LIBRARIES QCA2_INCLUDE_DIR)”

    sudo apt-get install libqca2-dev

    and one last thing i did replace line “sudo make install” with “sudo checkinstall” to create a .deb package. I really like to remove things when i get bored and you can easilly “update” kdeconnect.
    This is really awesome project.

    • thank you very much for the info my friend, appreciate this 🙂 🙂
      i couldn’t agree more with you about using checkinstall, awesome !

  • Patrick Horgan

    It’s not working. I got the package, installed the prereqs (on fedora they’re named a bit differently). I ran cmake and make and sudo make install. I ran the qdbus command which returned True. I ran the kbuildsycoca4 -noincremental command which whinged about semicolons here and there, but nothing about kdeconnect. Then looking in the System Settings/Hardware/Devices, there’s nothing even though my android phone is running kdeconnect and the phone and the laptop are on the same wireless network. The kdeconnect on the phone also sees no devices to pair with. Do you have any guess or clue or line of investigation I can pursue? I don’t see anything in dmesg or /var/log/messages related to kdeconnect.

    • Hi Patrick,
      if “qdbus org.kde.kded /kded loadModule kdeconnect” returns true, then the service module should be good.
      did you already reload kde by loging out and log back in ? if not, try a reboot.

      • Patrick Horgan

        Yes, I logged out and back in and also rebooted. No joy. The phone app doesn’t see the laptop and vice versa.

  • Patrick Horgan

    It’s not working. I got the package, installed the prereqs (on fedora they’re named a bit differently). I ran cmake and make and sudo make install. I ran the qdbus command which returned True. I ran the kbuildsycoca4 -noincremental command which whinged about semicolons here and there, but nothing about kdeconnect. Then looking in the System Settings/Hardware/Devices, there’s nothing even though my android phone is running kdeconnect and the phone and the laptop are on the same wireless network. The kdeconnect on the phone also sees no devices to pair with. Do you have any guess or clue or line of investigation I can pursue? I don’t see anything in dmesg or /var/log/messages related to kdeconnect.

    • Hi Patrick,
      if “qdbus org.kde.kded /kded loadModule kdeconnect” returns true, then the service module should be good.
      did you already reload kde by loging out and log back in ? if not, try a reboot.
      i know nothing about fedora, but i hope it’s working on yours.

      • Patrick Horgan

        Yes, I logged out and back in and also rebooted. No joy. The phone app doesn’t see the laptop and vice versa.

  • Murz

    On Kubuntu & Ubuntu 13.10 Saucy you can install KDE Konnect from official repository via command:
    sudo aptitude install kdeconnect-kde

    I test this and all works well on Ubuntu and Android 4.3 (Samsung Galaxy S4 mini, Cyanogenmod ROM), but in current version I miss feature for connecting va Bluetooth, because WiFi eats too much battery.

    • sure, thanks for the info. it’s been a long time since i write those, i’m sure they already on upstream now, it’s a good project. 🙂

  • Alexey Korepov

    On Kubuntu & Ubuntu 13.10 Saucy you can install KDE Konnect from official repository via command:
    sudo aptitude install kdeconnect-kde

    I test this and all works well on Ubuntu and Android 4.3 (Samsung Galaxy S4 mini, Cyanogenmod ROM), but in current version I miss feature for connecting va Bluetooth, because WiFi eats too much battery.

    • sure, thanks for the info. it’s been a long time since i write those, i’m sure they already on upstream now, it’s a good project. 🙂

  • Yannis T

    For those who do not use google play how can we install this apk?

    • Hi Yannis,
      mmmhhh … i cannot see the reason why somebody didn’t use google playstore on their android os, but maybe i just misunderstand you 🙂
      ok. you can always download the latest stable apk from Albert Vaka’s dropbox, see this : http://albertvaka.wordpress.com/2013/08/10/kdeconnect-improvements/

      i’m suggesting to use the stable version, after downloading, make sure you already enable “Unknown Sources” option on android Settings security page and install them as usual like any other apk.

      • Yannis T

        If you install AOSP or Cyanogenmod you can skip the google apps and you do not need a gmail account to use the phone 😉

  • Yannis T

    For those who do not use google play how can we install this apk?

    • Hi Yannis,
      mmmhhh … i cannot see the reason why somebody didn’t use google playstore on their android os, but maybe i just misunderstand you 🙂
      ok. you can always download the latest stable apk from Albert Vaka’s dropbox, see this : http://albertvaka.wordpress.com/2013/08/10/kdeconnect-improvements/

      i’m suggesting to use the stable version, after downloading, make sure you already enable “Unknown Sources” option on android Settings security page and install them as usual like any other apk.

      • Yannis T

        If you install AOSP or Cyanogenmod you can skip the google apps and you do not need a gmail account to use the phone 😉

  • Ilan Kizner

    when i type

    mkdir ~/project/kde-connect in the terminal i get:
    mkdir: cannot create directory ……: No such file or directory

    • Hi llan Kizner,
      it’s because you have no parrent folder “project” yet.
      it doesn’t error on mine because i already had a folder name “project ” and all i have to do is create folder “kdeconnect” inside of it. you have to create parrent folder first, the mkdir command cannot create a recursive folder unless you told them to.
      try : mkdir -p ~/project/kde-connect
      or : mkdir ~/project then mkdir ~/project/kde-connect
      it will goes no error again.

    • Ilan Kizner

      TX

  • Ilan Kizner

    when i type

    mkdir ~/project/kde-connect in the terminal i get:
    mkdir: cannot create directory ……: No such file or directory

    • Hi llan Kizner,
      it’s because you have no parrent folder “project” yet.
      it doesn’t error on mine because i already had a folder name “project ” and all i have to do is create folder “kdeconnect” inside of it. you have to create parrent folder first, the mkdir command cannot create a recursive folder unless you told them to.
      try : mkdir -p ~/project/kde-connect
      or : mkdir ~/project then mkdir ~/project/kde-connect
      it will goes no error again.

    • Ilan Kizner

      TX

  • rAz

    Hello there,
    When I typed:
    qdbus org.kde.kded /kded loadModule kdeconnect
    the next message appears:
    Cannot find ‘.loadModule’ in object /kded at org.kde.kded

    does anybody can tell me what to do?

    Thanks

    • did the compiling before that is okay without error or warning? i think you should check the output folder for letsgo.sh or something similar like that, i already forgot 🙂

      • rAz

        Thanks for your answer,
        I did not get any error before (that is the wired thing, because i can just see information logs) and I the script letsgo.sh is not in the repo http://anongit.kde.org/kdeconnect-kde
        if that script is not in the folder where I clone the project, in which other directory can I find the output?
        Just for info, I am on Ubuntu 13.04

        Regards

        • hi raz, oh, you’re on ubuntu.
          the kdeconnect is already on the official repository on mine (13.10), all you have to do is apt-get install kdeconnect-kde and all will setup automatically.
          however, i don’t know about 13.04, all my machine here is 13.10 and 14.04.

          i want to help by repeating all my command above on one of my 13.10 workstation here, i never install kdeconnect on it before. it’s still valid. its return true for qdbus org.kde.kded /kded loadModule kdeconnect 🙂
          maybe some library is missing on yours, but i cannot tell. sorry.

  • rAz

    Hello there,
    When I typed:
    qdbus org.kde.kded /kded loadModule kdeconnect
    the next message appears:
    Cannot find ‘.loadModule’ in object /kded at org.kde.kded

    does anybody can tell me what to do?

    Thanks

    • did the compiling before that is okay without error or warning? i think you should check the output folder for letsgo.sh or something similar like that, i already forgot 🙂

      • rAz

        Thanks for your answer,
        I did not get any error before (that is the wired thing, because i can just see information logs) and I the script letsgo.sh is not in the repo http://anongit.kde.org/kdeconnect-kde
        if that script is not in the folder where I clone the project, in which other directory can I find the output?
        Just for info, I am on Ubuntu 13.04

        Regards

        • hi raz, oh, you’re on ubuntu.
          the kdeconnect is already on the official repository on mine (13.10), all you have to do is apt-get install kdeconnect-kde and all will setup automatically.
          however, i don’t know about 13.04, all my machine here is 13.10 and 14.04.

          i want to help by repeating all my command above on one of my 13.10 workstation here, i never install kdeconnect on it before. it’s still valid. its return true for qdbus org.kde.kded /kded loadModule kdeconnect 🙂 maybe some library is missing on yours, but i cannot tell. sorry.

          here is the output on mine, you may want to compare with yours : http://pastebin.com/U4GpJSvH

My Top Album