def METHOD_NAME(self, MsgData):
    sqn_aps = None
    type_sqn = None
    apdu = npdu = None
    if len(MsgData) == 8:
        # Firmware 31a
        self.firmware_compatibility_mode = True
        self.firmware_with_aps_sqn = False
        self.firmware_with_8012 = False
    elif len(MsgData) >= 12:
        # New Firmware 3.1d (get aps sqn)
        type_sqn = MsgData[8:10]
        sqn_aps = MsgData[10:12]
        if len(MsgData) == 16:
            # Firmware 31e
            npdu = MsgData[12:14]
            apdu = MsgData[14:16]
            update_xPDU(self, npdu, apdu)
            if not self.firmware_with_8012:
                self.firmware_compatibility_mode = False
                self.firmware_with_aps_sqn = True
                self.firmware_with_8012 = True
                self.logging_8000("Status", "==> Transport Mode switch to full mode")
        elif not self.firmware_with_aps_sqn:
            self.firmware_compatibility_mode = False
            self.firmware_with_aps_sqn = True
            self.logging_8000("Status", "==> Transport Mode switch to: half mode ( no 8012)")
    return (sqn_aps, type_sqn, apdu, npdu)