This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TAS2552EVM: Run a script from TAS1020b EEPROM on power up

Other Parts Discussed in Thread: TAS2552EVM, TAS2552

When I power up my TAS2552 I would like it to automatically run the initialization script so I can run a demo from an external I2S source without needing the CodecControl software on my PC.  I click File -> EVM Applications then add an application with the initialization script I want to run.  I also make sure "Enable TAS1020b Auto Load" check box is checked before clicking "Update EVM".  I know the script works because when I run it via CodecControl software, my EVM plays from external I2S source just fine.  However, after I update the EVM with my application/script then plugging/unplugging USB cable from the TAS2552EVM will cause it to stop playing my audio.  If I then open the CodecControl software and run the same init script, it starts working again.  I made sure WE jumper is in place before clicking Update EVM and it looks like the script is in memory because each time I open CodecControl after cycling power, my script is listed under EVM Applications.  One thing that is not covered in the manual is if the default address of 0x2000 is correct.  Are the scripts/apps supposed to have certain names to make they run automatically.  What does the "Enabled TAS1020b Auto Load" check box do?

Here is the script I want to run during power up from TAS1020b EEPROM so I can play external I2S source.

# 32-bit 64-fs

# Slave Reg Value
w 80 01 12
w 80 08 10
w 80 02 EA
w 80 03 5D
w 80 04 00
w 80 05 10
w 80 06 00
w 80 07 C8
w 80 09 00
w 80 0A 00
w 80 12 15
w 80 14 0F
w 80 01 10

# Slave Reg Value
w 80 01 12
w 80 08 20
w 80 02 EA
w 80 03 4D
w 80 04 00
w 80 05 00
w 80 06 00
w 80 07 C8
w 80 09 00
w 80 0A 00
w 80 12 02
w 80 14 0F
w 80 01 10

  • Hi Chris,

    Unfortunately I don't currently have a TAS2552 EVM to debug this.
    Have you tried different address at the EVM Applications interface? I think this address is the memory address but not the device address. You could try with 0x0000.
    What is the EVM Applications interface showing? can you share a screen capture?
    Let me check out how soon can I get an EVM for debugging.

    Best regards,
    -Ivan Salazar
    Texas Instruments
  • The default address is 0x2000.  I changed it to 0x0 like you suggested but still doesn't seem to work.  Attached screen shot of EVM Applications interface dialog right after I click 'Update EVM'.  It shows '0 bytes' next to EEPROM--why is that?

    I have the jumper on board labeled "WE" populated so write protect on EEPROM should be disabled. 

    Also, I currently have an external micro connected to I2S bus so JP3 for LRCLK, BCLK, MCLK, DOUT, DIN, and IVCLK signals have been removed.  SDA and SCL jumpers are populated on JP3 header between L-M (not M-R) so I2C bus between TAS2552 and TAS1020 is connected.  In fact, I know TAS1020 and TAS2552 communication is functioning because as long as the EVM board is connected to my PC with CodecControl running all is well.  The problem occurs if I don't have CodecControl running and I power up the EVM board.