Help implementing New Protocol

Hi, I'm starting to implement a new protocol for Inmotion Device.

Here are the protocol documentation. It the hex is converted to binary info.

https://drive.google.com/drive/folders/1nJOuEwR_NSZDmm11wFQwnltnajwASl_d?usp=sharing

It's similar to GT06, but not equal. Some data like speed, battery voltage is not equal.

Is there a guide or a documentation how to start implementing a new protocol?

Using GT06 protocol I can send command and receive response, I also need to send a command everytime a heartbeat happens, can someone help me with this too.