{"id":1537,"date":"2013-12-18T23:27:20","date_gmt":"2013-12-18T21:27:20","guid":{"rendered":"http:\/\/blog.chschmid.com\/?p=1537"},"modified":"2014-04-24T10:43:42","modified_gmt":"2014-04-24T08:43:42","slug":"logitech-k810-ubuntu","status":"publish","type":"post","link":"https:\/\/blog.chschmid.com\/?p=1537","title":{"rendered":"Logitech K810 + Ubuntu"},"content":{"rendered":"<p>The Logitech K810 is a nice keyboard, but it does not work with Ubuntu out of the box. Still contrary to what some websites might lead you to believe, it does work. The following instructions worked for me on Ubuntu 13.10 &amp; 14.04.<\/p>\n<ol>\n<li>Start a terminal (terminal 1)<\/li>\n<li>Install the tools needed for this walk-through\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">sudo apt-get install bluez-hcidump bluez-utils blueman<\/pre>\n<\/li>\n<li>Enable Bluetooth on your Ubuntu machine (you might have a hardware button, don&#8217;t forget about that)<\/li>\n<li>Start the bluetooth manager (blueman) from your start menu, dash, or whatever other way of starting programs your desktop has<\/li>\n<li>Start another terminal (terminal 2) &#8211; yep you&#8217;ll need two for this exercise<\/li>\n<li>Get the K810 into pairing mode by pressing the button on the back of the keyboard and then one of the device buttons on the front (F1-F3). You should see the bluetooth light flashing now.<\/li>\n<li>In terminal 1 run\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">hcitool scan<\/pre>\n<p>if the K810 is found this should give you something like<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">Scanning ...\r\n       xx:xx:xx:xx:xx:xx\u00a0\u00a0 Logitech K810<\/pre>\n<\/li>\n<li>Copy the address of your K810 (that&#8217;s the xx:xx:xx:xx:xx:xx)<\/li>\n<li>In terminal 2 run\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">sudo hcidump -at | grep pass<\/pre>\n<\/li>\n<li>In terminal 1 run\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">sudo bluez-simple-agent hci0 xx:xx:xx:xx:xx:xx<\/pre>\n<\/li>\n<li>In terminal 2 you should now see the passkey which is a number<\/li>\n<li>Type that code on your K810 followed by enter<\/li>\n<li>The bluetooth manager should now show the K810.<\/li>\n<li>In blueman select the K810 and mark it as &#8220;trusted&#8221;<\/li>\n<li>Now click on Setup and follow the dialog box.<\/li>\n<li>Tada, you&#8217;re done, you can now close all terminals as well as blueman.<\/li>\n<\/ol>\n<h2>The Function Keys<\/h2>\n<p>By default, the function keys (the ones above the numbers row) are assigned to special functions like media control, which I find annoying. &#8211; Every time you want to do something normal like Alt-F4 or search via F3 you need the Fn key. Logitech&#8217;s windows software on the other hand lets you invert the Fn key. Actually all the Windows software does is to send a certain string of commands to the keyboard, which some clever Linux Guru has reverse engineered and coded into a nice little program, that can be found at\u00a0 <a href=\"http:\/\/www.trial-n-error.de\/posts\/2012\/12\/31\/logitech-k810-keyboard-configurator\/\" target=\"_blank\">http:\/\/www.trial-n-error.de\/posts\/2012\/12\/31\/logitech-k810-keyboard-configurator\/<\/a>. I&#8217;ll again add a step-by-step guide:<\/p>\n<ol>\n<li>Optional: Go to\u00a0<a href=\"http:\/\/www.trial-n-error.de\/posts\/2012\/12\/31\/logitech-k810-keyboard-configurator\/\" target=\"_blank\">http:\/\/www.trial-n-error.de\/posts\/2012\/12\/31\/logitech-k810-keyboard-configurator\/<\/a> and read about how he did it ;)<\/li>\n<li>Install a compiler\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">sudo apt-get install build-essential<\/pre>\n<\/li>\n<li>Download and extract Mario&#8217;s program\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">wget https:\/\/blog.chschmid.com\/media\/k810_conf-v0.1.tar.bz2\r\ntar -jxf k810_conf-v0.1.tar.bz2\r\n<\/pre>\n<\/li>\n<li>Compile it\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">.\/build.sh<\/pre>\n<\/li>\n<li>Run it\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">sudo .\/k810_conf -d \/dev\/hidraw&lt;x&gt; -f on<\/pre>\n<p>You will have to replace &lt;x&gt; by the hid number that was assigned to your keyboard. In my case it is hidraw2. Of course there are more clever ways, but just work through the numbers brute force starting with hidraw0. &#8211; Mario&#8217;s program is clever enough to detect if it&#8217;s not the K810.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>The Logitech K810 is a nice keyboard, but it does not work with Ubuntu out of the box. Still contrary to what some websites might lead you to believe, it does work. The following instructions worked for me on Ubuntu 13.10 &amp; 14.04. Start a terminal (terminal 1) Install the tools needed for this walk-through [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[4],"tags":[19],"class_list":["post-1537","post","type-post","status-publish","format-standard","hentry","category-life_and_stuff","tag-linux"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p15PpI-oN","_links":{"self":[{"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=\/wp\/v2\/posts\/1537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1537"}],"version-history":[{"count":15,"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=\/wp\/v2\/posts\/1537\/revisions"}],"predecessor-version":[{"id":1844,"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=\/wp\/v2\/posts\/1537\/revisions\/1844"}],"wp:attachment":[{"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.chschmid.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}