Open-source USB interface: Audio Widget

Ok, I found the instructions;) I think I flashed successfully the latest fw:

C:\Program Files (x86)\Atmel\Flip 3.4.7\bin>batchisp.exe -device at32uc3a3256 -h
ardware usb -operation erase f memory flash blankcheck loadbuffer awx_20160323_v
olume_control_0dB.elf
Running batchisp 1.2.5 on Thu Jun 08 18:17:01 2017



AT32UC3A3256 - USB - USB/DFU


Device selection....................... PASS
Hardware selection..................... PASS
Opening port........................... PASS
Reading Bootloader version............. PASS 1.0.3
Erasing................................ PASS
Selecting FLASH........................ PASS
Blank checking......................... PASS 0x00000 0x3ffff
Parsing ELF file....................... PASS awx_20160323_volume_control_0dB.
elf

Summary: Total 8 Passed 8 Failed 0

C:\Program Files (x86)\Atmel\Flip 3.4.7\bin>

MCU is not showing under audio devices after reset, is that where it should appear? I can still see it under libusb-win32 devices as AT32UC3A3
 
Last edited:
Hm,

you should download the Thesycon Descriptor Dumper to see which USB interfaces are actually present. The firmware you just downloaded makes the DAC identify itself as a Henry Audio device.

It sounds like it still boots into the bootloader and not the application. I'm not familiar enough with your programming method to say what may have gone wrong.

Børge
 
Hm,

you should download the Thesycon Descriptor Dumper to see which USB interfaces are actually present. The firmware you just downloaded makes the DAC identify itself as a Henry Audio device.

It sounds like it still boots into the bootloader and not the application. I'm not familiar enough with your programming method to say what may have gone wrong.

Børge

Borge, I am now using your programming method with FLIP ;) see my previous post. It does seem like it boots into bootloader every time. I tried another firmware and it behaves in the same way.
 
That is something I haven't seen before.

Honestly, I dislike the Flip method because of all the prerequisites. It's a big hassle to use, and I'd like to use something else. But it has to be stable first.

Have you reached out to avrfreaks about this?


Børge

Which method do you recommend? Is there a 3rd way to flash a firmware I am not aware of? I haven't reached to avrfreaks, whatever that is ;)
 
This far I have only used flip. It is a hassle to install, but works for me once wrapped in a .bat file. dfu-programmer.exe is something I haven't used, but would like to try.

It sounds to me like the programming you did failed to change a flag (or something like that) which makes the bootloader go ahead and execute the application and not the DFU.

Once or twice I have been able to update the bootloader with JTAG, but that is a tricky job which requires pins to be put in and the right Atmel file to be located.

AVRfreaks is a large community for Atmel programmers. I hope you may find some answers there or among the developers of dfu-programmer.

Please keep us posted. I'd like to be able to bypass flip and its cumbersome installation process. But it has to be with something which is stable.


Børge
 
This far I have only used flip. It is a hassle to install, but works for me once wrapped in a .bat file. dfu-programmer.exe is something I haven't used, but would like to try.

It sounds to me like the programming you did failed to change a flag (or something like that) which makes the bootloader go ahead and execute the application and not the DFU.

Once or twice I have been able to update the bootloader with JTAG, but that is a tricky job which requires pins to be put in and the right Atmel file to be located.

AVRfreaks is a large community for Atmel programmers. I hope you may find some answers there or among the developers of dfu-programmer.

Please keep us posted. I'd like to be able to bypass flip and its cumbersome installation process. But it has to be with something which is stable.


Børge

Thanks for the useful info. Now that I know what to expect, I can devise next steps.

1) Dfu programmer did a good job in flashing, but I don't know how to flash .elf files with it. It seems to expect hex files.
2) Flip was able to flash .elf, but it's booting in bootloader every time.

I will play with both variants and see where they get me.
 
It was a mix of hardware (cold solder) and incomplete instructions for batchisp?? Program command was missing. This is now working:

C:\Program Files (x86)\Atmel\Flip 3.4.7\bin>batchisp.exe -device at32uc3a3256 -h
ardware usb -operation erase f memory flash blankcheck loadbuffer awx_20140918_m
kII_RC03.elf program
Running batchisp 1.2.5 on Mon Jun 12 17:02:03 2017



AT32UC3A3256 - USB - USB/DFU


Device selection....................... PASS
Hardware selection..................... PASS
Opening port........................... PASS
Reading Bootloader version............. PASS 1.0.3
Erasing................................ PASS
Selecting FLASH........................ PASS
Blank checking......................... PASS 0x00000 0x3ffff
Parsing ELF file....................... PASS awx_20140918_mkII_RC03.elf
WARNING: The user program and the bootloader overlap!
Programming memory..................... PASS 0x00000 0x1c987


Summary: Total 9 Passed 9 Failed 0

After this, I did a reset from dfu-programmer:

C:\dfu-programmer-win-0.7.2>dfu-programmer at32uc3a3256 reset --debug 4
target: at32uc3a3256
chip_id: 0x2ff1
vendor_id: 0x03eb
command: reset
quiet: false
debug: 4
device_type: AVR32
------ command specific below ------

It now shows under audio widget devices? Audio interface and Control Interface??
 
Bingo;)

C:\Program Files (x86)\Atmel\Flip 3.4.7\bin>batchisp.exe -device at32uc3a3256 -
ardware usb -operation erase f memory flash blankcheck loadbuffer awx_20160323_
olume_control_0dB.elf program verify start reset 0
Running batchisp 1.2.5 on Mon Jun 12 21:41:58 2017



AT32UC3A3256 - USB - USB/DFU


Device selection....................... PASS
Hardware selection..................... PASS
Opening port........................... PASS
Reading Bootloader version............. PASS 1.0.3
Erasing................................ PASS
Selecting FLASH........................ PASS
Blank checking......................... PASS 0x00000 0x3ffff
Parsing ELF file....................... PASS awx_20160323_volume_control_0dB
elf
WARNING: The user program and the bootloader overlap!
Programming memory..................... PASS 0x00000 0x14383
Verifying memory....................... PASS 0x00000 0x14383
Starting Application................... PASS RESET 0

Summary: Total 11 Passed 11 Failed 0
 

Attachments

  • 2017-06-12_214330.png
    2017-06-12_214330.png
    6 KB · Views: 479
Hi Neb,

I've been working on this in the firmware. The conclusion isn't yet 100% clear, there are too many instances in the firmware which either need to mute the audio, or leave it alone.

Børge
So you are saying you have the same issue with your DACs as well? I think in my case that this is coming from Adau1701 because its system clock generated from atmel's mclk and it's a big disturbance when it's switched. If that is the case, mute would have to be done at the dac outputs, not in Atmel.

Sent from my MI 6 using Tapatalk