1. Using a bluetooth headset with SIP on Linux

    2011-03-15

    After hours of banging my head against the wall, I have finally got my bluetooth headset working with my SIP accounts in Ubuntu Linux 10.04 LTS (Lucid Lynx).

    Assuming bluetooth is already working, and you’ve paired your headsets, do the following things:

    1. Download the x-lite 4.0 software for Linux
    2. Run the softphone with ‘padsp xtensoftphone’ (this will wrap it’s audio i/o with pulseaudio
    3. Change the audio settings in the x-lite phone to use the PulseAudio virtual device
    4. Make sounds in the x-lite phone, call an 800 number or something, then while sound is being made run ‘pavucontrol’
    5. In the output and recording tabs, find the padsp streams and select the bluetooth headset inputs/outputs.

    Caveats: I haven’t tested whether this is remembered between logins, and I think if you are using padsp to wrap other applications this will send them all through bluetooth.

    Let me know if this helps you or if you get stuck!

  2. Archiving Emails and Attachments to PDF from Thunderbird in Linux

    2010-12-29

    I have a couple of businesses, plus my own personal transactions, and every year come January I have to make sure I have all of the appropriate financial documentation for them, including copies of invoices and receipts. Fortunately, most of my invoices and receipts are now in email form, though I still get some paper ones (which go straight into the ScanSnap). Unfortunately, emails and attachments can’t go nicely in a reference folder in my Dropbox.

    Thunderbird to the rescue!

    I use Mozilla Thunderbird for my email for mostly the same reason I still use FireFox to browse the web: there’s a plugin for almost anything I want to do. Also, in Linux it’s easy to use a CUPS-PDF virtual printer to print to PDF. Combining this with the attachment extractor Thunderbird plugin allows me to dump all of the attachments and emails to files on my hard drive in just a few clicks.

    I have ‘Invoices’ and ‘Receipts’ email folders that need to be dumped, so I just go into each folder, select all messages, print them using CUPS-PDF, and then right-click and tell AttachmentExtractor to dump any attachments as well. Done, in about 5 minutes. Trying to do this manually would take countless hours, meaning in reality that I would just never do it, and if my taxes were audited, it would be a total nightmare.

    Hopefully if you have this same problem google + this post will help you out. Enjoy!

  3. Installing python-qwt5-qt4 on Ubuntu Jaunty 64-bit

    2009-09-21

    I needed the package mentioned in the title, but it fails to install due to some problems with the dependency configuration in the original package.

    Following some instructions here and using the patch provided here (from this thread), I was finally able to get it working.

    Here’s the resulting package.

    python-qwt5-qt4_510dfsg-1ubuntu1_amd64

    Steps to build:

    Create some directory where you want to build this. Change to that directory. Then…

    sudo apt-get build-dep python-qwt5-qt4

    (installs dependencies for building)


    sudo apt-get source python-qwt5-qt4

    This should download the package source. Download the patch from the comment I linked to above, then change into the directory and patch the files. You may have to change the directory ownership so that your user can write to it (sudo chown -R yourusername .)


    patch -p0 < ~/Inbox/pyqwt-final.diff

    (of course your patch may be located in a different location)

    Per the GPLv2, here's the patched source I used to build the .deb file (note -- I think you can just download this instead of patching it yourself).

    brocks_patched_pywqt5_src.tar.bz2

    Once it's patched, rebuild it with:

    sudo dpkg-buildpackage -rfakeroot -uc -b

    Go get a cup of coffee or whatever, it's a fairly involved build. When it's done, in the directory above you should find your .deb packages. A simple:

    sudo dpkg -i python-qwt5-qt4_5.1.0.dfsg-2_amd64.deb

    (replace the filename with whatever yours is, of course)

    will install it for you. Hope this is helpful for someone, as I wasted a few hours trying to install this all from source and so on.

  4. First CardioSolv Simulation Manager Demo

    2009-08-24

    Today I’m really excited to finally show you something that’s been in the works, both in implementation and in the planning stages, for a long time. The CardioSolv Simulation Manager.

    Running cardiac electrophysiology (and mechanics) simulations has traditionally been really complicated. It involved learning a bunch of UNIX command-line tricks, dealing with queuing systems and their associated script files, and so on. Furthermore, there are many, many options in a sophisticated cardiac simulator, and the novice user (and even the expert) can easily get lost in all of the choices.

    We’ve taken years of experience setting up, running, and analyzing simulations to build a really cool (excuse my excitement) web interface that handles all of the dirty work, and guides the user through the important choices when running simulations.

    The video below is my first demo. In it, I demonstrate how to create a plane wave moving across a sheet of tissue, then create a spiral wave, all from the web interface.

    (more…)

  5. Quoted in another article on CardioSolv

    2009-08-13

    The whole article is here.

    The HPC service lets the small, five-employee company do the heavy lifting that would otherwise cost a fortune. “With what we could purchase out of pocket, we’d have to bootstrap very slowly, or look for VC [venture capital] funding,” said Dr. Brock Tice, the vice president of operations at Cardiosolv, a privately funded medical research firm. Instead, Tice uses a new HPC on-demand service from Penguin Computing called Penguin on Demand.

    While Cardiosolv has its own small cluster on the premises for calculations, Tice estimates the resources he rents from Penguin would probably cost $500,000 to build, and other cloud options weren’t suitable.

    “We can’t use [Amazon's Elastic Compute Cloud] EC2, since there’s a lot of latency between the nodes,” he said.