Skip to content

tsmith512/wall-e

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 

Repository files navigation

In the DFRobot_DF1201S library, the getPlayMode() method has an improper type cast. Edit/replace the function directly in DFRobot_DF1201S.cpp as shown:

// ORIGINAL FUNCTION:
DFRobot_DF1201S::ePlayMode_t DFRobot_DF1201S::getPlayMode(){

   String playMode = "";
   sPacket_t cmd;
   cmd = pack("PLAYMODE","?");
   writeATCommand(cmd.str,cmd.length);
   String str = readAck(13);
   playMode = str[10];
   //Serial.println(str);
   if(str[11] == '\r'  && str[12] == '\n')
     return (ePlayMode_t)atoi(playMode.c_str());
   else
     return ERROR;

}

// REPLACEMENT FROM
// https://forum.arduino.cc/t/dfrobot-player-pro-df1201s-issues/1337419/6
DFRobot_DF1201S::ePlayMode_t DFRobot_DF1201S::getPlayMode()
{

   String playMode = "";
   sPacket_t cmd;
   cmd = pack("PLAYMODE", "?");
   writeATCommand(cmd.str, cmd.length);
   String str = readAck(13);
   playMode = String(str[10]);    // <<<=== CHANGE THIS LINE AS SHOWN
   //Serial.println(str);
   if (str[11] == '\r' && str[12] == '\n')
      return (ePlayMode_t)atoi(playMode.c_str());
   else
      return ERROR;

}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages