Unable to fetch complete data using [ int serialDataAvail (int fd)]



  • I am using wiring-pi library for interfacing MODEM with raspberry pi using Qt Creator tool via serial interface I have mentioned the code for kind reference :

     QString a=0;
     QString Received_response=0;    
    while(1)
     {
    if(serialDataAvail(fd))
      {
       a=serialGetchar(fd);
       Received_response.append(a);
      }
    else
    break;
     }
    

    I am only able to fetch a maximum of 75 bytes only from modem whereas I need to fetch more bytes

    Is there any limitation of data fetching using int serialGetchar (int fd) ?

    Is there any other method/ function to fetch data byte by byte ?


  • Qt Champions 2018

    Hi @SHUBHAM-SINGH-RAO, welcome.

    Please rephrase your topic title, so it gives a short summary of your problem. Right now it's impossible to understand your problem.

    And PS: avoid writing in UPPPERCASE letters, it is considered screaming.



  • @aha_1980 topic title edited as above
    Short summary of my problem-
    Task : I am interfacing Modem with Qt Creator via serial communication.
    I am using wiring pi library for serial communication
    Problem Encountered - When I am downloading bulk data from modem I am only able to download a maximum of 84 bytes data.
    The method adopted has already been mentioned above.
    Question-
    Is there any other method of serial communication?



  • Modem Specifications : Serial modem

    Specified modem Command in which problem Encountered :
    "AT+QFREAD= filehandle, file size \r"

    Problem encountered- I am able to download only 84 bytes from modem, although data available on modem RAM is much more!


  • Qt Champions 2018

    @SHUBHAM-SINGH-RAO said in Unable to fetch complete data using [ int serialDataAvail (int fd)]:

    I am using wiring pi library for serial communication

    Well, this is a Qt forum, only few people will know about wiring pi here. You should get better answers in a Raspberry/Wiring Pi forum.

    That said, why don't you use QtSerialPort?


Log in to reply