Hi Barry, I have found the code you are referring to in your question. I just want to note that this is from Adafruit and not necessarily supported by me. 1. When you set a waveform, you are assigning a waveform number from the library to the waveform sequencer. The waveform sequencer is divided into 8 sequences, 8.5.8.2.5 of the DRV2605L datasheet. The sequencer will start playing with the first sequence and continue until it arrives at a sequence with no waveform. This is why they are setting '0' to the 2nd sequence (the 1st sequence is 0 and the second sequence is 1). This is only needed if there was previously a waveform in the second sequence because the last 7 sequences should be initialized to '0'. 2. If you write an effect to the first two sequences, they will play in sequence until there is a '0' in a sequence. 3. This is an opinion question...it is really up to the end user on when or why they would play multiple effects. Maybe they want a click + ramp up + ramp down. If you are on the github, then the definitions are in the .cpp file "Adafruit_ DRV2605 .cpp" and the header file defines the registers as defined in the datasheet. All communication is through I2C.
↧