Kyle Robbertze

After a fairly long hiatus thanks to DebConf17, today I got back to working on the HDMI2USB audio firmware. I opened a PR against the HDMI2USB-mode-switch for be able to load test firmware onto the Opsis and Atlys boards. I also spent time debugging the SET_INTERFACE error I am getting on the Opsis when loading the audio firmware.


  • 09e075f - Add test device IDs to board list

audio-data: The issue is with the streaming code in the firmware.c file:

 while(TRUE) {
        if (got_sud) {
            printf("Handle setup data\n");
            got_sud = FALSE;
        /* ISO endpoint config type is 01 in the enpoint configuration buffer */
        if ((EP2CFG & bmTYPE) == bmTYPE0) {
           // This is the issue
            while (!(EP2468STAT & bmEP2FULL)) {
                /* Send max data. Larger than 0x30 causes an EOVERFLOW */
                EP2BCH = 0x00;
                EP2BCL = 0x30;
            // To here

If this is included, dmesg shows an error:

usb 1-3: 1:1: usb_set_interface failed (-110)

Which fails repeatedly.

Kyle Robbertze

I spent today testing my work on Atlys and Opsis boards and continued work on the FIFO firmware. I tested the basic audio firmware on the Opsis and Atlys boards. This is the firmware that generates a standard tone from the FX2 chip. It worked without issue on the Atlys. I need to do some work to get it working on the Opsis.


  • 1d36ced - audio: Set correct pin mode for slave FIFO

Next I need to program the output version of the firmware to write the FIFO out, emulating a FPGA as the master FIFO device and get the current audio firmware working on the Opsis.

Kyle Robbertze

Today I fixed conflicts between the audio data PR and the version-embed code that was merged yesterday. I need to chat to mithro about the FIFO setup, as I have started working on that, but I have run into a wall. As far as I know I have configured everything correctly, but it seems not to be working.


  • 21340a7 - audio: Fix merge conflicts
  • Other minor tweaks to past commits during the rebase.

If I don't manage to chat to mithro, tomorrow I plan on working on the validation scripts so that we can use them to check that the compiled firmware is sane and spend some more time debugging the FIFO stuff.

Kyle Robbertze

Today I got some work in on the FIFO buffer side of things and fixed PRs


  • 0e03bc8 - Fixed detatched head when running on Travis


  • 6e53821 - audio: Slave FIFO pin setup

Tomorrow I plan on continuing to work on the FIFO firmware