Serial communication problem

Hello I have a couple of Air sensor that sends data with this format every second:

FF 01 86 00 00 00 00 00 79

so I tried using serial methods but nothing happens.
Currently I', using this code:

int incomingByte = 0;   // for incoming serial data

void setup() {
        Serial.begin(9600);     // opens serial port, sets data rate to 9600 bps
        Serial2.begin(9600);
        Serial2.write(0x78);
        Serial.write("hello");
}

void loop() {

        // send data only when you receive data:
        Serial2.write(0x86);
        if (Serial2.available() > 0) {
                // read the incoming byte:
                incomingByte = Serial2.read();

                // say what you got:
                Serial.print("I received: ");
                Serial.println(incomingByte, HEX);
        }
        
}

I'm using an arduino mega and tried with two sensors of the same type.

Here is the sensor datasheet https://drive.google.com/file/d/0B8Mi_v8zeSRsd3JwYnBvMnRnVVk/view?usp=sharing

Am I doing something wrong?
thanks

I don't think you should ever have this

Serial2.write(0x78);

For it to send data automatically I believe you don't need to send any command - that seems to be the default. But I don't know if it always restarts at the default or if it remembers the setting from the last time.

To get it to send data only on demand you need to send FF 01 78 04 00 00 00 00 XX and you will need to calculate XX as the correct checksum.

To get it to send data automatically (if it is not already doing it) you need to send FF 01 78 03 00 00 00 00 84

It seems to me that the data (assuming it is sent automatically) will be a series of FF 86 HH LL 00 00 00 00 XX where the data is in the bytes HH and LL and the checksum XX is used to confirm that the data is received accurately.

Every message will be 9 bytes long so you can count the bytes as they arrive. And allow a suitable interval before you restart the count for the next message.

...R