Open-source USB interface: Audio Widget

I'm definitely not using 'windows firmware' (lol). my use-case is 99% linux but I was curious how well the windows driver and foobar would work.

I'm sure at some point we'll have unified firmware. I'll hold off upgrading until then. at least I've seen windows emit some 96k sounds; and now I can go back to using linux where things are sane and normal again ;)
 
Alex & Co,

what is the status of the firmware? I would like to know what the best starting point for AB-1.12 with the filter selector of the PCM5102.

Is the github firmware currently forked or adapted to a particular OS? (I've been too busy with layout to monitor FW progress.)

Preferably, new firmware should work with UAC1/2 on Windows/Linux/MacOS. Are there known combinations which don't work right now?

For future firmware work I have a little bit of a wish:
- Ability for Host program to ask Widget about its compiled-in version
- Host program can change FIR/IIR pin of PCM5102 on the fly without reboot
- Same goes for volume settings
- Host can receive HID commands from Widget
- Host program can write arbitrary data to config flash, is this only possible in .py on Linux now?

Børge
 
Last edited:
The latest firmware images can be found here:

Downloads - sdr-widget - Audio and Control Interface for Amateur Radio SDR and Audiophile USB-DAC - Google Project Hosting

It is clearly stated whether a partucular firmware is for Win/OSX or for Linux. It cannot be combined into one that works for all OSes until the Linux kernel uac2 driver is fixed.

The latest firmware marked PCM5102 is a unified firmware, for PCM5102, ES9023 or CS4043, selectable with WidgetControl.

The git repo is for developers and it is under constant developmental updates so it is not suitable for end users. At any one time the code may be broken and only experienced users will know how to checkout old commits. Having said that anyone can and is welcome to fork the repo into your own repo for experimentation. If you have a useful patch set you can issue a pull request to the upstream repo.

When the new hardware prototype is available in the hands of developers code development can priceed
 
Member
Joined 2004
Paid Member
Alex:
You are not alone. I have CMedia and Tenor UAC2 chips there that don't work on Linux. The CMedia chip only works on UAC2 at any sample rate after a pause-play cycle. The Tenor chip requires a driver for OSX as well (They say the Mac uses a "different feedback frequency resolution"). The XMOS firmware does work on MAC and Linux.

I would be happy to assist in fixing the Linux UAC2 code however too much real paying work to do right now (and I don't code. . .). I won't be able to set up Wireshark for USB for a few weeks it seems. If Linuxworks is interested I can support. . .
 
Hi Demian et al,

Obviously XMOS has found a workaround for the Linux quirk - good for them :) (But when the Linux uac2 driver is fixed, XMOS may NOT work then :)

To convince Daniel Mack et al that there is a problem with the rate feedback when sample rate changes on-the-fly (without stop-play/pause-play cycle) etc., you will need the Wireshark dumps. Otherwise the finger will be pointed at the firmware in the chips :) The actual code change needed at the driver end may actually be quite trivial - just fix the feedback format to the same format as OSX and Win.

When the flood of uac2 devices arrives at the market I'm sure these issues will be sorted out via firmware and driver updates :)

In the meantime just use the correct firmware for the corresponding OS :)

Alex
 
Member
Joined 2004
Paid Member
Nikolay:
Why no 176.4? its becomming more common as a format and all the RR HRX is 176.4?

George:
I have compiled both ALSA 1.0.24 and 1.0.25 and have had the same problems with both. The Tenor sample seriously misbehaves

Mar 7 15:24:14 localhost vmunix: [39356.759248] generic-usb 0003:16D0:0631.000A: input: USB HID v1.00 Device [Nuforce Inc., Nuforce 192k USB DAC] on usb-0000:05:00.1-3/input0
Mar 7 15:24:14 localhost vmunix: [39356.761284] ALSA card.c:258: Audio class v2 interfaces need an interface association
Mar 7 15:24:14 localhost vmunix: [39356.761460] snd-usb-audio: probe of 2-3:1.2 failed with error -5


and the CMedia acts as I indicated above. Audio Widget and XMOS work. XMOS works the most consistently and reliably.
 
I am running 1.0.24 ALSA and have no problem with my TE8802L board. Of course I am running the latest firmware from Tenor so that may be the reason. I do not have a full Linux desktop and use it for programming only so no fancy player software installed. Command line mplayer gives me no problems.

I will dig out the Cmedia card later and see if there are problems.

George
 
Member
Joined 2004
Paid Member
The idea is to have the DAC do its internal transitions when the rest of the system is stable and silent. For example, the negative edge of a clock that everything else responds to on the positive edge. In a delta sigma dac it may be less of an issue than on a ladder dac with lots of things changing on word clock.
 
Kits supply

Hi guys,

here is the status of kits I've got for sale:
- There are only four AB-1.1 kits left. Let me know in a pm if you'd like one now.
- AB-1.12 prototypes are coming out soon
- A batch of loose modules has been ordered
- In a month I have 7 more AB-1.1s available with new modules in them
- In a month I also have loose modules for sale
- Perhaps 4 weeks after that I have a new generation of complete and boxed units ready

Cheers,
Borge
 
I am running 1.0.24 ALSA and have no problem with my TE8802L board. Of course I am running the latest firmware from Tenor so that may be the reason. I do not have a full Linux desktop and use it for programming only so no fancy player software installed. Command line mplayer gives me no problems.

That sounds very interesting. I have just bought a Teac H-A01 which have a TE8802L and I can't get it to work on Linux.

Where can I download the latest TE8802L firmware? :D

Hugs,
Sandra
 
I have an NDA with Tenor and am developing products with their devices so I have the latest code that runs on the evaluation cards.

Each manufacturer contracts with Tenor for customized firmware and you would need to contact Teac to see if they are going to support Linux.

As far as I know there is no public utility that will allow you to upgrade your firmware and you would need to return the device for a 'factory upgrade'.

Sorry..

George


That sounds very interesting. I have just bought a Teac H-A01 which have a TE8802L and I can't get it to work on Linux.

Where can I download the latest TE8802L firmware? :D

Hugs,
Sandra
 
AB-1.12 updates

By popular demand the AB-1.12 now has test points or open vias on all data pins for the ES9012/18. That should make it possible to patch in various configurations on the underside of the board.

An updated schematic is attached.

I will order the boards on Monday morning CET. Please let me know by then if you want a board. Mail to borge.strand@gmail.com with Subject="Order AB-1.12 Count" where Count is the number of boards you want.

Børge
 

Attachments

  • Ab-1.12_20120308_pc09_sch.zip
    276.5 KB · Views: 147