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.

Linux/DRV2624: waveform binary assembling/disassembling method

Part Number: DRV2624

Tool/software: Linux

Hi sirs,

I'm Chase from Google TW SEG and I focus on haptics SW part.
In the DRV2624 spec(SLOS893B –SEPTEMBER 2014–REVISED SEPTEMBER 2016), I found that we could add some pre-defined waveforms to the haptics chip.
May I know is there any application manual/example to show the detail steps for how to assemble/disassemble waveform binary?
8.6.9 Waveform Setup and Playback
Playback of a haptic effect can occur in RTP mode or by using the waveform sequencer.
 
Many thanks,
Chase
  • Hi Wu

    Welcome to E2E, thanks for the interest in our devices.
    My colleague will be responding tomorrow with further information.

    Best Regards
    José Luis Figueroa
    Audio Applications Engineer

  • Hi Wu,

    There are details about the waveform format and setup as well as the waveform sequencer on the data sheet. Specifically on page 31. Have you read this already?

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators
  • Hi Ivan,

    Yes, I have already read this part.

    8.6.9 Waveform Setup and Playback Playback of a haptic effect can occur in RTP mode or by "using the waveform sequencer".

    In 8.6.9.2 Loading Data to RAM part:
    The DRV2624 device contains 1 kB of integrated RAM to store "customer waveforms".

    I wants to know how to package the customer waveforms into a bin file and use this function "drv2624_firmware_load" to load those customer waveforms.
    Then, I can use waveform sequencer to trigger those customer waveforms by index.



    Reference code:

    /* drv2624_firmware_load: This function is called by the
    * request_firmware_nowait function as soon
    * as the firmware has been loaded from the file.
    * The firmware structure contains the data and$
    * the size of the firmware loaded.
    * @fw: pointer to firmware file to be dowloaded
    * @context: pointer variable to drv2624 data
    */
    static void drv2624_firmware_load(const struct firmware *fw, void *context)


    Many thanks,

    Chase

  • Hi Chase,

    You can create the waveform file by using Haptic Control Console. You can export the waveform into binary file using the RAM Manager.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators
  • Hi Ivan,

    Thanks for you reply.

    May I know is there a version that support it runs in window 10 OS or a script let me run in linux OS?

    Many thanks,

    Chase

  • Hi Chase,

    Unfortunately HCC is only supported on Win7 at this moment. We're currently working with our SW team to get this to work on Win10.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators