Sun 03 December 2017

Filed under Jittertrap

Tags Linux Development. Jittertrap tn40xx

I'll be speaking at linux.conf.au 2018 in Sydney.

Jittertrap testing infrastructure is slowly improving. The idea is to include known test data so that the front-end rendering can be verified and refactored. I expect a sprint over the holidays and some new bugs for lca. :)

Clean up of the tn40xx driver is continuing - hopefully towards mainline inclusion. The driver project gets more visitors and clones than Jittertrap, which I find interesting, unexpected and somewhat sobering.


Mon 28 March 2016

Filed under Linux Networking

Tags Linux Networking

New hardware for BufferUpr has arrived! I'm working on adding Wifi capability into the product and with new hardware comes new challenges.

Challenge: Find a simple way to list all the network interfaces in the system, including the PCIe slot and MAC address for each.

Solution:

find /sys/devices/pci0000 …
Read More

Mon 11 January 2016

Filed under Howto

Tags Linux Development DSP

Fedora 23 (the current release at the time of writing) ships an outdated version of SciPy that doesn't include the spectrogram function. Installing the latest Scipy was kind-of a pain, so I thought I'd record some instructions for future-me and share it with you.

These instructions install dependencies, set up …

Read More

Tue 01 December 2015

Filed under JitterTrap

Tags Linux Development DSP JitterTrap

This is the story of my first expensive lesson in Digital Signal Processing. It is about JitterTrap, the free software that powers BufferUpr.

The premise of BufferUpr is to combine commodity hardware with open source software to create a product that can measure data stream delays of 1-100 milliseconds. This …

Read More

Thu 02 April 2015

Filed under Howto

Tags Linux Containers Development systemd

It was the year of 2015 and people were still developing new applications in PHP... but for those who could no longer accept the idea of installing a system-wide LAMP stack, there was a new-old fassionable thing: Containers!

This is a quick howto for creating a throw-away container for messing …

Read More

Wed 01 April 2015

Filed under Howto

Tags Linux Networking

Sometimes there is good reason to talk to yourself. You might be doing a sound check, for example.

Likewise, it can be useful to route IP packets between two interfaces on the same machine using an external path. One reason to do this is to test other network devices like …

Read More

Sat 27 September 2014

Filed under Linux Networking

Tags Linux Networking

I received some encouraging comments on G+ from Jesper Dangaard Brouer about my previous post on DSCP, Linux and VLAN priorities. Those comments and the work linked to (here and here) points to a few long-standing (but minor) issues with the way DSCP priorities are handled in Linux.

  1. Some DSCP …
Read More

Wed 17 September 2014

Filed under Linux Networking

Tags Linux Networking

I recently discovered a flaw in the VLAN implementation I did at work. It seemed that the normal TCP traffic had the correct VLAN priorities applied, but audio streaming UDP traffic did not.

This was due to DSCP being applied to the streaming audio and the fact that the VLAN …

Read More

Tue 12 August 2014

Filed under Linux Networking

Tags Linux Networking

This concerns the proliferation of netlink libraries and a lack of direction and documentation.

Background:

I've configured a router with netem (see Bandwidth Throttling with NetEM Network Emulation and netem example rules) to test Tieline devices under various delay and loss network conditions.

It's not really feasible for the tester …

Read More

Thu 24 July 2014

Filed under Eudyptula Challenge

Tags Linux Eudyptula Challenge

After finally completing task 01 of the Eudyptula Challenge, I'd like to share a few things I've learned, without divulging any crucial details about the task or solution.

tl;dr Pay attention.

Patience...

Maybe it's just the timezone, but the turn-around time for a response to a submission meant that …

Read More

rationali.st © Andrew Cooks