random file from catalex mp3 player

i got this catalex mp3 from ebay

https://www.ebay.com/itm/UART-Control-Serial-MP3-Music-Player-Module-For-Arduino-YX5300/181977057950?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649

everything was fine , i manage to use it with the help of

this code , but then i wanted it to play random file
i found the shuffle play command and i was able to use it with the serial monitor

but i was never able to play a random file with the push of a button

the shuffle song command : sendCommand(0x18, 0x00);//play a random track

the code that i """made""" for this ( doesn't work ) :

#include <SoftwareSerial.h>
#define ARDUINO_RX 5//should connect to TX of the Serial MP3 Player module
#define ARDUINO_TX 6//connect to RX of the module
SoftwareSerial mySerial(ARDUINO_RX, ARDUINO_TX);
static int8_t Send_buf[8] = {0} ;

#define CMD_PLAY_W_VOL 0X22
#define CMD_PLAY 0X0D
#define CMD_PAUSE 0X0E
#define CMD_SHUFFLE_PLAY 0X18
#define ACTIVATED LOW

const int buttonPin = 2;

int buttonState = 0;

void setup()
{
pinMode(buttonPin, INPUT);
digitalWrite(buttonPin,HIGH);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == ACTIVATED) {
sendCommand(0x18, 0x00);//play previous track
}
else {
delay(10);
}
}

void sendCommand(int8_t command, int16_t dat)
{
delay(20);
Send_buf[0] = 0x7e; //starting byte
Send_buf[1] = 0xff; //version
Send_buf[2] = 0x06; //the number of bytes of the command without starting byte and ending byte
Send_buf[3] = command; //
Send_buf[4] = 0x00;//0x00 = no feedback, 0x01 = feedback
Send_buf[5] = (int8_t)(dat >> 8);//datah
Send_buf[6] = (int8_t)(dat); //datal
Send_buf[7] = 0xef; //ending byte
for(uint8_t i=0; i<8; i++)//
{
mySerial.write(Send_buf*) ;*