Getting a footpedal working with Linux

UPDATE: I have subsequently found that transcribe works beautifully well and comes with some great pedal drivers. It’s a great piece of software and well worth the modest price. UPDATE 2: Please do not follow the instructions on this blog and expect them to work. It was written in 2013 so the software is *very* out of date and I doubt I’ll able to help you if it goes wrong.

John Heritage told me to go buy a foot pedal. I picked this Infinity USB-2 pedal up from ebay for $30.


It does make a tremendous difference not to have to constantly move one’s fingers from keyboard to mouse and back, although I had mitigated this considerably by using a thinkpad external keyboard with a trackpoint. However, this set-up did have some Rachmaninoff problems – requiring hand contortion to control audio, with attendant RSI/CTS-baiting effects that often resulted in sore wrists during transcription binges.

Getting the foot pedal working in Linux (Mint 14) was a minor mission, so I thought I’d document it for anyone else doing the same:

  1. First, I installed the lovely Footpedal GNOME integration control, which sadly seems a bit dormant.
  2. After installation, the script didn’t work immediately. I edited the script following Phillip Goodfellow’s instructions.

This involved:

a finding the script: # which footpedal —> /usr/bin/footpedal
b editing that script to comment out lines 119-126:

119 # Check whether your notification agent support
120 # icon-summary-body layout.
125 # self.reusable_notification.set_timeout(1000)
126 # Doesn't do anything

  1. Finally, after I got permissions issues (the error message suggested I run sudo chmod a+r /dev/usb/hiddev0 footpedal, which didn’t seem to work) I followed Jason Barnett’s and Richard Steffan’s advice and set up a udev rule:

# /etc/udev/rules.d/footpedal.rules
# Set permissions for USB footpedal Infinity IN-USB-1
# sudo lsusb -v reports
# Bus 002 Device 002: ID 05f3:00ff PI Engineering, Inc.
# Device Descriptor:
# <...>
# idVendor 0x05f3 PI Engineering, Inc.
# idProduct 0x00ff
# bcdDevice 1.20
# iManufacturer 1 VEC
# iProduct 2 VEC USB Footpedal
# Rules recommended by PLUG mailing list member, Jason Barnett on
September 20, 2011
# After changing rules issue this command: sudo service udev restart
SUBSYSTEM=="usb", SYSFS{idVendor}=="05f3", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="05f3", MODE="0666"

One sudo service udev restart later, and the footpedal is up and running! Now to get it working with CLAN under windows emulation…

12 thoughts on “Getting a footpedal working with Linux”

  1. // , Has anything related to this improved?

    Does the infinity usb-2 footpedal still require a udev rule for it to function as well in Linux as it does in Windows?

    By the way, I love the way you included enough of the necessary technical context to allow someone who’d never heard of udev to use this.

    Well done, and thanks for sharing this with us.

  2. Hi Nathan,

    Glad it was helpful!

    I’d definitely recommend looking further – I haven’t looked into this for a while so no news from me I’m afraid.

    I did manage to get a transcription system working with the set-up described above – using Mplayer’s FIFO and gnome footpedal, but it was a little fiddly and didn’t really enable fine-grained control.

    In the end I stuck with Transcribe! which is a great piece of affordable cross platform software written by a small code shop – so I liked paying for it. Their pedal drivers work really nicely for fine control, and the audio/video playback, EQ and effects are great.

    Good luck with it!

  3. That’s fantastic, thanks so much for pointing me towards these Rolf. I’ll check them out and add them to my howto docs as soon as I have a chance. Great work!

  4. I have been using Rolf’s footswitch2 program (or rather, my wife has) and it works very well in Ubuntu 14.04. We’ve never done transcription in Windows. We had to jump through some hoops to get .dss and .ds2 files converted, but the footswitch program is flawless. It has options to speed up/slow down, and a decent EQ (good for those recordings where the doc is in a car, etc).

  5. I tried to install footswitch2 as well but with elementaryOS (derivate from ubuntu 16.04lts). The installation failed with error message:
    footswitch2 (4.1.1) wird eingerichtet …
    Traceback (most recent call last):
    File “/usr/share/footswitch2/”, line 140, in OnTimer
    devices = [InputDevice(fn) for fn in list_devices()]
    File “/usr/lib/python2.7/dist-packages/evdev/”, line 93, in __init__
    self.fd =, os.O_RDWR | os.O_NONBLOCK)
    OSError: [Errno 1] Operation not permitted: ‘/dev/input/event17’

    Even worse: the installation attempt crashed my working vlc (version 2.2.2.) installation and even after uninstall, restart and reinstallation vlc is not working anymore.

    Any Idea how to fix the problem?

  6. Hi ss
    I’ve using footswitch2 but every time i update my software i get a message saying that footswitch2 is 3rd party software and i should uninstall it. My computer gives constant problems and i’m wondering if it could be due to footswitch. nobody is able to find out why the problems. I’ve spent so much money on trying to fix things, that I’m wondering whether to just buy windows again, but i hate the thought of that, and can’t afford them anyway. I am a transcriber so i need to use my infinity pedal constantly to stay alive.

  7. Hi Gloria,

    I’m really sorry I don’t think you can use footswitch2 on windows/mac (if that’s what you’re trying). I was using it only under linux.

    It might be better to use Transcribe! (The Outrage Over Kevin Williamson
    Image) – which seems to work very well with most footpedals and operating systems out of the box.



  8. Eek. Sorry Olaf – no idea about elementaryOS or the problem you may be having. I’ll update my blog post to let people know not to try this – it’s very out of date.



Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.