You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2022/11/02 12:17:41 UTC

[plc4x] branch develop updated: feat(plc4go/spi): use pre-allocated byte arrays for default writing

This is an automated email from the ASF dual-hosted git repository.

sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git


The following commit(s) were added to refs/heads/develop by this push:
     new 5c2860302 feat(plc4go/spi): use pre-allocated byte arrays for default writing
5c2860302 is described below

commit 5c28603020fd0978a0b1cd6b7b3a7e92ac74ef74
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Wed Nov 2 13:17:29 2022 +0100

    feat(plc4go/spi): use pre-allocated byte arrays for default writing
---
 .../templates/go/complex-type-template.go.ftlh     |    2 +-
 .../model/CIPEncapsulationConnectionRequest.go     |    2 +-
 .../model/CIPEncapsulationConnectionResponse.go    |    2 +-
 .../readwrite/model/CIPEncapsulationReadRequest.go |    2 +-
 .../model/CIPEncapsulationReadResponse.go          |    2 +-
 .../readwrite/model/DF1CommandRequestMessage.go    |    2 +-
 ...mandResponseMessageProtectedTypedLogicalRead.go |    2 +-
 .../model/DF1RequestProtectedTypedLogicalRead.go   |    2 +-
 .../model/AdsAddDeviceNotificationRequest.go       |    8 +-
 .../model/AdsAddDeviceNotificationResponse.go      |    2 +-
 .../protocols/ads/readwrite/model/AdsConstants.go  |    2 +-
 .../ads/readwrite/model/AdsDataTypeArrayInfo.go    |    2 +-
 .../readwrite/model/AdsDataTypeTableChildEntry.go  |    2 +-
 .../ads/readwrite/model/AdsDataTypeTableEntry.go   |    2 +-
 .../model/AdsDeleteDeviceNotificationRequest.go    |    2 +-
 .../model/AdsDeleteDeviceNotificationResponse.go   |    2 +-
 .../model/AdsDeviceNotificationRequest.go          |    2 +-
 .../model/AdsDeviceNotificationResponse.go         |    2 +-
 .../ads/readwrite/model/AdsInvalidRequest.go       |    2 +-
 .../ads/readwrite/model/AdsInvalidResponse.go      |    2 +-
 .../ads/readwrite/model/AdsMultiRequestItemRead.go |    2 +-
 .../model/AdsMultiRequestItemReadWrite.go          |    2 +-
 .../readwrite/model/AdsMultiRequestItemWrite.go    |    2 +-
 .../ads/readwrite/model/AdsNotificationSample.go   |    2 +-
 .../readwrite/model/AdsReadDeviceInfoRequest.go    |    2 +-
 .../readwrite/model/AdsReadDeviceInfoResponse.go   |    2 +-
 .../ads/readwrite/model/AdsReadRequest.go          |    2 +-
 .../ads/readwrite/model/AdsReadResponse.go         |    2 +-
 .../ads/readwrite/model/AdsReadStateRequest.go     |    2 +-
 .../ads/readwrite/model/AdsReadStateResponse.go    |    2 +-
 .../ads/readwrite/model/AdsReadWriteRequest.go     |    2 +-
 .../ads/readwrite/model/AdsReadWriteResponse.go    |    2 +-
 .../ads/readwrite/model/AdsStampHeader.go          |    2 +-
 .../ads/readwrite/model/AdsSymbolTableEntry.go     |    2 +-
 .../protocols/ads/readwrite/model/AdsTableSizes.go |    2 +-
 .../ads/readwrite/model/AdsWriteControlRequest.go  |    2 +-
 .../ads/readwrite/model/AdsWriteControlResponse.go |    2 +-
 .../ads/readwrite/model/AdsWriteRequest.go         |    2 +-
 .../ads/readwrite/model/AdsWriteResponse.go        |    2 +-
 plc4go/protocols/ads/readwrite/model/AmsNetId.go   |    2 +-
 .../readwrite/model/AmsSerialAcknowledgeFrame.go   |    2 +-
 .../ads/readwrite/model/AmsSerialFrame.go          |    2 +-
 .../ads/readwrite/model/AmsSerialResetFrame.go     |    2 +-
 .../protocols/ads/readwrite/model/AmsTCPPacket.go  |    2 +-
 .../bacnetip/readwrite/model/APDUAbort.go          |    2 +-
 .../bacnetip/readwrite/model/APDUComplexAck.go     |    2 +-
 .../readwrite/model/APDUConfirmedRequest.go        |    2 +-
 .../bacnetip/readwrite/model/APDUError.go          |    2 +-
 .../bacnetip/readwrite/model/APDUReject.go         |    2 +-
 .../bacnetip/readwrite/model/APDUSegmentAck.go     |    2 +-
 .../bacnetip/readwrite/model/APDUSimpleAck.go      |    2 +-
 .../readwrite/model/APDUUnconfirmedRequest.go      |    2 +-
 .../bacnetip/readwrite/model/APDUUnknown.go        |    2 +-
 .../readwrite/model/BACnetAbortReasonTagged.go     |    2 +-
 ...ACnetAccessAuthenticationFactorDisableTagged.go |    2 +-
 .../BACnetAccessCredentialDisableReasonTagged.go   |    2 +-
 .../model/BACnetAccessCredentialDisableTagged.go   |    2 +-
 .../readwrite/model/BACnetAccessEventTagged.go     |    2 +-
 .../model/BACnetAccessPassbackModeTagged.go        |    2 +-
 .../bacnetip/readwrite/model/BACnetAccessRule.go   |    2 +-
 .../BACnetAccessRuleLocationSpecifierTagged.go     |    2 +-
 .../BACnetAccessRuleTimeRangeSpecifierTagged.go    |    2 +-
 .../readwrite/model/BACnetAccessThreatLevel.go     |    2 +-
 .../readwrite/model/BACnetAccessUserTypeTagged.go  |    2 +-
 .../model/BACnetAccessZoneOccupancyStateTagged.go  |    2 +-
 .../readwrite/model/BACnetAccumulatorRecord.go     |    2 +-
 ...CnetAccumulatorRecordAccumulatorStatusTagged.go |    2 +-
 .../readwrite/model/BACnetActionCommand.go         |    2 +-
 .../bacnetip/readwrite/model/BACnetActionList.go   |    2 +-
 .../bacnetip/readwrite/model/BACnetActionTagged.go |    2 +-
 .../bacnetip/readwrite/model/BACnetAddress.go      |    2 +-
 .../readwrite/model/BACnetAddressBinding.go        |    2 +-
 .../readwrite/model/BACnetAddressEnclosed.go       |    2 +-
 .../model/BACnetApplicationTagBitString.go         |    2 +-
 .../readwrite/model/BACnetApplicationTagBoolean.go |    2 +-
 .../model/BACnetApplicationTagCharacterString.go   |    2 +-
 .../readwrite/model/BACnetApplicationTagDate.go    |    2 +-
 .../readwrite/model/BACnetApplicationTagDouble.go  |    2 +-
 .../model/BACnetApplicationTagEnumerated.go        |    2 +-
 .../readwrite/model/BACnetApplicationTagNull.go    |    2 +-
 .../model/BACnetApplicationTagObjectIdentifier.go  |    2 +-
 .../model/BACnetApplicationTagOctetString.go       |    2 +-
 .../readwrite/model/BACnetApplicationTagReal.go    |    2 +-
 .../model/BACnetApplicationTagSignedInteger.go     |    2 +-
 .../readwrite/model/BACnetApplicationTagTime.go    |    2 +-
 .../model/BACnetApplicationTagUnsignedInteger.go   |    2 +-
 .../readwrite/model/BACnetAssignedAccessRights.go  |    2 +-
 .../readwrite/model/BACnetAssignedLandingCalls.go  |    2 +-
 .../BACnetAssignedLandingCallsLandingCallsList.go  |    2 +-
 ...netAssignedLandingCallsLandingCallsListEntry.go |    2 +-
 .../readwrite/model/BACnetAuthenticationFactor.go  |    2 +-
 .../model/BACnetAuthenticationFactorEnclosed.go    |    2 +-
 .../model/BACnetAuthenticationFactorFormat.go      |    2 +-
 .../model/BACnetAuthenticationFactorTypeTagged.go  |    2 +-
 .../readwrite/model/BACnetAuthenticationPolicy.go  |    2 +-
 .../model/BACnetAuthenticationPolicyList.go        |    2 +-
 .../model/BACnetAuthenticationPolicyListEntry.go   |    2 +-
 .../model/BACnetAuthenticationStatusTagged.go      |    2 +-
 .../model/BACnetAuthorizationExemptionTagged.go    |    2 +-
 .../model/BACnetAuthorizationModeTagged.go         |    2 +-
 .../bacnetip/readwrite/model/BACnetBDTEntry.go     |    2 +-
 .../readwrite/model/BACnetBackupStateTagged.go     |    2 +-
 .../model/BACnetBinaryLightingPVTagged.go          |    2 +-
 .../readwrite/model/BACnetBinaryPVTagged.go        |    2 +-
 .../model/BACnetCOVMultipleSubscription.go         |    2 +-
 ...bscriptionListOfCovSubscriptionSpecification.go |    2 +-
 ...ptionListOfCovSubscriptionSpecificationEntry.go |    2 +-
 ...riptionSpecificationEntryListOfCovReferences.go |    2 +-
 ...onSpecificationEntryListOfCovReferencesEntry.go |    2 +-
 .../readwrite/model/BACnetCOVSubscription.go       |    2 +-
 .../readwrite/model/BACnetCalendarEntryDate.go     |    2 +-
 .../model/BACnetCalendarEntryDateRange.go          |    2 +-
 .../readwrite/model/BACnetCalendarEntryEnclosed.go |    2 +-
 .../readwrite/model/BACnetCalendarEntryWeekNDay.go |    2 +-
 .../readwrite/model/BACnetChannelValueBitString.go |    2 +-
 .../readwrite/model/BACnetChannelValueBoolean.go   |    2 +-
 .../model/BACnetChannelValueCharacterString.go     |    2 +-
 .../readwrite/model/BACnetChannelValueDate.go      |    2 +-
 .../readwrite/model/BACnetChannelValueDouble.go    |    2 +-
 .../model/BACnetChannelValueEnumerated.go          |    2 +-
 .../readwrite/model/BACnetChannelValueInteger.go   |    2 +-
 .../model/BACnetChannelValueLightingCommand.go     |    2 +-
 .../readwrite/model/BACnetChannelValueNull.go      |    2 +-
 .../model/BACnetChannelValueObjectidentifier.go    |    2 +-
 .../model/BACnetChannelValueOctetString.go         |    2 +-
 .../readwrite/model/BACnetChannelValueReal.go      |    2 +-
 .../readwrite/model/BACnetChannelValueTime.go      |    2 +-
 .../readwrite/model/BACnetChannelValueUnsigned.go  |    2 +-
 .../readwrite/model/BACnetClientCOVNone.go         |    2 +-
 .../readwrite/model/BACnetClientCOVObject.go       |    2 +-
 .../bacnetip/readwrite/model/BACnetClosingTag.go   |    2 +-
 ...ACnetConfirmedServiceRequestAcknowledgeAlarm.go |    2 +-
 .../BACnetConfirmedServiceRequestAddListElement.go |    2 +-
 .../BACnetConfirmedServiceRequestAtomicReadFile.go |    2 +-
 ...tConfirmedServiceRequestAtomicReadFileRecord.go |    2 +-
 ...tConfirmedServiceRequestAtomicReadFileStream.go |    2 +-
 ...BACnetConfirmedServiceRequestAtomicWriteFile.go |    2 +-
 .../BACnetConfirmedServiceRequestAuthenticate.go   |    2 +-
 ...firmedServiceRequestConfirmedCOVNotification.go |    2 +-
 ...rviceRequestConfirmedCOVNotificationMultiple.go |    2 +-
 ...rmedServiceRequestConfirmedEventNotification.go |    2 +-
 ...firmedServiceRequestConfirmedPrivateTransfer.go |    2 +-
 ...tConfirmedServiceRequestConfirmedTextMessage.go |    2 +-
 ...estConfirmedTextMessageMessageClassCharacter.go |    2 +-
 ...questConfirmedTextMessageMessageClassNumeric.go |    2 +-
 ...estConfirmedTextMessageMessagePriorityTagged.go |    2 +-
 .../BACnetConfirmedServiceRequestCreateObject.go   |    2 +-
 ...medServiceRequestCreateObjectObjectSpecifier.go |    2 +-
 .../BACnetConfirmedServiceRequestDeleteObject.go   |    2 +-
 ...rmedServiceRequestDeviceCommunicationControl.go |    2 +-
 ...eviceCommunicationControlEnableDisableTagged.go |    2 +-
 ...tConfirmedServiceRequestGetEnrollmentSummary.go |    2 +-
 ...EnrollmentSummaryAcknowledgementFilterTagged.go |    2 +-
 ...stGetEnrollmentSummaryEventStateFilterTagged.go |    2 +-
 ...iceRequestGetEnrollmentSummaryPriorityFilter.go |    2 +-
 ...etConfirmedServiceRequestGetEventInformation.go |    2 +-
 ...etConfirmedServiceRequestLifeSafetyOperation.go |    2 +-
 .../BACnetConfirmedServiceRequestReadProperty.go   |    2 +-
 ...nfirmedServiceRequestReadPropertyConditional.go |    2 +-
 ...tConfirmedServiceRequestReadPropertyMultiple.go |    2 +-
 .../BACnetConfirmedServiceRequestReadRange.go      |    2 +-
 ...firmedServiceRequestReadRangeRangeByPosition.go |    2 +-
 ...ServiceRequestReadRangeRangeBySequenceNumber.go |    2 +-
 ...tConfirmedServiceRequestReadRangeRangeByTime.go |    2 +-
 ...netConfirmedServiceRequestReinitializeDevice.go |    2 +-
 ...ializeDeviceReinitializedStateOfDeviceTagged.go |    2 +-
 ...CnetConfirmedServiceRequestRemoveListElement.go |    2 +-
 .../BACnetConfirmedServiceRequestRequestKey.go     |    2 +-
 .../BACnetConfirmedServiceRequestSubscribeCOV.go   |    2 +-
 ...tConfirmedServiceRequestSubscribeCOVProperty.go |    2 +-
 ...edServiceRequestSubscribeCOVPropertyMultiple.go |    2 +-
 ...yMultipleListOfCovSubscriptionSpecifications.go |    2 +-
 ...tipleListOfCovSubscriptionSpecificationsList.go |    2 +-
 ...ListOfCovSubscriptionSpecificationsReference.go |    2 +-
 .../model/BACnetConfirmedServiceRequestUnknown.go  |    2 +-
 .../model/BACnetConfirmedServiceRequestVTClose.go  |    2 +-
 .../model/BACnetConfirmedServiceRequestVTData.go   |    2 +-
 .../model/BACnetConfirmedServiceRequestVTOpen.go   |    2 +-
 .../BACnetConfirmedServiceRequestWriteProperty.go  |    2 +-
 ...ConfirmedServiceRequestWritePropertyMultiple.go |    2 +-
 .../model/BACnetConstructedDataAPDULength.go       |    2 +-
 .../BACnetConstructedDataAPDUSegmentTimeout.go     |    2 +-
 .../model/BACnetConstructedDataAPDUTimeout.go      |    2 +-
 .../model/BACnetConstructedDataAbsenteeLimit.go    |    2 +-
 .../model/BACnetConstructedDataAcceptedModes.go    |    2 +-
 .../BACnetConstructedDataAccessAlarmEvents.go      |    2 +-
 .../BACnetConstructedDataAccessCredentialAll.go    |    2 +-
 .../BACnetConstructedDataAccessDoorAlarmValues.go  |    2 +-
 .../model/BACnetConstructedDataAccessDoorAll.go    |    2 +-
 .../BACnetConstructedDataAccessDoorFaultValues.go  |    2 +-
 .../BACnetConstructedDataAccessDoorPresentValue.go |    2 +-
 ...etConstructedDataAccessDoorRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataAccessDoors.go      |    2 +-
 .../model/BACnetConstructedDataAccessEvent.go      |    2 +-
 ...nstructedDataAccessEventAuthenticationFactor.go |    2 +-
 .../BACnetConstructedDataAccessEventCredential.go  |    2 +-
 .../model/BACnetConstructedDataAccessEventTag.go   |    2 +-
 .../model/BACnetConstructedDataAccessEventTime.go  |    2 +-
 .../model/BACnetConstructedDataAccessPointAll.go   |    2 +-
 .../model/BACnetConstructedDataAccessRightsAll.go  |    2 +-
 ...BACnetConstructedDataAccessTransactionEvents.go |    2 +-
 .../model/BACnetConstructedDataAccessUserAll.go    |    2 +-
 .../BACnetConstructedDataAccessZoneAdjustValue.go  |    2 +-
 .../BACnetConstructedDataAccessZoneAlarmValues.go  |    2 +-
 .../model/BACnetConstructedDataAccessZoneAll.go    |    2 +-
 .../model/BACnetConstructedDataAccompaniment.go    |    2 +-
 .../BACnetConstructedDataAccompanimentTime.go      |    2 +-
 .../model/BACnetConstructedDataAccumulatorAll.go   |    2 +-
 ...CnetConstructedDataAccumulatorFaultHighLimit.go |    2 +-
 ...ACnetConstructedDataAccumulatorFaultLowLimit.go |    2 +-
 .../BACnetConstructedDataAccumulatorHighLimit.go   |    2 +-
 .../BACnetConstructedDataAccumulatorLowLimit.go    |    2 +-
 ...BACnetConstructedDataAccumulatorMaxPresValue.go |    2 +-
 ...BACnetConstructedDataAccumulatorMinPresValue.go |    2 +-
 .../model/BACnetConstructedDataAckRequired.go      |    2 +-
 .../model/BACnetConstructedDataAckedTransitions.go |    2 +-
 .../readwrite/model/BACnetConstructedDataAction.go |    2 +-
 .../model/BACnetConstructedDataActionText.go       |    2 +-
 .../model/BACnetConstructedDataActivationTime.go   |    2 +-
 ...netConstructedDataActiveAuthenticationPolicy.go |    2 +-
 ...onstructedDataActiveCOVMultipleSubscriptions.go |    2 +-
 .../BACnetConstructedDataActiveCOVSubscriptions.go |    2 +-
 .../model/BACnetConstructedDataActiveText.go       |    2 +-
 .../model/BACnetConstructedDataActiveVTSessions.go |    2 +-
 .../model/BACnetConstructedDataActualShedLevel.go  |    2 +-
 .../model/BACnetConstructedDataAdjustValue.go      |    2 +-
 .../model/BACnetConstructedDataAlarmValue.go       |    2 +-
 .../model/BACnetConstructedDataAlarmValues.go      |    2 +-
 .../BACnetConstructedDataAlertEnrollmentAll.go     |    2 +-
 ...etConstructedDataAlertEnrollmentPresentValue.go |    2 +-
 .../model/BACnetConstructedDataAlignIntervals.go   |    2 +-
 .../BACnetConstructedDataAllWritesSuccessful.go    |    2 +-
 .../BACnetConstructedDataAllowGroupDelayInhibit.go |    2 +-
 .../model/BACnetConstructedDataAnalogInputAll.go   |    2 +-
 ...CnetConstructedDataAnalogInputFaultHighLimit.go |    2 +-
 ...ACnetConstructedDataAnalogInputFaultLowLimit.go |    2 +-
 ...CnetConstructedDataAnalogInputInterfaceValue.go |    2 +-
 ...BACnetConstructedDataAnalogInputMaxPresValue.go |    2 +-
 ...BACnetConstructedDataAnalogInputPresentValue.go |    2 +-
 .../model/BACnetConstructedDataAnalogOutputAll.go  |    2 +-
 ...netConstructedDataAnalogOutputInterfaceValue.go |    2 +-
 ...ACnetConstructedDataAnalogOutputMaxPresValue.go |    2 +-
 ...ACnetConstructedDataAnalogOutputPresentValue.go |    2 +-
 ...ConstructedDataAnalogOutputRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataAnalogValueAll.go   |    2 +-
 ...CnetConstructedDataAnalogValueFaultHighLimit.go |    2 +-
 ...ACnetConstructedDataAnalogValueFaultLowLimit.go |    2 +-
 ...BACnetConstructedDataAnalogValueMaxPresValue.go |    2 +-
 ...BACnetConstructedDataAnalogValuePresentValue.go |    2 +-
 ...tConstructedDataAnalogValueRelinquishDefault.go |    2 +-
 ...netConstructedDataApplicationSoftwareVersion.go |    2 +-
 .../model/BACnetConstructedDataArchive.go          |    2 +-
 .../BACnetConstructedDataAssignedAccessRights.go   |    2 +-
 .../BACnetConstructedDataAssignedLandingCalls.go   |    2 +-
 .../model/BACnetConstructedDataAttemptedSamples.go |    2 +-
 .../BACnetConstructedDataAuthenticationFactors.go  |    2 +-
 ...ACnetConstructedDataAuthenticationPolicyList.go |    2 +-
 ...CnetConstructedDataAuthenticationPolicyNames.go |    2 +-
 .../BACnetConstructedDataAuthenticationStatus.go   |    2 +-
 ...BACnetConstructedDataAuthorizationExemptions.go |    2 +-
 .../BACnetConstructedDataAuthorizationMode.go      |    2 +-
 .../BACnetConstructedDataAutoSlaveDiscovery.go     |    2 +-
 .../model/BACnetConstructedDataAverageValue.go     |    2 +-
 .../model/BACnetConstructedDataAveragingAll.go     |    2 +-
 .../BACnetConstructedDataBACnetIPGlobalAddress.go  |    2 +-
 .../model/BACnetConstructedDataBACnetIPMode.go     |    2 +-
 ...ACnetConstructedDataBACnetIPMulticastAddress.go |    2 +-
 .../BACnetConstructedDataBACnetIPNATTraversal.go   |    2 +-
 .../model/BACnetConstructedDataBACnetIPUDPPort.go  |    2 +-
 .../model/BACnetConstructedDataBACnetIPv6Mode.go   |    2 +-
 ...netConstructedDataBACnetIPv6MulticastAddress.go |    2 +-
 .../BACnetConstructedDataBACnetIPv6UDPPort.go      |    2 +-
 ...CnetConstructedDataBBMDAcceptFDRegistrations.go |    2 +-
 ...onstructedDataBBMDBroadcastDistributionTable.go |    2 +-
 .../BACnetConstructedDataBBMDForeignDeviceTable.go |    2 +-
 .../BACnetConstructedDataBackupAndRestoreState.go  |    2 +-
 .../BACnetConstructedDataBackupFailureTimeout.go   |    2 +-
 .../BACnetConstructedDataBackupPreparationTime.go  |    2 +-
 ...ACnetConstructedDataBaseDeviceSecurityPolicy.go |    2 +-
 .../model/BACnetConstructedDataBelongsTo.go        |    2 +-
 .../readwrite/model/BACnetConstructedDataBias.go   |    2 +-
 .../model/BACnetConstructedDataBinaryInputAll.go   |    2 +-
 ...CnetConstructedDataBinaryInputInterfaceValue.go |    2 +-
 ...BACnetConstructedDataBinaryInputPresentValue.go |    2 +-
 ...BACnetConstructedDataBinaryLightingOutputAll.go |    2 +-
 ...tructedDataBinaryLightingOutputFeedbackValue.go |    2 +-
 ...structedDataBinaryLightingOutputPresentValue.go |    2 +-
 ...tedDataBinaryLightingOutputRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataBinaryOutputAll.go  |    2 +-
 ...CnetConstructedDataBinaryOutputFeedbackValue.go |    2 +-
 ...netConstructedDataBinaryOutputInterfaceValue.go |    2 +-
 ...ACnetConstructedDataBinaryOutputPresentValue.go |    2 +-
 ...ConstructedDataBinaryOutputRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataBinaryValueAll.go   |    2 +-
 ...BACnetConstructedDataBinaryValuePresentValue.go |    2 +-
 ...tConstructedDataBinaryValueRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataBitMask.go          |    2 +-
 ...CnetConstructedDataBitStringValueAlarmValues.go |    2 +-
 ...netConstructedDataBitStringValuePresentValue.go |    2 +-
 ...nstructedDataBitStringValueRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataBitText.go          |    2 +-
 .../BACnetConstructedDataBitstringValueAll.go      |    2 +-
 .../model/BACnetConstructedDataBlinkWarnEnable.go  |    2 +-
 .../model/BACnetConstructedDataBufferSize.go       |    2 +-
 .../model/BACnetConstructedDataCOVIncrement.go     |    2 +-
 .../model/BACnetConstructedDataCOVPeriod.go        |    2 +-
 ...CnetConstructedDataCOVResubscriptionInterval.go |    2 +-
 .../model/BACnetConstructedDataCOVUPeriod.go       |    2 +-
 .../model/BACnetConstructedDataCOVURecipients.go   |    2 +-
 .../model/BACnetConstructedDataCalendarAll.go      |    2 +-
 .../BACnetConstructedDataCalendarPresentValue.go   |    2 +-
 .../BACnetConstructedDataCarAssignedDirection.go   |    2 +-
 .../model/BACnetConstructedDataCarDoorCommand.go   |    2 +-
 .../model/BACnetConstructedDataCarDoorStatus.go    |    2 +-
 .../model/BACnetConstructedDataCarDoorText.go      |    2 +-
 .../model/BACnetConstructedDataCarDoorZone.go      |    2 +-
 .../model/BACnetConstructedDataCarDriveStatus.go   |    2 +-
 .../model/BACnetConstructedDataCarLoad.go          |    2 +-
 .../model/BACnetConstructedDataCarLoadUnits.go     |    2 +-
 .../model/BACnetConstructedDataCarMode.go          |    2 +-
 .../BACnetConstructedDataCarMovingDirection.go     |    2 +-
 .../model/BACnetConstructedDataCarPosition.go      |    2 +-
 .../BACnetConstructedDataChangeOfStateCount.go     |    2 +-
 .../BACnetConstructedDataChangeOfStateTime.go      |    2 +-
 .../model/BACnetConstructedDataChangesPending.go   |    2 +-
 .../model/BACnetConstructedDataChannelAll.go       |    2 +-
 ...tedDataChannelListOfObjectPropertyReferences.go |    2 +-
 .../model/BACnetConstructedDataChannelNumber.go    |    2 +-
 .../BACnetConstructedDataChannelPresentValue.go    |    2 +-
 ...nstructedDataCharacterStringValueAlarmValues.go |    2 +-
 ...nstructedDataCharacterStringValueFaultValues.go |    2 +-
 ...structedDataCharacterStringValuePresentValue.go |    2 +-
 ...tedDataCharacterStringValueRelinquishDefault.go |    2 +-
 ...BACnetConstructedDataCharacterstringValueAll.go |    2 +-
 .../BACnetConstructedDataClientCOVIncrement.go     |    2 +-
 .../model/BACnetConstructedDataCommand.go          |    2 +-
 .../model/BACnetConstructedDataCommandAction.go    |    2 +-
 .../model/BACnetConstructedDataCommandAll.go       |    2 +-
 .../model/BACnetConstructedDataCommandTimeArray.go |    2 +-
 .../BACnetConstructedDataConfigurationFiles.go     |    2 +-
 .../model/BACnetConstructedDataControlGroups.go    |    2 +-
 ...etConstructedDataControlledVariableReference.go |    2 +-
 ...BACnetConstructedDataControlledVariableUnits.go |    2 +-
 ...BACnetConstructedDataControlledVariableValue.go |    2 +-
 .../readwrite/model/BACnetConstructedDataCount.go  |    2 +-
 .../BACnetConstructedDataCountBeforeChange.go      |    2 +-
 .../model/BACnetConstructedDataCountChangeTime.go  |    2 +-
 .../BACnetConstructedDataCredentialDataInputAll.go |    2 +-
 ...nstructedDataCredentialDataInputPresentValue.go |    2 +-
 ...ConstructedDataCredentialDataInputUpdateTime.go |    2 +-
 .../BACnetConstructedDataCredentialDisable.go      |    2 +-
 .../model/BACnetConstructedDataCredentialStatus.go |    2 +-
 .../model/BACnetConstructedDataCredentials.go      |    2 +-
 .../BACnetConstructedDataCredentialsInZone.go      |    2 +-
 .../BACnetConstructedDataCurrentCommandPriority.go |    2 +-
 .../model/BACnetConstructedDataDatabaseRevision.go |    2 +-
 .../model/BACnetConstructedDataDateList.go         |    2 +-
 ...tConstructedDataDatePatternValuePresentValue.go |    2 +-
 ...tructedDataDatePatternValueRelinquishDefault.go |    2 +-
 ...structedDataDateTimePatternValuePresentValue.go |    2 +-
 ...tedDataDateTimePatternValueRelinquishDefault.go |    2 +-
 ...CnetConstructedDataDateTimeValuePresentValue.go |    2 +-
 ...onstructedDataDateTimeValueRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataDateValueAll.go     |    2 +-
 .../BACnetConstructedDataDateValuePresentValue.go  |    2 +-
 ...netConstructedDataDateValueRelinquishDefault.go |    2 +-
 .../BACnetConstructedDataDatepatternValueAll.go    |    2 +-
 .../model/BACnetConstructedDataDatetimeValueAll.go |    2 +-
 ...BACnetConstructedDataDatetimepatternValueAll.go |    2 +-
 .../BACnetConstructedDataDaylightSavingsStatus.go  |    2 +-
 .../model/BACnetConstructedDataDaysRemaining.go    |    2 +-
 .../model/BACnetConstructedDataDeadband.go         |    2 +-
 .../model/BACnetConstructedDataDefaultFadeTime.go  |    2 +-
 .../model/BACnetConstructedDataDefaultRampRate.go  |    2 +-
 .../BACnetConstructedDataDefaultStepIncrement.go   |    2 +-
 ...onstructedDataDefaultSubordinateRelationship.go |    2 +-
 .../model/BACnetConstructedDataDefaultTimeout.go   |    2 +-
 ...BACnetConstructedDataDeployedProfileLocation.go |    2 +-
 .../BACnetConstructedDataDerivativeConstant.go     |    2 +-
 ...BACnetConstructedDataDerivativeConstantUnits.go |    2 +-
 .../model/BACnetConstructedDataDescription.go      |    2 +-
 .../BACnetConstructedDataDescriptionOfHalt.go      |    2 +-
 .../BACnetConstructedDataDeviceAddressBinding.go   |    2 +-
 .../model/BACnetConstructedDataDeviceAll.go        |    2 +-
 .../BACnetConstructedDataDeviceMaxInfoFrames.go    |    2 +-
 .../model/BACnetConstructedDataDeviceMaxMaster.go  |    2 +-
 .../model/BACnetConstructedDataDeviceType.go       |    2 +-
 .../model/BACnetConstructedDataDirectReading.go    |    2 +-
 ...BACnetConstructedDataDistributionKeyRevision.go |    2 +-
 .../model/BACnetConstructedDataDoNotHide.go        |    2 +-
 .../model/BACnetConstructedDataDoorAlarmState.go   |    2 +-
 .../BACnetConstructedDataDoorExtendedPulseTime.go  |    2 +-
 .../model/BACnetConstructedDataDoorMembers.go      |    2 +-
 .../BACnetConstructedDataDoorOpenTooLongTime.go    |    2 +-
 .../model/BACnetConstructedDataDoorPulseTime.go    |    2 +-
 .../model/BACnetConstructedDataDoorStatus.go       |    2 +-
 .../BACnetConstructedDataDoorUnlockDelayTime.go    |    2 +-
 .../model/BACnetConstructedDataDutyWindow.go       |    2 +-
 .../model/BACnetConstructedDataEffectivePeriod.go  |    2 +-
 .../model/BACnetConstructedDataEgressActive.go     |    2 +-
 .../model/BACnetConstructedDataEgressTime.go       |    2 +-
 .../BACnetConstructedDataElapsedActiveTime.go      |    2 +-
 .../model/BACnetConstructedDataElement.go          |    2 +-
 .../model/BACnetConstructedDataElevatorGroup.go    |    2 +-
 .../model/BACnetConstructedDataElevatorGroupAll.go |    2 +-
 ...CnetConstructedDataElevatorGroupGroupMembers.go |    2 +-
 .../readwrite/model/BACnetConstructedDataEnable.go |    2 +-
 .../model/BACnetConstructedDataEnergyMeter.go      |    2 +-
 .../model/BACnetConstructedDataEnergyMeterRef.go   |    2 +-
 .../model/BACnetConstructedDataEntryPoints.go      |    2 +-
 .../model/BACnetConstructedDataErrorLimit.go       |    2 +-
 .../model/BACnetConstructedDataEscalatorAll.go     |    2 +-
 .../BACnetConstructedDataEscalatorFaultSignals.go  |    2 +-
 .../model/BACnetConstructedDataEscalatorMode.go    |    2 +-
 .../BACnetConstructedDataEventAlgorithmInhibit.go  |    2 +-
 ...ACnetConstructedDataEventAlgorithmInhibitRef.go |    2 +-
 .../BACnetConstructedDataEventDetectionEnable.go   |    2 +-
 .../model/BACnetConstructedDataEventEnable.go      |    2 +-
 .../BACnetConstructedDataEventEnrollmentAll.go     |    2 +-
 .../model/BACnetConstructedDataEventLogAll.go      |    2 +-
 .../BACnetConstructedDataEventLogLogBuffer.go      |    2 +-
 .../BACnetConstructedDataEventMessageTexts.go      |    2 +-
 ...BACnetConstructedDataEventMessageTextsConfig.go |    2 +-
 .../model/BACnetConstructedDataEventParameters.go  |    2 +-
 .../model/BACnetConstructedDataEventState.go       |    2 +-
 .../model/BACnetConstructedDataEventTimeStamps.go  |    2 +-
 .../model/BACnetConstructedDataEventType.go        |    2 +-
 .../BACnetConstructedDataExceptionSchedule.go      |    2 +-
 .../model/BACnetConstructedDataExecutionDelay.go   |    2 +-
 .../model/BACnetConstructedDataExitPoints.go       |    2 +-
 .../BACnetConstructedDataExpectedShedLevel.go      |    2 +-
 .../model/BACnetConstructedDataExpirationTime.go   |    2 +-
 .../BACnetConstructedDataExtendedTimeEnable.go     |    2 +-
 .../model/BACnetConstructedDataFDBBMDAddress.go    |    2 +-
 .../BACnetConstructedDataFDSubscriptionLifetime.go |    2 +-
 .../BACnetConstructedDataFailedAttemptEvents.go    |    2 +-
 .../model/BACnetConstructedDataFailedAttempts.go   |    2 +-
 .../BACnetConstructedDataFailedAttemptsTime.go     |    2 +-
 .../model/BACnetConstructedDataFaultHighLimit.go   |    2 +-
 .../model/BACnetConstructedDataFaultLowLimit.go    |    2 +-
 .../model/BACnetConstructedDataFaultParameters.go  |    2 +-
 .../model/BACnetConstructedDataFaultSignals.go     |    2 +-
 .../model/BACnetConstructedDataFaultType.go        |    2 +-
 .../model/BACnetConstructedDataFaultValues.go      |    2 +-
 .../model/BACnetConstructedDataFileAccessMethod.go |    2 +-
 .../model/BACnetConstructedDataFileAll.go          |    2 +-
 .../model/BACnetConstructedDataFileRecordCount.go  |    2 +-
 .../model/BACnetConstructedDataFileSize.go         |    2 +-
 .../model/BACnetConstructedDataFileType.go         |    2 +-
 .../model/BACnetConstructedDataFirmwareRevision.go |    2 +-
 .../model/BACnetConstructedDataFloorText.go        |    2 +-
 .../model/BACnetConstructedDataFullDutyBaseline.go |    2 +-
 .../model/BACnetConstructedDataGlobalGroupAll.go   |    2 +-
 ...BACnetConstructedDataGlobalGroupGroupMembers.go |    2 +-
 ...BACnetConstructedDataGlobalGroupPresentValue.go |    2 +-
 .../model/BACnetConstructedDataGlobalIdentifier.go |    2 +-
 .../model/BACnetConstructedDataGroupAll.go         |    2 +-
 .../model/BACnetConstructedDataGroupID.go          |    2 +-
 .../model/BACnetConstructedDataGroupMemberNames.go |    2 +-
 .../model/BACnetConstructedDataGroupMembers.go     |    2 +-
 .../model/BACnetConstructedDataGroupMode.go        |    2 +-
 .../BACnetConstructedDataGroupPresentValue.go      |    2 +-
 .../model/BACnetConstructedDataHighLimit.go        |    2 +-
 .../model/BACnetConstructedDataHigherDeck.go       |    2 +-
 .../model/BACnetConstructedDataIPAddress.go        |    2 +-
 .../model/BACnetConstructedDataIPDHCPEnable.go     |    2 +-
 .../model/BACnetConstructedDataIPDHCPLeaseTime.go  |    2 +-
 ...ACnetConstructedDataIPDHCPLeaseTimeRemaining.go |    2 +-
 .../model/BACnetConstructedDataIPDHCPServer.go     |    2 +-
 .../model/BACnetConstructedDataIPDNSServer.go      |    2 +-
 .../model/BACnetConstructedDataIPDefaultGateway.go |    2 +-
 .../model/BACnetConstructedDataIPSubnetMask.go     |    2 +-
 .../model/BACnetConstructedDataIPv6Address.go      |    2 +-
 ...ACnetConstructedDataIPv6AutoAddressingEnable.go |    2 +-
 .../BACnetConstructedDataIPv6DHCPLeaseTime.go      |    2 +-
 ...netConstructedDataIPv6DHCPLeaseTimeRemaining.go |    2 +-
 .../model/BACnetConstructedDataIPv6DHCPServer.go   |    2 +-
 .../model/BACnetConstructedDataIPv6DNSServer.go    |    2 +-
 .../BACnetConstructedDataIPv6DefaultGateway.go     |    2 +-
 .../model/BACnetConstructedDataIPv6PrefixLength.go |    2 +-
 .../model/BACnetConstructedDataIPv6ZoneIndex.go    |    2 +-
 .../model/BACnetConstructedDataInProcess.go        |    2 +-
 .../model/BACnetConstructedDataInProgress.go       |    2 +-
 .../model/BACnetConstructedDataInactiveText.go     |    2 +-
 .../model/BACnetConstructedDataInitialTimeout.go   |    2 +-
 .../model/BACnetConstructedDataInputReference.go   |    2 +-
 .../model/BACnetConstructedDataInstallationID.go   |    2 +-
 .../model/BACnetConstructedDataInstanceOf.go       |    2 +-
 .../BACnetConstructedDataInstantaneousPower.go     |    2 +-
 .../model/BACnetConstructedDataIntegerValueAll.go  |    2 +-
 ...ACnetConstructedDataIntegerValueCOVIncrement.go |    2 +-
 .../BACnetConstructedDataIntegerValueDeadband.go   |    2 +-
 ...netConstructedDataIntegerValueFaultHighLimit.go |    2 +-
 ...CnetConstructedDataIntegerValueFaultLowLimit.go |    2 +-
 .../BACnetConstructedDataIntegerValueHighLimit.go  |    2 +-
 .../BACnetConstructedDataIntegerValueLowLimit.go   |    2 +-
 ...ACnetConstructedDataIntegerValueMaxPresValue.go |    2 +-
 ...ACnetConstructedDataIntegerValueMinPresValue.go |    2 +-
 ...ACnetConstructedDataIntegerValuePresentValue.go |    2 +-
 ...ConstructedDataIntegerValueRelinquishDefault.go |    2 +-
 .../BACnetConstructedDataIntegerValueResolution.go |    2 +-
 .../model/BACnetConstructedDataIntegralConstant.go |    2 +-
 .../BACnetConstructedDataIntegralConstantUnits.go  |    2 +-
 .../model/BACnetConstructedDataIntervalOffset.go   |    2 +-
 .../readwrite/model/BACnetConstructedDataIsUTC.go  |    2 +-
 .../model/BACnetConstructedDataKeySets.go          |    2 +-
 .../BACnetConstructedDataLandingCallControl.go     |    2 +-
 .../model/BACnetConstructedDataLandingCalls.go     |    2 +-
 .../BACnetConstructedDataLandingDoorStatus.go      |    2 +-
 .../BACnetConstructedDataLargeAnalogValueAll.go    |    2 +-
 ...tConstructedDataLargeAnalogValueCOVIncrement.go |    2 +-
 ...ACnetConstructedDataLargeAnalogValueDeadband.go |    2 +-
 ...onstructedDataLargeAnalogValueFaultHighLimit.go |    2 +-
 ...ConstructedDataLargeAnalogValueFaultLowLimit.go |    2 +-
 ...CnetConstructedDataLargeAnalogValueHighLimit.go |    2 +-
 ...ACnetConstructedDataLargeAnalogValueLowLimit.go |    2 +-
 ...tConstructedDataLargeAnalogValueMaxPresValue.go |    2 +-
 ...tConstructedDataLargeAnalogValueMinPresValue.go |    2 +-
 ...tConstructedDataLargeAnalogValuePresentValue.go |    2 +-
 ...tructedDataLargeAnalogValueRelinquishDefault.go |    2 +-
 ...netConstructedDataLargeAnalogValueResolution.go |    2 +-
 .../model/BACnetConstructedDataLastAccessEvent.go  |    2 +-
 .../model/BACnetConstructedDataLastAccessPoint.go  |    2 +-
 .../model/BACnetConstructedDataLastCommandTime.go  |    2 +-
 .../BACnetConstructedDataLastCredentialAdded.go    |    2 +-
 ...BACnetConstructedDataLastCredentialAddedTime.go |    2 +-
 .../BACnetConstructedDataLastCredentialRemoved.go  |    2 +-
 ...CnetConstructedDataLastCredentialRemovedTime.go |    2 +-
 .../model/BACnetConstructedDataLastKeyServer.go    |    2 +-
 .../model/BACnetConstructedDataLastNotifyRecord.go |    2 +-
 .../model/BACnetConstructedDataLastPriority.go     |    2 +-
 .../BACnetConstructedDataLastRestartReason.go      |    2 +-
 .../model/BACnetConstructedDataLastRestoreTime.go  |    2 +-
 .../model/BACnetConstructedDataLastStateChange.go  |    2 +-
 .../model/BACnetConstructedDataLastUseTime.go      |    2 +-
 .../BACnetConstructedDataLifeSafetyAlarmValues.go  |    2 +-
 ...netConstructedDataLifeSafetyPointAlarmValues.go |    2 +-
 .../BACnetConstructedDataLifeSafetyPointAll.go     |    2 +-
 ...netConstructedDataLifeSafetyPointFaultValues.go |    2 +-
 ...etConstructedDataLifeSafetyPointPresentValue.go |    2 +-
 ...CnetConstructedDataLifeSafetyZoneAlarmValues.go |    2 +-
 .../BACnetConstructedDataLifeSafetyZoneAll.go      |    2 +-
 ...CnetConstructedDataLifeSafetyZoneFaultValues.go |    2 +-
 ...tructedDataLifeSafetyZoneMaintenanceRequired.go |    2 +-
 ...netConstructedDataLifeSafetyZonePresentValue.go |    2 +-
 .../model/BACnetConstructedDataLiftAll.go          |    2 +-
 .../model/BACnetConstructedDataLiftFaultSignals.go |    2 +-
 .../model/BACnetConstructedDataLightingCommand.go  |    2 +-
 ...onstructedDataLightingCommandDefaultPriority.go |    2 +-
 .../BACnetConstructedDataLightingOutputAll.go      |    2 +-
 ...etConstructedDataLightingOutputFeedbackValue.go |    2 +-
 ...netConstructedDataLightingOutputPresentValue.go |    2 +-
 ...nstructedDataLightingOutputRelinquishDefault.go |    2 +-
 ...etConstructedDataLightingOutputTrackingValue.go |    2 +-
 .../model/BACnetConstructedDataLimitEnable.go      |    2 +-
 ...BACnetConstructedDataLimitMonitoringInterval.go |    2 +-
 .../model/BACnetConstructedDataLinkSpeed.go        |    2 +-
 .../BACnetConstructedDataLinkSpeedAutonegotiate.go |    2 +-
 .../model/BACnetConstructedDataLinkSpeeds.go       |    2 +-
 .../BACnetConstructedDataListOfGroupMembers.go     |    2 +-
 ...onstructedDataListOfObjectPropertyReferences.go |    2 +-
 .../model/BACnetConstructedDataLoadControlAll.go   |    2 +-
 ...BACnetConstructedDataLoadControlPresentValue.go |    2 +-
 .../model/BACnetConstructedDataLocalDate.go        |    2 +-
 .../BACnetConstructedDataLocalForwardingOnly.go    |    2 +-
 .../model/BACnetConstructedDataLocalTime.go        |    2 +-
 .../model/BACnetConstructedDataLocation.go         |    2 +-
 .../model/BACnetConstructedDataLockStatus.go       |    2 +-
 .../model/BACnetConstructedDataLockout.go          |    2 +-
 .../BACnetConstructedDataLockoutRelinquishTime.go  |    2 +-
 .../model/BACnetConstructedDataLogBuffer.go        |    2 +-
 ...BACnetConstructedDataLogDeviceObjectProperty.go |    2 +-
 .../model/BACnetConstructedDataLogInterval.go      |    2 +-
 .../model/BACnetConstructedDataLoggingObject.go    |    2 +-
 .../model/BACnetConstructedDataLoggingRecord.go    |    2 +-
 .../model/BACnetConstructedDataLoggingType.go      |    2 +-
 .../model/BACnetConstructedDataLoopAction.go       |    2 +-
 .../model/BACnetConstructedDataLoopAll.go          |    2 +-
 .../model/BACnetConstructedDataLoopPresentValue.go |    2 +-
 .../model/BACnetConstructedDataLowDiffLimit.go     |    2 +-
 .../model/BACnetConstructedDataLowLimit.go         |    2 +-
 .../model/BACnetConstructedDataLowerDeck.go        |    2 +-
 .../model/BACnetConstructedDataMACAddress.go       |    2 +-
 .../model/BACnetConstructedDataMachineRoomID.go    |    2 +-
 .../BACnetConstructedDataMaintenanceRequired.go    |    2 +-
 .../model/BACnetConstructedDataMakingCarCall.go    |    2 +-
 ...tConstructedDataManipulatedVariableReference.go |    2 +-
 ...CnetConstructedDataManualSlaveAddressBinding.go |    2 +-
 .../BACnetConstructedDataMaskedAlarmValues.go      |    2 +-
 .../BACnetConstructedDataMaxAPDULengthAccepted.go  |    2 +-
 .../model/BACnetConstructedDataMaxActualValue.go   |    2 +-
 .../BACnetConstructedDataMaxFailedAttempts.go      |    2 +-
 .../model/BACnetConstructedDataMaxInfoFrames.go    |    2 +-
 .../model/BACnetConstructedDataMaxMaster.go        |    2 +-
 .../model/BACnetConstructedDataMaxPresValue.go     |    2 +-
 .../BACnetConstructedDataMaxSegmentsAccepted.go    |    2 +-
 .../model/BACnetConstructedDataMaximumOutput.go    |    2 +-
 .../model/BACnetConstructedDataMaximumValue.go     |    2 +-
 .../BACnetConstructedDataMaximumValueTimestamp.go  |    2 +-
 .../model/BACnetConstructedDataMemberOf.go         |    2 +-
 .../BACnetConstructedDataMemberStatusFlags.go      |    2 +-
 .../model/BACnetConstructedDataMembers.go          |    2 +-
 .../model/BACnetConstructedDataMinActualValue.go   |    2 +-
 .../model/BACnetConstructedDataMinPresValue.go     |    2 +-
 .../model/BACnetConstructedDataMinimumOffTime.go   |    2 +-
 .../model/BACnetConstructedDataMinimumOnTime.go    |    2 +-
 .../model/BACnetConstructedDataMinimumOutput.go    |    2 +-
 .../model/BACnetConstructedDataMinimumValue.go     |    2 +-
 .../BACnetConstructedDataMinimumValueTimestamp.go  |    2 +-
 .../readwrite/model/BACnetConstructedDataMode.go   |    2 +-
 .../model/BACnetConstructedDataModelName.go        |    2 +-
 .../model/BACnetConstructedDataModificationDate.go |    2 +-
 ...netConstructedDataMultiStateInputAlarmValues.go |    2 +-
 .../BACnetConstructedDataMultiStateInputAll.go     |    2 +-
 ...netConstructedDataMultiStateInputFaultValues.go |    2 +-
 ...ConstructedDataMultiStateInputInterfaceValue.go |    2 +-
 .../BACnetConstructedDataMultiStateOutputAll.go    |    2 +-
 ...ConstructedDataMultiStateOutputFeedbackValue.go |    2 +-
 ...onstructedDataMultiStateOutputInterfaceValue.go |    2 +-
 ...tructedDataMultiStateOutputRelinquishDefault.go |    2 +-
 ...netConstructedDataMultiStateValueAlarmValues.go |    2 +-
 .../BACnetConstructedDataMultiStateValueAll.go     |    2 +-
 ...netConstructedDataMultiStateValueFaultValues.go |    2 +-
 ...structedDataMultiStateValueRelinquishDefault.go |    2 +-
 .../model/BACnetConstructedDataMusterPoint.go      |    2 +-
 .../BACnetConstructedDataNegativeAccessRules.go    |    2 +-
 ...ConstructedDataNetworkAccessSecurityPolicies.go |    2 +-
 .../BACnetConstructedDataNetworkInterfaceName.go   |    2 +-
 .../model/BACnetConstructedDataNetworkNumber.go    |    2 +-
 .../BACnetConstructedDataNetworkNumberQuality.go   |    2 +-
 .../model/BACnetConstructedDataNetworkPortAll.go   |    2 +-
 ...ACnetConstructedDataNetworkPortMaxInfoFrames.go |    2 +-
 .../BACnetConstructedDataNetworkPortMaxMaster.go   |    2 +-
 .../BACnetConstructedDataNetworkSecurityAll.go     |    2 +-
 .../model/BACnetConstructedDataNetworkType.go      |    2 +-
 .../BACnetConstructedDataNextStoppingFloor.go      |    2 +-
 .../model/BACnetConstructedDataNodeSubtype.go      |    2 +-
 .../model/BACnetConstructedDataNodeType.go         |    2 +-
 .../BACnetConstructedDataNotificationClass.go      |    2 +-
 .../BACnetConstructedDataNotificationClassAll.go   |    2 +-
 ...ACnetConstructedDataNotificationForwarderAll.go |    2 +-
 .../BACnetConstructedDataNotificationThreshold.go  |    2 +-
 .../model/BACnetConstructedDataNotifyType.go       |    2 +-
 .../BACnetConstructedDataNumberOfAPDURetries.go    |    2 +-
 ...onstructedDataNumberOfAuthenticationPolicies.go |    2 +-
 .../model/BACnetConstructedDataNumberOfStates.go   |    2 +-
 .../model/BACnetConstructedDataObjectIdentifier.go |    2 +-
 .../model/BACnetConstructedDataObjectList.go       |    2 +-
 .../model/BACnetConstructedDataObjectName.go       |    2 +-
 ...BACnetConstructedDataObjectPropertyReference.go |    2 +-
 .../model/BACnetConstructedDataObjectType.go       |    2 +-
 .../model/BACnetConstructedDataOccupancyCount.go   |    2 +-
 .../BACnetConstructedDataOccupancyCountAdjust.go   |    2 +-
 .../BACnetConstructedDataOccupancyCountEnable.go   |    2 +-
 .../BACnetConstructedDataOccupancyLowerLimit.go    |    2 +-
 ...etConstructedDataOccupancyLowerLimitEnforced.go |    2 +-
 .../model/BACnetConstructedDataOccupancyState.go   |    2 +-
 .../BACnetConstructedDataOccupancyUpperLimit.go    |    2 +-
 ...etConstructedDataOccupancyUpperLimitEnforced.go |    2 +-
 ...tConstructedDataOctetStringValuePresentValue.go |    2 +-
 ...tructedDataOctetStringValueRelinquishDefault.go |    2 +-
 .../BACnetConstructedDataOctetstringValueAll.go    |    2 +-
 .../BACnetConstructedDataOperationDirection.go     |    2 +-
 .../BACnetConstructedDataOperationExpected.go      |    2 +-
 .../model/BACnetConstructedDataOptional.go         |    2 +-
 .../model/BACnetConstructedDataOutOfService.go     |    2 +-
 .../model/BACnetConstructedDataOutputUnits.go      |    2 +-
 .../BACnetConstructedDataPacketReorderTime.go      |    2 +-
 .../model/BACnetConstructedDataPassbackMode.go     |    2 +-
 .../model/BACnetConstructedDataPassbackTimeout.go  |    2 +-
 .../model/BACnetConstructedDataPassengerAlarm.go   |    2 +-
 .../model/BACnetConstructedDataPolarity.go         |    2 +-
 .../model/BACnetConstructedDataPortFilter.go       |    2 +-
 .../BACnetConstructedDataPositiveAccessRules.go    |    2 +-
 ...BACnetConstructedDataPositiveIntegerValueAll.go |    2 +-
 ...structedDataPositiveIntegerValueCOVIncrement.go |    2 +-
 ...tConstructedDataPositiveIntegerValueDeadband.go |    2 +-
 ...ructedDataPositiveIntegerValueFaultHighLimit.go |    2 +-
 ...tructedDataPositiveIntegerValueFaultLowLimit.go |    2 +-
 ...ConstructedDataPositiveIntegerValueHighLimit.go |    2 +-
 ...tConstructedDataPositiveIntegerValueLowLimit.go |    2 +-
 ...structedDataPositiveIntegerValueMaxPresValue.go |    2 +-
 ...structedDataPositiveIntegerValueMinPresValue.go |    2 +-
 ...tedDataPositiveIntegerValueRelinquishDefault.go |    2 +-
 ...onstructedDataPositiveIntegerValueResolution.go |    2 +-
 .../readwrite/model/BACnetConstructedDataPower.go  |    2 +-
 .../model/BACnetConstructedDataPowerMode.go        |    2 +-
 .../model/BACnetConstructedDataPrescale.go         |    2 +-
 .../model/BACnetConstructedDataPresentValue.go     |    2 +-
 .../model/BACnetConstructedDataPriority.go         |    2 +-
 .../model/BACnetConstructedDataPriorityArray.go    |    2 +-
 .../BACnetConstructedDataPriorityForWriting.go     |    2 +-
 .../BACnetConstructedDataProcessIdentifier.go      |    2 +-
 ...BACnetConstructedDataProcessIdentifierFilter.go |    2 +-
 .../model/BACnetConstructedDataProfileLocation.go  |    2 +-
 .../model/BACnetConstructedDataProfileName.go      |    2 +-
 .../model/BACnetConstructedDataProgramAll.go       |    2 +-
 .../model/BACnetConstructedDataProgramChange.go    |    2 +-
 .../model/BACnetConstructedDataProgramLocation.go  |    2 +-
 .../model/BACnetConstructedDataProgramState.go     |    2 +-
 .../model/BACnetConstructedDataPropertyList.go     |    2 +-
 .../BACnetConstructedDataProportionalConstant.go   |    2 +-
 ...CnetConstructedDataProportionalConstantUnits.go |    2 +-
 .../model/BACnetConstructedDataProtocolLevel.go    |    2 +-
 ...tConstructedDataProtocolObjectTypesSupported.go |    2 +-
 .../model/BACnetConstructedDataProtocolRevision.go |    2 +-
 ...CnetConstructedDataProtocolServicesSupported.go |    2 +-
 .../model/BACnetConstructedDataProtocolVersion.go  |    2 +-
 ...CnetConstructedDataPulseConverterAdjustValue.go |    2 +-
 .../BACnetConstructedDataPulseConverterAll.go      |    2 +-
 ...netConstructedDataPulseConverterPresentValue.go |    2 +-
 .../model/BACnetConstructedDataPulseRate.go        |    2 +-
 .../model/BACnetConstructedDataReadOnly.go         |    2 +-
 .../model/BACnetConstructedDataReasonForDisable.go |    2 +-
 .../model/BACnetConstructedDataReasonForHalt.go    |    2 +-
 .../model/BACnetConstructedDataRecipientList.go    |    2 +-
 .../model/BACnetConstructedDataRecordCount.go      |    2 +-
 ...ACnetConstructedDataRecordsSinceNotification.go |    2 +-
 .../model/BACnetConstructedDataReferencePort.go    |    2 +-
 .../BACnetConstructedDataRegisteredCarCall.go      |    2 +-
 .../model/BACnetConstructedDataReliability.go      |    2 +-
 ...tConstructedDataReliabilityEvaluationInhibit.go |    2 +-
 .../BACnetConstructedDataRelinquishDefault.go      |    2 +-
 .../model/BACnetConstructedDataRepresents.go       |    2 +-
 .../BACnetConstructedDataRequestedShedLevel.go     |    2 +-
 ...BACnetConstructedDataRequestedUpdateInterval.go |    2 +-
 .../model/BACnetConstructedDataRequired.go         |    2 +-
 .../model/BACnetConstructedDataResolution.go       |    2 +-
 ...ConstructedDataRestartNotificationRecipients.go |    2 +-
 .../BACnetConstructedDataRestoreCompletionTime.go  |    2 +-
 .../BACnetConstructedDataRestorePreparationTime.go |    2 +-
 .../model/BACnetConstructedDataRoutingTable.go     |    2 +-
 .../readwrite/model/BACnetConstructedDataScale.go  |    2 +-
 .../model/BACnetConstructedDataScaleFactor.go      |    2 +-
 .../model/BACnetConstructedDataScheduleAll.go      |    2 +-
 .../model/BACnetConstructedDataScheduleDefault.go  |    2 +-
 .../BACnetConstructedDataSchedulePresentValue.go   |    2 +-
 .../model/BACnetConstructedDataSecuredStatus.go    |    2 +-
 .../BACnetConstructedDataSecurityPDUTimeout.go     |    2 +-
 .../BACnetConstructedDataSecurityTimeWindow.go     |    2 +-
 .../BACnetConstructedDataSegmentationSupported.go  |    2 +-
 .../model/BACnetConstructedDataSerialNumber.go     |    2 +-
 .../model/BACnetConstructedDataSetpoint.go         |    2 +-
 .../BACnetConstructedDataSetpointReference.go      |    2 +-
 .../model/BACnetConstructedDataSetting.go          |    2 +-
 .../model/BACnetConstructedDataShedDuration.go     |    2 +-
 .../BACnetConstructedDataShedLevelDescriptions.go  |    2 +-
 .../model/BACnetConstructedDataShedLevels.go       |    2 +-
 .../model/BACnetConstructedDataSilenced.go         |    2 +-
 .../BACnetConstructedDataSlaveAddressBinding.go    |    2 +-
 .../model/BACnetConstructedDataSlaveProxyEnable.go |    2 +-
 .../model/BACnetConstructedDataStartTime.go        |    2 +-
 .../BACnetConstructedDataStateChangeValues.go      |    2 +-
 .../model/BACnetConstructedDataStateDescription.go |    2 +-
 .../model/BACnetConstructedDataStateText.go        |    2 +-
 .../model/BACnetConstructedDataStatusFlags.go      |    2 +-
 .../model/BACnetConstructedDataStopTime.go         |    2 +-
 .../model/BACnetConstructedDataStopWhenFull.go     |    2 +-
 .../model/BACnetConstructedDataStrikeCount.go      |    2 +-
 .../BACnetConstructedDataStructuredObjectList.go   |    2 +-
 .../BACnetConstructedDataStructuredViewAll.go      |    2 +-
 .../BACnetConstructedDataSubordinateAnnotations.go |    2 +-
 .../model/BACnetConstructedDataSubordinateList.go  |    2 +-
 .../BACnetConstructedDataSubordinateNodeTypes.go   |    2 +-
 ...ACnetConstructedDataSubordinateRelationships.go |    2 +-
 .../model/BACnetConstructedDataSubordinateTags.go  |    2 +-
 .../BACnetConstructedDataSubscribedRecipients.go   |    2 +-
 .../BACnetConstructedDataSupportedFormatClasses.go |    2 +-
 .../model/BACnetConstructedDataSupportedFormats.go |    2 +-
 ...etConstructedDataSupportedSecurityAlgorithms.go |    2 +-
 .../model/BACnetConstructedDataSystemStatus.go     |    2 +-
 .../readwrite/model/BACnetConstructedDataTags.go   |    2 +-
 .../model/BACnetConstructedDataThreatAuthority.go  |    2 +-
 .../model/BACnetConstructedDataThreatLevel.go      |    2 +-
 .../model/BACnetConstructedDataTimeDelay.go        |    2 +-
 .../model/BACnetConstructedDataTimeDelayNormal.go  |    2 +-
 .../BACnetConstructedDataTimeOfActiveTimeReset.go  |    2 +-
 .../BACnetConstructedDataTimeOfDeviceRestart.go    |    2 +-
 .../BACnetConstructedDataTimeOfStateCountReset.go  |    2 +-
 .../BACnetConstructedDataTimeOfStrikeCountReset.go |    2 +-
 ...tConstructedDataTimePatternValuePresentValue.go |    2 +-
 ...tructedDataTimePatternValueRelinquishDefault.go |    2 +-
 ...etConstructedDataTimeSynchronizationInterval.go |    2 +-
 ...ConstructedDataTimeSynchronizationRecipients.go |    2 +-
 .../model/BACnetConstructedDataTimeValueAll.go     |    2 +-
 .../BACnetConstructedDataTimeValuePresentValue.go  |    2 +-
 ...netConstructedDataTimeValueRelinquishDefault.go |    2 +-
 .../BACnetConstructedDataTimepatternValueAll.go    |    2 +-
 .../model/BACnetConstructedDataTimerAlarmValues.go |    2 +-
 .../model/BACnetConstructedDataTimerAll.go         |    2 +-
 .../BACnetConstructedDataTimerMaxPresValue.go      |    2 +-
 .../BACnetConstructedDataTimerMinPresValue.go      |    2 +-
 .../model/BACnetConstructedDataTimerResolution.go  |    2 +-
 .../model/BACnetConstructedDataTimerRunning.go     |    2 +-
 .../model/BACnetConstructedDataTimerState.go       |    2 +-
 .../model/BACnetConstructedDataTotalRecordCount.go |    2 +-
 .../model/BACnetConstructedDataTraceFlag.go        |    2 +-
 .../model/BACnetConstructedDataTrackingValue.go    |    2 +-
 ...tConstructedDataTransactionNotificationClass.go |    2 +-
 .../model/BACnetConstructedDataTransition.go       |    2 +-
 .../model/BACnetConstructedDataTrendLogAll.go      |    2 +-
 .../BACnetConstructedDataTrendLogLogBuffer.go      |    2 +-
 ...nstructedDataTrendLogLogDeviceObjectProperty.go |    2 +-
 .../BACnetConstructedDataTrendLogMultipleAll.go    |    2 +-
 ...CnetConstructedDataTrendLogMultipleLogBuffer.go |    2 +-
 ...dDataTrendLogMultipleLogDeviceObjectProperty.go |    2 +-
 .../model/BACnetConstructedDataTrigger.go          |    2 +-
 .../model/BACnetConstructedDataUTCOffset.go        |    2 +-
 ...structedDataUTCTimeSynchronizationRecipients.go |    2 +-
 .../readwrite/model/BACnetConstructedDataUnits.go  |    2 +-
 .../model/BACnetConstructedDataUnspecified.go      |    2 +-
 .../model/BACnetConstructedDataUpdateInterval.go   |    2 +-
 .../BACnetConstructedDataUpdateKeySetTimeout.go    |    2 +-
 .../model/BACnetConstructedDataUpdateTime.go       |    2 +-
 .../BACnetConstructedDataUserExternalIdentifier.go |    2 +-
 ...ACnetConstructedDataUserInformationReference.go |    2 +-
 .../model/BACnetConstructedDataUserName.go         |    2 +-
 .../model/BACnetConstructedDataUserType.go         |    2 +-
 .../model/BACnetConstructedDataUsesRemaining.go    |    2 +-
 .../BACnetConstructedDataVTClassesSupported.go     |    2 +-
 .../model/BACnetConstructedDataValidSamples.go     |    2 +-
 .../BACnetConstructedDataValueBeforeChange.go      |    2 +-
 .../model/BACnetConstructedDataValueChangeTime.go  |    2 +-
 .../model/BACnetConstructedDataValueSet.go         |    2 +-
 .../model/BACnetConstructedDataValueSource.go      |    2 +-
 .../model/BACnetConstructedDataValueSourceArray.go |    2 +-
 .../model/BACnetConstructedDataVarianceValue.go    |    2 +-
 .../model/BACnetConstructedDataVendorIdentifier.go |    2 +-
 .../model/BACnetConstructedDataVendorName.go       |    2 +-
 .../model/BACnetConstructedDataVerificationTime.go |    2 +-
 .../BACnetConstructedDataVirtualMACAddressTable.go |    2 +-
 .../model/BACnetConstructedDataWeeklySchedule.go   |    2 +-
 .../model/BACnetConstructedDataWindowInterval.go   |    2 +-
 .../model/BACnetConstructedDataWindowSamples.go    |    2 +-
 .../model/BACnetConstructedDataWriteStatus.go      |    2 +-
 .../model/BACnetConstructedDataZoneFrom.go         |    2 +-
 .../model/BACnetConstructedDataZoneMembers.go      |    2 +-
 .../readwrite/model/BACnetConstructedDataZoneTo.go |    2 +-
 .../readwrite/model/BACnetContextTagBitString.go   |    2 +-
 .../readwrite/model/BACnetContextTagBoolean.go     |    2 +-
 .../model/BACnetContextTagCharacterString.go       |    2 +-
 .../readwrite/model/BACnetContextTagDate.go        |    2 +-
 .../readwrite/model/BACnetContextTagDouble.go      |    2 +-
 .../readwrite/model/BACnetContextTagEnumerated.go  |    2 +-
 .../readwrite/model/BACnetContextTagNull.go        |    2 +-
 .../model/BACnetContextTagObjectIdentifier.go      |    2 +-
 .../readwrite/model/BACnetContextTagOctetString.go |    2 +-
 .../readwrite/model/BACnetContextTagReal.go        |    2 +-
 .../model/BACnetContextTagSignedInteger.go         |    2 +-
 .../readwrite/model/BACnetContextTagTime.go        |    2 +-
 .../readwrite/model/BACnetContextTagUnknown.go     |    2 +-
 .../model/BACnetContextTagUnsignedInteger.go       |    2 +-
 .../model/BACnetCredentialAuthenticationFactor.go  |    2 +-
 .../readwrite/model/BACnetDailySchedule.go         |    2 +-
 .../bacnetip/readwrite/model/BACnetDateRange.go    |    2 +-
 .../readwrite/model/BACnetDateRangeEnclosed.go     |    2 +-
 .../bacnetip/readwrite/model/BACnetDateTime.go     |    2 +-
 .../readwrite/model/BACnetDateTimeEnclosed.go      |    2 +-
 .../readwrite/model/BACnetDaysOfWeekTagged.go      |    2 +-
 .../bacnetip/readwrite/model/BACnetDestination.go  |    2 +-
 .../model/BACnetDeviceObjectPropertyReference.go   |    2 +-
 .../BACnetDeviceObjectPropertyReferenceEnclosed.go |    2 +-
 .../readwrite/model/BACnetDeviceObjectReference.go |    2 +-
 .../model/BACnetDeviceObjectReferenceEnclosed.go   |    2 +-
 .../readwrite/model/BACnetDeviceStatusTagged.go    |    2 +-
 .../readwrite/model/BACnetDoorAlarmStateTagged.go  |    2 +-
 .../model/BACnetDoorSecuredStatusTagged.go         |    2 +-
 .../readwrite/model/BACnetDoorStatusTagged.go      |    2 +-
 .../readwrite/model/BACnetDoorValueTagged.go       |    2 +-
 .../model/BACnetEngineeringUnitsTagged.go          |    2 +-
 .../bacnetip/readwrite/model/BACnetErrorGeneral.go |    2 +-
 .../readwrite/model/BACnetEscalatorFaultTagged.go  |    2 +-
 .../readwrite/model/BACnetEscalatorModeTagged.go   |    2 +-
 .../BACnetEscalatorOperationDirectionTagged.go     |    2 +-
 .../readwrite/model/BACnetEventLogRecord.go        |    2 +-
 .../model/BACnetEventLogRecordLogDatumLogStatus.go |    2 +-
 .../BACnetEventLogRecordLogDatumNotification.go    |    2 +-
 .../BACnetEventLogRecordLogDatumTimeChange.go      |    2 +-
 .../model/BACnetEventNotificationSubscription.go   |    2 +-
 .../model/BACnetEventParameterAccessEvent.go       |    2 +-
 ...tEventParameterAccessEventListOfAccessEvents.go |    2 +-
 .../model/BACnetEventParameterBufferReady.go       |    2 +-
 .../model/BACnetEventParameterChangeOfBitstring.go |    2 +-
 ...ameterChangeOfBitstringListOfBitstringValues.go |    2 +-
 .../BACnetEventParameterChangeOfCharacterString.go |    2 +-
 ...eterChangeOfCharacterStringListOfAlarmValues.go |    2 +-
 .../BACnetEventParameterChangeOfDiscreteValue.go   |    2 +-
 .../BACnetEventParameterChangeOfLifeSavety.go      |    2 +-
 ...ParameterChangeOfLifeSavetyListOfAlarmValues.go |    2 +-
 ...hangeOfLifeSavetyListOfLifeSavetyAlarmValues.go |    2 +-
 .../model/BACnetEventParameterChangeOfState.go     |    2 +-
 ...ACnetEventParameterChangeOfStateListOfValues.go |    2 +-
 .../BACnetEventParameterChangeOfStatusFlags.go     |    2 +-
 .../model/BACnetEventParameterChangeOfTimer.go     |    2 +-
 .../BACnetEventParameterChangeOfTimerAlarmValue.go |    2 +-
 .../model/BACnetEventParameterChangeOfValue.go     |    2 +-
 ...ventParameterChangeOfValueCivCriteriaBitmask.go |    2 +-
 ...fValueCivCriteriaReferencedPropertyIncrement.go |    2 +-
 .../model/BACnetEventParameterCommandFailure.go    |    2 +-
 .../model/BACnetEventParameterDoubleOutOfRange.go  |    2 +-
 .../model/BACnetEventParameterExtended.go          |    2 +-
 .../BACnetEventParameterExtendedParameters.go      |    2 +-
 .../model/BACnetEventParameterFloatingLimit.go     |    2 +-
 .../readwrite/model/BACnetEventParameterNone.go    |    2 +-
 .../model/BACnetEventParameterOutOfRange.go        |    2 +-
 .../model/BACnetEventParameterSignedOutOfRange.go  |    2 +-
 .../BACnetEventParameterUnsignedOutOfRange.go      |    2 +-
 .../model/BACnetEventParameterUnsignedRange.go     |    2 +-
 .../readwrite/model/BACnetEventPriorities.go       |    2 +-
 .../readwrite/model/BACnetEventStateTagged.go      |    2 +-
 .../readwrite/model/BACnetEventSummariesList.go    |    2 +-
 .../bacnetip/readwrite/model/BACnetEventSummary.go |    2 +-
 .../readwrite/model/BACnetEventTimestamps.go       |    2 +-
 .../model/BACnetEventTimestampsEnclosed.go         |    2 +-
 .../model/BACnetEventTransitionBitsTagged.go       |    2 +-
 .../readwrite/model/BACnetEventTypeTagged.go       |    2 +-
 .../BACnetFaultParameterFaultCharacterString.go    |    2 +-
 ...rameterFaultCharacterStringListOfFaultValues.go |    2 +-
 .../model/BACnetFaultParameterFaultExtended.go     |    2 +-
 .../BACnetFaultParameterFaultExtendedParameters.go |    2 +-
 ...rameterFaultExtendedParametersEntryBitString.go |    2 +-
 ...ParameterFaultExtendedParametersEntryBoolean.go |    2 +-
 ...rFaultExtendedParametersEntryCharacterString.go |    2 +-
 ...ultParameterFaultExtendedParametersEntryDate.go |    2 +-
 ...tParameterFaultExtendedParametersEntryDouble.go |    2 +-
 ...ameterFaultExtendedParametersEntryEnumerated.go |    2 +-
 ...ParameterFaultExtendedParametersEntryInteger.go |    2 +-
 ...ultParameterFaultExtendedParametersEntryNull.go |    2 +-
 ...FaultExtendedParametersEntryObjectidentifier.go |    2 +-
 ...meterFaultExtendedParametersEntryOctetString.go |    2 +-
 ...ultParameterFaultExtendedParametersEntryReal.go |    2 +-
 ...rameterFaultExtendedParametersEntryReference.go |    2 +-
 ...ultParameterFaultExtendedParametersEntryTime.go |    2 +-
 ...arameterFaultExtendedParametersEntryUnsigned.go |    2 +-
 .../model/BACnetFaultParameterFaultLifeSafety.go   |    2 +-
 ...ultParameterFaultLifeSafetyListOfFaultValues.go |    2 +-
 .../model/BACnetFaultParameterFaultListed.go       |    2 +-
 .../model/BACnetFaultParameterFaultOutOfRange.go   |    2 +-
 ...ParameterFaultOutOfRangeMaxNormalValueDouble.go |    2 +-
 ...arameterFaultOutOfRangeMaxNormalValueInteger.go |    2 +-
 ...ltParameterFaultOutOfRangeMaxNormalValueReal.go |    2 +-
 ...rameterFaultOutOfRangeMaxNormalValueUnsigned.go |    2 +-
 ...ParameterFaultOutOfRangeMinNormalValueDouble.go |    2 +-
 ...arameterFaultOutOfRangeMinNormalValueInteger.go |    2 +-
 ...ltParameterFaultOutOfRangeMinNormalValueReal.go |    2 +-
 ...rameterFaultOutOfRangeMinNormalValueUnsigned.go |    2 +-
 .../model/BACnetFaultParameterFaultState.go        |    2 +-
 ...netFaultParameterFaultStateListOfFaultValues.go |    2 +-
 .../model/BACnetFaultParameterFaultStatusFlags.go  |    2 +-
 .../readwrite/model/BACnetFaultParameterNone.go    |    2 +-
 .../readwrite/model/BACnetFaultTypeTagged.go       |    2 +-
 .../model/BACnetFileAccessMethodTagged.go          |    2 +-
 .../readwrite/model/BACnetGroupChannelValue.go     |    2 +-
 .../readwrite/model/BACnetGroupChannelValueList.go |    2 +-
 .../readwrite/model/BACnetHostAddressEnclosed.go   |    2 +-
 .../readwrite/model/BACnetHostAddressIpAddress.go  |    2 +-
 .../readwrite/model/BACnetHostAddressName.go       |    2 +-
 .../readwrite/model/BACnetHostAddressNull.go       |    2 +-
 .../bacnetip/readwrite/model/BACnetHostNPort.go    |    2 +-
 .../readwrite/model/BACnetHostNPortEnclosed.go     |    2 +-
 .../bacnetip/readwrite/model/BACnetIPModeTagged.go |    2 +-
 .../readwrite/model/BACnetKeyIdentifier.go         |    2 +-
 .../readwrite/model/BACnetLandingCallStatus.go     |    2 +-
 .../BACnetLandingCallStatusCommandDestination.go   |    2 +-
 .../BACnetLandingCallStatusCommandDirection.go     |    2 +-
 .../readwrite/model/BACnetLandingDoorStatus.go     |    2 +-
 .../BACnetLandingDoorStatusLandingDoorsList.go     |    2 +-
 ...BACnetLandingDoorStatusLandingDoorsListEntry.go |    2 +-
 .../readwrite/model/BACnetLifeSafetyModeTagged.go  |    2 +-
 .../model/BACnetLifeSafetyOperationTagged.go       |    2 +-
 .../readwrite/model/BACnetLifeSafetyStateTagged.go |    2 +-
 .../readwrite/model/BACnetLiftCarCallList.go       |    2 +-
 .../model/BACnetLiftCarCallListFloorList.go        |    2 +-
 .../model/BACnetLiftCarDirectionTagged.go          |    2 +-
 .../model/BACnetLiftCarDoorCommandTagged.go        |    2 +-
 .../model/BACnetLiftCarDriveStatusTagged.go        |    2 +-
 .../readwrite/model/BACnetLiftCarModeTagged.go     |    2 +-
 .../readwrite/model/BACnetLiftFaultTagged.go       |    2 +-
 .../readwrite/model/BACnetLiftGroupModeTagged.go   |    2 +-
 .../readwrite/model/BACnetLightingCommand.go       |    2 +-
 .../model/BACnetLightingCommandEnclosed.go         |    2 +-
 .../model/BACnetLightingInProgressTagged.go        |    2 +-
 .../model/BACnetLightingOperationTagged.go         |    2 +-
 .../model/BACnetLightingTransitionTagged.go        |    2 +-
 .../readwrite/model/BACnetLimitEnableTagged.go     |    2 +-
 .../readwrite/model/BACnetLockStatusTagged.go      |    2 +-
 .../readwrite/model/BACnetLogDataLogData.go        |    2 +-
 .../model/BACnetLogDataLogDataEntryAnyValue.go     |    2 +-
 .../BACnetLogDataLogDataEntryBitStringValue.go     |    2 +-
 .../model/BACnetLogDataLogDataEntryBooleanValue.go |    2 +-
 .../BACnetLogDataLogDataEntryEnumeratedValue.go    |    2 +-
 .../model/BACnetLogDataLogDataEntryFailure.go      |    2 +-
 .../model/BACnetLogDataLogDataEntryIntegerValue.go |    2 +-
 .../model/BACnetLogDataLogDataEntryNullValue.go    |    2 +-
 .../model/BACnetLogDataLogDataEntryRealValue.go    |    2 +-
 .../BACnetLogDataLogDataEntryUnsignedValue.go      |    2 +-
 .../model/BACnetLogDataLogDataTimeChange.go        |    2 +-
 .../readwrite/model/BACnetLogDataLogStatus.go      |    2 +-
 .../readwrite/model/BACnetLogMultipleRecord.go     |    2 +-
 .../bacnetip/readwrite/model/BACnetLogRecord.go    |    2 +-
 .../model/BACnetLogRecordLogDatumAnyValue.go       |    2 +-
 .../model/BACnetLogRecordLogDatumBitStringValue.go |    2 +-
 .../model/BACnetLogRecordLogDatumBooleanValue.go   |    2 +-
 .../BACnetLogRecordLogDatumEnumeratedValue.go      |    2 +-
 .../model/BACnetLogRecordLogDatumFailure.go        |    2 +-
 .../model/BACnetLogRecordLogDatumIntegerValue.go   |    2 +-
 .../model/BACnetLogRecordLogDatumLogStatus.go      |    2 +-
 .../model/BACnetLogRecordLogDatumNullValue.go      |    2 +-
 .../model/BACnetLogRecordLogDatumRealValue.go      |    2 +-
 .../model/BACnetLogRecordLogDatumTimeChange.go     |    2 +-
 .../model/BACnetLogRecordLogDatumUnsignedValue.go  |    2 +-
 .../readwrite/model/BACnetLogStatusTagged.go       |    2 +-
 .../readwrite/model/BACnetLoggingTypeTagged.go     |    2 +-
 .../readwrite/model/BACnetMaintenanceTagged.go     |    2 +-
 .../bacnetip/readwrite/model/BACnetNameValue.go    |    2 +-
 .../readwrite/model/BACnetNameValueCollection.go   |    2 +-
 .../model/BACnetNetworkNumberQualityTagged.go      |    2 +-
 .../model/BACnetNetworkPortCommandTagged.go        |    2 +-
 .../readwrite/model/BACnetNetworkSecurityPolicy.go |    2 +-
 .../readwrite/model/BACnetNetworkTypeTagged.go     |    2 +-
 .../readwrite/model/BACnetNodeTypeTagged.go        |    2 +-
 .../BACnetNotificationParametersAccessEvent.go     |    2 +-
 .../BACnetNotificationParametersBufferReady.go     |    2 +-
 ...ACnetNotificationParametersChangeOfBitString.go |    2 +-
 ...otificationParametersChangeOfCharacterString.go |    2 +-
 ...tNotificationParametersChangeOfDiscreteValue.go |    2 +-
 ...rametersChangeOfDiscreteValueNewValueBoolean.go |    2 +-
 ...ChangeOfDiscreteValueNewValueCharacterString.go |    2 +-
 ...ametersChangeOfDiscreteValueNewValueDatetime.go |    2 +-
 ...etersChangeOfDiscreteValueNewValueEnumerated.go |    2 +-
 ...rametersChangeOfDiscreteValueNewValueInteger.go |    2 +-
 ...hangeOfDiscreteValueNewValueObjectidentifier.go |    2 +-
 ...metersChangeOfDiscreteValueNewValueOctetDate.go |    2 +-
 ...tersChangeOfDiscreteValueNewValueOctetString.go |    2 +-
 ...metersChangeOfDiscreteValueNewValueOctetTime.go |    2 +-
 ...ametersChangeOfDiscreteValueNewValueUnsigned.go |    2 +-
 ...CnetNotificationParametersChangeOfLifeSafety.go |    2 +-
 ...netNotificationParametersChangeOfReliability.go |    2 +-
 .../BACnetNotificationParametersChangeOfState.go   |    2 +-
 ...netNotificationParametersChangeOfStatusFlags.go |    2 +-
 .../BACnetNotificationParametersChangeOfTimer.go   |    2 +-
 .../BACnetNotificationParametersChangeOfValue.go   |    2 +-
 ...onParametersChangeOfValueNewValueChangedBits.go |    2 +-
 ...nParametersChangeOfValueNewValueChangedValue.go |    2 +-
 .../BACnetNotificationParametersCommandFailure.go  |    2 +-
 ...BACnetNotificationParametersComplexEventType.go |    2 +-
 ...BACnetNotificationParametersDoubleOutOfRange.go |    2 +-
 .../model/BACnetNotificationParametersExtended.go  |    2 +-
 ...CnetNotificationParametersExtendedParameters.go |    2 +-
 .../BACnetNotificationParametersFloatingLimit.go   |    2 +-
 .../BACnetNotificationParametersOutOfRange.go      |    2 +-
 ...BACnetNotificationParametersSignedOutOfRange.go |    2 +-
 ...CnetNotificationParametersUnsignedOutOfRange.go |    2 +-
 .../BACnetNotificationParametersUnsignedRange.go   |    2 +-
 .../readwrite/model/BACnetNotifyTypeTagged.go      |    2 +-
 .../model/BACnetObjectPropertyReference.go         |    2 +-
 .../model/BACnetObjectPropertyReferenceEnclosed.go |    2 +-
 .../readwrite/model/BACnetObjectTypeTagged.go      |    2 +-
 .../model/BACnetObjectTypesSupportedTagged.go      |    2 +-
 .../bacnetip/readwrite/model/BACnetOpeningTag.go   |    2 +-
 .../readwrite/model/BACnetOptionalBinaryPVNull.go  |    2 +-
 .../readwrite/model/BACnetOptionalBinaryPVValue.go |    2 +-
 .../model/BACnetOptionalCharacterStringNull.go     |    2 +-
 .../model/BACnetOptionalCharacterStringValue.go    |    2 +-
 .../readwrite/model/BACnetOptionalREALNull.go      |    2 +-
 .../readwrite/model/BACnetOptionalREALValue.go     |    2 +-
 .../readwrite/model/BACnetOptionalUnsignedNull.go  |    2 +-
 .../readwrite/model/BACnetOptionalUnsignedValue.go |    2 +-
 .../readwrite/model/BACnetPolarityTagged.go        |    2 +-
 .../readwrite/model/BACnetPortPermission.go        |    2 +-
 .../bacnetip/readwrite/model/BACnetPrescale.go     |    2 +-
 .../readwrite/model/BACnetPriorityArray.go         |    2 +-
 .../model/BACnetPriorityValueBitString.go          |    2 +-
 .../readwrite/model/BACnetPriorityValueBoolean.go  |    2 +-
 .../model/BACnetPriorityValueCharacterString.go    |    2 +-
 .../model/BACnetPriorityValueConstructedValue.go   |    2 +-
 .../readwrite/model/BACnetPriorityValueDate.go     |    2 +-
 .../readwrite/model/BACnetPriorityValueDateTime.go |    2 +-
 .../readwrite/model/BACnetPriorityValueDouble.go   |    2 +-
 .../model/BACnetPriorityValueEnumerated.go         |    2 +-
 .../readwrite/model/BACnetPriorityValueInteger.go  |    2 +-
 .../readwrite/model/BACnetPriorityValueNull.go     |    2 +-
 .../model/BACnetPriorityValueObjectidentifier.go   |    2 +-
 .../model/BACnetPriorityValueOctetString.go        |    2 +-
 .../readwrite/model/BACnetPriorityValueReal.go     |    2 +-
 .../readwrite/model/BACnetPriorityValueTime.go     |    2 +-
 .../readwrite/model/BACnetPriorityValueUnsigned.go |    2 +-
 .../model/BACnetProcessIdSelectionNull.go          |    2 +-
 .../model/BACnetProcessIdSelectionValue.go         |    2 +-
 .../readwrite/model/BACnetProgramErrorTagged.go    |    2 +-
 .../readwrite/model/BACnetProgramRequestTagged.go  |    2 +-
 .../readwrite/model/BACnetProgramStateTagged.go    |    2 +-
 .../readwrite/model/BACnetPropertyAccessResult.go  |    2 +-
 ...yAccessResultAccessResultPropertyAccessError.go |    2 +-
 ...ropertyAccessResultAccessResultPropertyValue.go |    2 +-
 .../model/BACnetPropertyIdentifierTagged.go        |    2 +-
 .../readwrite/model/BACnetPropertyReference.go     |    2 +-
 .../model/BACnetPropertyReferenceEnclosed.go       |    2 +-
 .../model/BACnetPropertyStateActionUnknown.go      |    2 +-
 .../BACnetPropertyStatesAccessCredentialDisable.go |    2 +-
 ...tPropertyStatesAccessCredentialDisableReason.go |    2 +-
 .../model/BACnetPropertyStatesAccessEvent.go       |    2 +-
 .../readwrite/model/BACnetPropertyStatesAction.go  |    2 +-
 .../BACnetPropertyStatesAuthenticationStatus.go    |    2 +-
 .../model/BACnetPropertyStatesBackupState.go       |    2 +-
 .../model/BACnetPropertyStatesBacnetIpMode.go      |    2 +-
 .../BACnetPropertyStatesBinaryLightningValue.go    |    2 +-
 .../model/BACnetPropertyStatesBinaryValue.go       |    2 +-
 .../readwrite/model/BACnetPropertyStatesBoolean.go |    2 +-
 .../model/BACnetPropertyStatesDoorAlarmState.go    |    2 +-
 .../model/BACnetPropertyStatesDoorSecuredStatus.go |    2 +-
 .../model/BACnetPropertyStatesDoorStatus.go        |    2 +-
 .../model/BACnetPropertyStatesDoorValue.go         |    2 +-
 .../model/BACnetPropertyStatesEnclosed.go          |    2 +-
 .../model/BACnetPropertyStatesEscalatorFault.go    |    2 +-
 .../model/BACnetPropertyStatesEscalatorMode.go     |    2 +-
 ...netPropertyStatesEscalatorOperationDirection.go |    2 +-
 .../model/BACnetPropertyStatesEventType.go         |    2 +-
 .../model/BACnetPropertyStatesExtendedValue.go     |    2 +-
 .../model/BACnetPropertyStatesFileAccessMethod.go  |    2 +-
 .../model/BACnetPropertyStatesIntegerValue.go      |    2 +-
 .../model/BACnetPropertyStatesLifeSafetyMode.go    |    2 +-
 .../BACnetPropertyStatesLifeSafetyOperations.go    |    2 +-
 .../model/BACnetPropertyStatesLifeSafetyState.go   |    2 +-
 .../model/BACnetPropertyStatesLiftCarDirection.go  |    2 +-
 .../BACnetPropertyStatesLiftCarDoorCommand.go      |    2 +-
 .../BACnetPropertyStatesLiftCarDriveStatus.go      |    2 +-
 .../model/BACnetPropertyStatesLiftCarMode.go       |    2 +-
 .../model/BACnetPropertyStatesLiftFault.go         |    2 +-
 .../model/BACnetPropertyStatesLiftGroupMode.go     |    2 +-
 .../BACnetPropertyStatesLightningInProgress.go     |    2 +-
 .../BACnetPropertyStatesLightningOperation.go      |    2 +-
 .../BACnetPropertyStatesLightningTransition.go     |    2 +-
 .../model/BACnetPropertyStatesLockStatus.go        |    2 +-
 .../model/BACnetPropertyStatesMaintenance.go       |    2 +-
 .../BACnetPropertyStatesNetworkNumberQuality.go    |    2 +-
 .../BACnetPropertyStatesNetworkPortCommand.go      |    2 +-
 .../model/BACnetPropertyStatesNetworkType.go       |    2 +-
 .../model/BACnetPropertyStatesNodeType.go          |    2 +-
 .../model/BACnetPropertyStatesNotifyType.go        |    2 +-
 .../model/BACnetPropertyStatesPolarity.go          |    2 +-
 .../model/BACnetPropertyStatesProgramChange.go     |    2 +-
 .../model/BACnetPropertyStatesProtocolLevel.go     |    2 +-
 .../model/BACnetPropertyStatesReasonForHalt.go     |    2 +-
 .../model/BACnetPropertyStatesReliability.go       |    2 +-
 .../model/BACnetPropertyStatesRestartReason.go     |    2 +-
 .../model/BACnetPropertyStatesSecurityLevel.go     |    2 +-
 .../model/BACnetPropertyStatesShedState.go         |    2 +-
 .../model/BACnetPropertyStatesSilencedState.go     |    2 +-
 .../readwrite/model/BACnetPropertyStatesState.go   |    2 +-
 .../model/BACnetPropertyStatesSystemStatus.go      |    2 +-
 .../model/BACnetPropertyStatesTimerState.go        |    2 +-
 .../model/BACnetPropertyStatesTimerTransition.go   |    2 +-
 .../readwrite/model/BACnetPropertyStatesUnits.go   |    2 +-
 .../model/BACnetPropertyStatesWriteStatus.go       |    2 +-
 .../model/BACnetPropertyStatesZoneOccupanyState.go |    2 +-
 .../readwrite/model/BACnetPropertyValue.go         |    2 +-
 .../readwrite/model/BACnetPropertyValues.go        |    2 +-
 .../model/BACnetPropertyWriteDefinition.go         |    2 +-
 .../readwrite/model/BACnetProtocolLevelTagged.go   |    2 +-
 .../readwrite/model/BACnetReadAccessProperty.go    |    2 +-
 .../model/BACnetReadAccessPropertyReadResult.go    |    2 +-
 .../readwrite/model/BACnetReadAccessResult.go      |    2 +-
 .../model/BACnetReadAccessResultListOfResults.go   |    2 +-
 .../model/BACnetReadAccessSpecification.go         |    2 +-
 .../readwrite/model/BACnetRecipientAddress.go      |    2 +-
 .../readwrite/model/BACnetRecipientDevice.go       |    2 +-
 .../readwrite/model/BACnetRecipientEnclosed.go     |    2 +-
 .../readwrite/model/BACnetRecipientProcess.go      |    2 +-
 .../model/BACnetRecipientProcessEnclosed.go        |    2 +-
 .../readwrite/model/BACnetRejectReasonTagged.go    |    2 +-
 .../readwrite/model/BACnetRelationshipTagged.go    |    2 +-
 .../readwrite/model/BACnetReliabilityTagged.go     |    2 +-
 .../readwrite/model/BACnetRestartReasonTagged.go   |    2 +-
 .../readwrite/model/BACnetResultFlagsTagged.go     |    2 +-
 .../bacnetip/readwrite/model/BACnetRouterEntry.go  |    2 +-
 .../model/BACnetRouterEntryStatusTagged.go         |    2 +-
 .../readwrite/model/BACnetScaleFloatScale.go       |    2 +-
 .../readwrite/model/BACnetScaleIntegerScale.go     |    2 +-
 .../readwrite/model/BACnetSecurityKeySet.go        |    2 +-
 .../readwrite/model/BACnetSecurityKeySetKeyIds.go  |    2 +-
 .../readwrite/model/BACnetSecurityLevelTagged.go   |    2 +-
 .../readwrite/model/BACnetSecurityPolicyTagged.go  |    2 +-
 .../readwrite/model/BACnetSegmentationTagged.go    |    2 +-
 .../model/BACnetServiceAckAtomicReadFile.go        |    2 +-
 .../model/BACnetServiceAckAtomicReadFileRecord.go  |    2 +-
 .../model/BACnetServiceAckAtomicReadFileStream.go  |    2 +-
 .../model/BACnetServiceAckAtomicWriteFile.go       |    2 +-
 .../model/BACnetServiceAckAuthenticate.go          |    2 +-
 .../BACnetServiceAckConfirmedPrivateTransfer.go    |    2 +-
 .../model/BACnetServiceAckCreateObject.go          |    2 +-
 .../model/BACnetServiceAckGetAlarmSummary.go       |    2 +-
 .../model/BACnetServiceAckGetEnrollmentSummary.go  |    2 +-
 .../model/BACnetServiceAckGetEventInformation.go   |    2 +-
 .../model/BACnetServiceAckReadProperty.go          |    2 +-
 .../BACnetServiceAckReadPropertyConditional.go     |    2 +-
 .../model/BACnetServiceAckReadPropertyMultiple.go  |    2 +-
 .../readwrite/model/BACnetServiceAckReadRange.go   |    2 +-
 .../readwrite/model/BACnetServiceAckRequestKey.go  |    2 +-
 .../readwrite/model/BACnetServiceAckVTData.go      |    2 +-
 .../readwrite/model/BACnetServiceAckVTOpen.go      |    2 +-
 .../model/BACnetServicesSupportedTagged.go         |    2 +-
 .../readwrite/model/BACnetSetpointReference.go     |    2 +-
 .../readwrite/model/BACnetShedLevelAmount.go       |    2 +-
 .../readwrite/model/BACnetShedLevelLevel.go        |    2 +-
 .../readwrite/model/BACnetShedLevelPercent.go      |    2 +-
 .../readwrite/model/BACnetShedStateTagged.go       |    2 +-
 .../readwrite/model/BACnetSilencedStateTagged.go   |    2 +-
 .../bacnetip/readwrite/model/BACnetSpecialEvent.go |    2 +-
 .../model/BACnetSpecialEventListOfTimeValues.go    |    2 +-
 .../model/BACnetSpecialEventPeriodCalendarEntry.go |    2 +-
 .../BACnetSpecialEventPeriodCalendarReference.go   |    2 +-
 .../readwrite/model/BACnetStatusFlagsTagged.go     |    2 +-
 .../bacnetip/readwrite/model/BACnetTagHeader.go    |    2 +-
 .../readwrite/model/BACnetTagPayloadBitString.go   |    2 +-
 .../readwrite/model/BACnetTagPayloadBoolean.go     |    2 +-
 .../model/BACnetTagPayloadCharacterString.go       |    2 +-
 .../readwrite/model/BACnetTagPayloadDate.go        |    2 +-
 .../readwrite/model/BACnetTagPayloadDouble.go      |    2 +-
 .../readwrite/model/BACnetTagPayloadEnumerated.go  |    2 +-
 .../model/BACnetTagPayloadObjectIdentifier.go      |    2 +-
 .../readwrite/model/BACnetTagPayloadOctetString.go |    2 +-
 .../readwrite/model/BACnetTagPayloadReal.go        |    2 +-
 .../model/BACnetTagPayloadSignedInteger.go         |    2 +-
 .../readwrite/model/BACnetTagPayloadTime.go        |    2 +-
 .../model/BACnetTagPayloadUnsignedInteger.go       |    2 +-
 .../readwrite/model/BACnetTimeStampDateTime.go     |    2 +-
 .../readwrite/model/BACnetTimeStampEnclosed.go     |    2 +-
 .../readwrite/model/BACnetTimeStampSequence.go     |    2 +-
 .../readwrite/model/BACnetTimeStampTime.go         |    2 +-
 .../readwrite/model/BACnetTimeStampsEnclosed.go    |    2 +-
 .../bacnetip/readwrite/model/BACnetTimeValue.go    |    2 +-
 .../model/BACnetTimerStateChangeValueBitString.go  |    2 +-
 .../model/BACnetTimerStateChangeValueBoolean.go    |    2 +-
 .../BACnetTimerStateChangeValueCharacterString.go  |    2 +-
 .../BACnetTimerStateChangeValueConstructedValue.go |    2 +-
 .../model/BACnetTimerStateChangeValueDate.go       |    2 +-
 .../model/BACnetTimerStateChangeValueDateTime.go   |    2 +-
 .../model/BACnetTimerStateChangeValueDouble.go     |    2 +-
 .../model/BACnetTimerStateChangeValueEnumerated.go |    2 +-
 .../model/BACnetTimerStateChangeValueInteger.go    |    2 +-
 .../BACnetTimerStateChangeValueLightingCommand.go  |    2 +-
 .../model/BACnetTimerStateChangeValueNoValue.go    |    2 +-
 .../model/BACnetTimerStateChangeValueNull.go       |    2 +-
 .../BACnetTimerStateChangeValueObjectidentifier.go |    2 +-
 .../BACnetTimerStateChangeValueOctetString.go      |    2 +-
 .../model/BACnetTimerStateChangeValueReal.go       |    2 +-
 .../model/BACnetTimerStateChangeValueTime.go       |    2 +-
 .../model/BACnetTimerStateChangeValueUnsigned.go   |    2 +-
 .../readwrite/model/BACnetTimerStateTagged.go      |    2 +-
 .../readwrite/model/BACnetTimerTransitionTagged.go |    2 +-
 .../model/BACnetUnconfirmedServiceChoiceTagged.go  |    2 +-
 .../model/BACnetUnconfirmedServiceRequestIAm.go    |    2 +-
 .../model/BACnetUnconfirmedServiceRequestIHave.go  |    2 +-
 ...UnconfirmedServiceRequestTimeSynchronization.go |    2 +-
 ...onfirmedServiceRequestUTCTimeSynchronization.go |    2 +-
 ...rmedServiceRequestUnconfirmedCOVNotification.go |    2 +-
 ...iceRequestUnconfirmedCOVNotificationMultiple.go |    2 +-
 ...edServiceRequestUnconfirmedEventNotification.go |    2 +-
 ...rmedServiceRequestUnconfirmedPrivateTransfer.go |    2 +-
 ...onfirmedServiceRequestUnconfirmedTextMessage.go |    2 +-
 .../BACnetUnconfirmedServiceRequestUnknown.go      |    2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoHas.go |    2 +-
 ...onfirmedServiceRequestWhoHasObjectIdentifier.go |    2 +-
 ...netUnconfirmedServiceRequestWhoHasObjectName.go |    2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoIs.go  |    2 +-
 .../BACnetUnconfirmedServiceRequestWriteGroup.go   |    2 +-
 .../bacnetip/readwrite/model/BACnetVMACEntry.go    |    2 +-
 .../readwrite/model/BACnetVTClassTagged.go         |    2 +-
 .../bacnetip/readwrite/model/BACnetVTSession.go    |    2 +-
 .../readwrite/model/BACnetValueSourceAddress.go    |    2 +-
 .../readwrite/model/BACnetValueSourceNone.go       |    2 +-
 .../readwrite/model/BACnetValueSourceObject.go     |    2 +-
 .../readwrite/model/BACnetVendorIdTagged.go        |    2 +-
 .../bacnetip/readwrite/model/BACnetWeekNDay.go     |    2 +-
 .../readwrite/model/BACnetWeekNDayTagged.go        |    2 +-
 .../model/BACnetWriteAccessSpecification.go        |    2 +-
 .../readwrite/model/BACnetWriteStatusTagged.go     |    2 +-
 .../model/BVLCBroadcastDistributionTableEntry.go   |    2 +-
 .../model/BVLCDeleteForeignDeviceTableEntry.go     |    2 +-
 .../model/BVLCDistributeBroadcastToNetwork.go      |    2 +-
 .../readwrite/model/BVLCForeignDeviceTableEntry.go |    2 +-
 .../bacnetip/readwrite/model/BVLCForwardedNPDU.go  |    2 +-
 .../readwrite/model/BVLCOriginalBroadcastNPDU.go   |    2 +-
 .../readwrite/model/BVLCOriginalUnicastNPDU.go     |    2 +-
 .../model/BVLCReadBroadcastDistributionTable.go    |    2 +-
 .../model/BVLCReadBroadcastDistributionTableAck.go |    2 +-
 .../readwrite/model/BVLCReadForeignDeviceTable.go  |    2 +-
 .../model/BVLCReadForeignDeviceTableAck.go         |    2 +-
 .../readwrite/model/BVLCRegisterForeignDevice.go   |    2 +-
 .../bacnetip/readwrite/model/BVLCResult.go         |    2 +-
 .../readwrite/model/BVLCResultCodeTagged.go        |    2 +-
 .../bacnetip/readwrite/model/BVLCSecureBVLL.go     |    2 +-
 .../model/BVLCWriteBroadcastDistributionTable.go   |    2 +-
 .../bacnetip/readwrite/model/ChangeListAddError.go |    2 +-
 .../readwrite/model/ChangeListRemoveError.go       |    2 +-
 .../model/ConfirmedEventNotificationRequest.go     |    2 +-
 .../model/ConfirmedPrivateTransferError.go         |    2 +-
 .../bacnetip/readwrite/model/CreateObjectError.go  |    2 +-
 plc4go/protocols/bacnetip/readwrite/model/Error.go |    2 +-
 .../bacnetip/readwrite/model/ErrorClassTagged.go   |    2 +-
 .../bacnetip/readwrite/model/ErrorCodeTagged.go    |    2 +-
 .../bacnetip/readwrite/model/ErrorEnclosed.go      |    2 +-
 .../readwrite/model/ListOfCovNotifications.go      |    2 +-
 .../readwrite/model/ListOfCovNotificationsList.go  |    2 +-
 .../readwrite/model/ListOfCovNotificationsValue.go |    2 +-
 .../readwrite/model/MaxApduLengthAcceptedTagged.go |    2 +-
 .../readwrite/model/MaxSegmentsAcceptedTagged.go   |    2 +-
 .../model/NLMDisconnectConnectionToNetwork.go      |    2 +-
 .../model/NLMEstablishConnectionToNetwork.go       |    2 +-
 .../readwrite/model/NLMIAmRouterToNetwork.go       |    2 +-
 .../readwrite/model/NLMICouldBeRouterToNetwork.go  |    2 +-
 .../readwrite/model/NLMInitalizeRoutingTable.go    |    2 +-
 .../readwrite/model/NLMInitalizeRoutingTableAck.go |    2 +-
 .../model/NLMInitalizeRoutingTablePortMapping.go   |    2 +-
 .../readwrite/model/NLMRejectRouterToNetwork.go    |    2 +-
 .../readwrite/model/NLMRouterAvailableToNetwork.go |    2 +-
 .../readwrite/model/NLMRouterBusyToNetwork.go      |    2 +-
 .../readwrite/model/NLMWhoIsRouterToNetwork.go     |    2 +-
 plc4go/protocols/bacnetip/readwrite/model/NPDU.go  |    2 +-
 .../bacnetip/readwrite/model/NPDUControl.go        |    2 +-
 .../readwrite/model/NPDUNetworkPriorityTagged.go   |    2 +-
 .../model/SubscribeCOVPropertyMultipleError.go     |    2 +-
 ...PropertyMultipleErrorFirstFailedSubscription.go |    2 +-
 .../bacnetip/readwrite/model/VTCloseError.go       |    2 +-
 .../VTCloseErrorListOfVTSessionIdentifiers.go      |    2 +-
 .../readwrite/model/WritePropertyMultipleError.go  |    2 +-
 .../model/AccessControlDataAccessPointClosed.go    |    2 +-
 .../AccessControlDataAccessPointForcedOpen.go      |    2 +-
 .../model/AccessControlDataAccessPointLeftOpen.go  |    2 +-
 .../model/AccessControlDataCloseAccessPoint.go     |    2 +-
 .../model/AccessControlDataInvalidAccessRequest.go |    2 +-
 .../model/AccessControlDataLockAccessPoint.go      |    2 +-
 .../model/AccessControlDataRequestToExit.go        |    2 +-
 .../model/AccessControlDataValidAccessRequest.go   |    2 +-
 .../AirConditioningDataHumidityScheduleEntry.go    |    2 +-
 .../model/AirConditioningDataHvacScheduleEntry.go  |    2 +-
 .../readwrite/model/AirConditioningDataRefresh.go  |    2 +-
 ...irConditioningDataSetHumidityLowerGuardLimit.go |    2 +-
 .../AirConditioningDataSetHumiditySetbackLimit.go  |    2 +-
 ...irConditioningDataSetHumidityUpperGuardLimit.go |    2 +-
 .../AirConditioningDataSetHvacLowerGuardLimit.go   |    2 +-
 .../AirConditioningDataSetHvacSetbackLimit.go      |    2 +-
 .../AirConditioningDataSetHvacUpperGuardLimit.go   |    2 +-
 .../AirConditioningDataSetPlantHumidityLevel.go    |    2 +-
 .../model/AirConditioningDataSetPlantHvacLevel.go  |    2 +-
 .../model/AirConditioningDataSetZoneGroupOff.go    |    2 +-
 .../model/AirConditioningDataSetZoneGroupOn.go     |    2 +-
 .../AirConditioningDataSetZoneHumidityMode.go      |    2 +-
 .../model/AirConditioningDataSetZoneHvacMode.go    |    2 +-
 .../model/AirConditioningDataZoneHumidity.go       |    2 +-
 .../AirConditioningDataZoneHumidityPlantStatus.go  |    2 +-
 .../AirConditioningDataZoneHvacPlantStatus.go      |    2 +-
 .../model/AirConditioningDataZoneTemperature.go    |    2 +-
 plc4go/protocols/cbus/readwrite/model/Alpha.go     |    2 +-
 .../cbus/readwrite/model/ApplicationAddress1.go    |    2 +-
 .../cbus/readwrite/model/ApplicationAddress2.go    |    2 +-
 .../cbus/readwrite/model/BridgeAddress.go          |    2 +-
 .../cbus/readwrite/model/CALDataAcknowledge.go     |    2 +-
 .../cbus/readwrite/model/CALDataGetStatus.go       |    2 +-
 .../cbus/readwrite/model/CALDataIdentify.go        |    2 +-
 .../cbus/readwrite/model/CALDataIdentifyReply.go   |    2 +-
 .../cbus/readwrite/model/CALDataRecall.go          |    2 +-
 .../protocols/cbus/readwrite/model/CALDataReply.go |    2 +-
 .../protocols/cbus/readwrite/model/CALDataReset.go |    2 +-
 .../cbus/readwrite/model/CALDataStatus.go          |    2 +-
 .../cbus/readwrite/model/CALDataStatusExtended.go  |    2 +-
 .../protocols/cbus/readwrite/model/CALDataWrite.go |    2 +-
 .../protocols/cbus/readwrite/model/CALReplyLong.go |    2 +-
 .../cbus/readwrite/model/CALReplyShort.go          |    2 +-
 .../readwrite/model/CBusCommandDeviceManagement.go |    2 +-
 .../model/CBusCommandPointToMultiPoint.go          |    2 +-
 .../readwrite/model/CBusCommandPointToPoint.go     |    2 +-
 .../model/CBusCommandPointToPointToMultiPoint.go   |    2 +-
 .../cbus/readwrite/model/CBusConstants.go          |    2 +-
 .../protocols/cbus/readwrite/model/CBusHeader.go   |    2 +-
 .../cbus/readwrite/model/CBusMessageToClient.go    |    2 +-
 .../cbus/readwrite/model/CBusMessageToServer.go    |    2 +-
 .../protocols/cbus/readwrite/model/CBusOptions.go  |    2 +-
 .../model/CBusPointToMultiPointCommandNormal.go    |    2 +-
 .../model/CBusPointToMultiPointCommandStatus.go    |    2 +-
 .../model/CBusPointToPointCommandDirect.go         |    2 +-
 .../model/CBusPointToPointCommandIndirect.go       |    2 +-
 .../CBusPointToPointToMultiPointCommandNormal.go   |    2 +-
 .../CBusPointToPointToMultiPointCommandStatus.go   |    2 +-
 plc4go/protocols/cbus/readwrite/model/Checksum.go  |    2 +-
 .../model/ClockAndTimekeepingDataRequestRefresh.go |    2 +-
 .../model/ClockAndTimekeepingDataUpdateDate.go     |    2 +-
 .../model/ClockAndTimekeepingDataUpdateTime.go     |    2 +-
 .../protocols/cbus/readwrite/model/Confirmation.go |    2 +-
 .../cbus/readwrite/model/CustomManufacturer.go     |    2 +-
 .../protocols/cbus/readwrite/model/CustomTypes.go  |    2 +-
 .../cbus/readwrite/model/EnableControlData.go      |    2 +-
 .../cbus/readwrite/model/EncodedReplyCALReply.go   |    2 +-
 .../readwrite/model/ErrorReportingDataGeneric.go   |    2 +-
 .../model/ErrorReportingSystemCategory.go          |    2 +-
 ...gSystemCategoryTypeBuildingManagementSystems.go |    2 +-
 ...eportingSystemCategoryTypeClimateControllers.go |    2 +-
 .../ErrorReportingSystemCategoryTypeInputUnits.go  |    2 +-
 .../ErrorReportingSystemCategoryTypeOutputUnits.go |    2 +-
 .../ErrorReportingSystemCategoryTypeReserved.go    |    2 +-
 ...ErrorReportingSystemCategoryTypeSupportUnits.go |    2 +-
 .../cbus/readwrite/model/HVACAuxiliaryLevel.go     |    2 +-
 .../protocols/cbus/readwrite/model/HVACHumidity.go |    2 +-
 .../readwrite/model/HVACHumidityModeAndFlags.go    |    2 +-
 .../readwrite/model/HVACHumidityStatusFlags.go     |    2 +-
 .../cbus/readwrite/model/HVACModeAndFlags.go       |    2 +-
 .../cbus/readwrite/model/HVACRawLevels.go          |    2 +-
 .../cbus/readwrite/model/HVACStartTime.go          |    2 +-
 .../cbus/readwrite/model/HVACStatusFlags.go        |    2 +-
 .../cbus/readwrite/model/HVACTemperature.go        |    2 +-
 .../protocols/cbus/readwrite/model/HVACZoneList.go |    2 +-
 .../IdentifyReplyCommandCurrentSenseLevels.go      |    2 +-
 .../model/IdentifyReplyCommandDSIStatus.go         |    2 +-
 .../readwrite/model/IdentifyReplyCommandDelays.go  |    2 +-
 ...dentifyReplyCommandExtendedDiagnosticSummary.go |    2 +-
 .../model/IdentifyReplyCommandFirmwareVersion.go   |    2 +-
 .../IdentifyReplyCommandGAVPhysicalAddresses.go    |    2 +-
 .../model/IdentifyReplyCommandGAVValuesCurrent.go  |    2 +-
 .../model/IdentifyReplyCommandGAVValuesStored.go   |    2 +-
 .../model/IdentifyReplyCommandLogicalAssignment.go |    2 +-
 .../model/IdentifyReplyCommandManufacturer.go      |    2 +-
 .../model/IdentifyReplyCommandMaximumLevels.go     |    2 +-
 .../model/IdentifyReplyCommandMinimumLevels.go     |    2 +-
 .../IdentifyReplyCommandNetworkTerminalLevels.go   |    2 +-
 .../model/IdentifyReplyCommandNetworkVoltage.go    |    2 +-
 .../model/IdentifyReplyCommandOutputUnitSummary.go |    2 +-
 .../readwrite/model/IdentifyReplyCommandSummary.go |    2 +-
 .../model/IdentifyReplyCommandTerminalLevels.go    |    2 +-
 .../readwrite/model/IdentifyReplyCommandType.go    |    2 +-
 .../model/IdentifyReplyCommandUnitSummary.go       |    2 +-
 .../cbus/readwrite/model/InterfaceOptions1.go      |    2 +-
 .../model/InterfaceOptions1PowerUpSettings.go      |    2 +-
 .../cbus/readwrite/model/InterfaceOptions2.go      |    2 +-
 .../cbus/readwrite/model/InterfaceOptions3.go      |    2 +-
 .../cbus/readwrite/model/LevelInformationAbsent.go |    2 +-
 .../readwrite/model/LevelInformationCorrupted.go   |    2 +-
 .../cbus/readwrite/model/LevelInformationNormal.go |    2 +-
 .../cbus/readwrite/model/LightingDataLabel.go      |    2 +-
 .../cbus/readwrite/model/LightingDataOff.go        |    2 +-
 .../cbus/readwrite/model/LightingDataOn.go         |    2 +-
 .../readwrite/model/LightingDataRampToLevel.go     |    2 +-
 .../readwrite/model/LightingDataTerminateRamp.go   |    2 +-
 .../cbus/readwrite/model/LightingLabelOptions.go   |    2 +-
 .../cbus/readwrite/model/LogicAssignment.go        |    2 +-
 .../model/MeasurementDataChannelMeasurementData.go |    2 +-
 .../model/MediaTransportControlDataCategoryName.go |    2 +-
 ...ontrolDataEnumerateCategoriesSelectionTracks.go |    2 +-
 .../MediaTransportControlDataEnumerationsSize.go   |    2 +-
 .../model/MediaTransportControlDataFastForward.go  |    2 +-
 ...ediaTransportControlDataNextPreviousCategory.go |    2 +-
 ...diaTransportControlDataNextPreviousSelection.go |    2 +-
 .../MediaTransportControlDataNextPreviousTrack.go  |    2 +-
 .../model/MediaTransportControlDataPauseResume.go  |    2 +-
 .../model/MediaTransportControlDataPlay.go         |    2 +-
 .../model/MediaTransportControlDataRepeatOnOff.go  |    2 +-
 .../model/MediaTransportControlDataRewind.go       |    2 +-
 .../MediaTransportControlDataSelectionName.go      |    2 +-
 .../model/MediaTransportControlDataSetCategory.go  |    2 +-
 .../model/MediaTransportControlDataSetSelection.go |    2 +-
 .../model/MediaTransportControlDataSetTrack.go     |    2 +-
 .../model/MediaTransportControlDataShuffleOnOff.go |    2 +-
 .../MediaTransportControlDataSourcePowerControl.go |    2 +-
 .../MediaTransportControlDataStatusRequest.go      |    2 +-
 .../model/MediaTransportControlDataStop.go         |    2 +-
 .../model/MediaTransportControlDataTotalTracks.go  |    2 +-
 .../model/MediaTransportControlDataTrackName.go    |    2 +-
 .../model/MeteringDataDrinkingWaterConsumption.go  |    2 +-
 .../model/MeteringDataElectricityConsumption.go    |    2 +-
 .../readwrite/model/MeteringDataGasConsumption.go  |    2 +-
 .../model/MeteringDataMeasureDrinkingWater.go      |    2 +-
 .../model/MeteringDataMeasureElectricity.go        |    2 +-
 .../cbus/readwrite/model/MeteringDataMeasureGas.go |    2 +-
 .../cbus/readwrite/model/MeteringDataMeasureOil.go |    2 +-
 .../model/MeteringDataMeasureOtherWater.go         |    2 +-
 .../readwrite/model/MeteringDataOilConsumption.go  |    2 +-
 .../model/MeteringDataOtherWaterConsumption.go     |    2 +-
 .../model/MonitoredSALLongFormSmartMode.go         |    2 +-
 .../cbus/readwrite/model/MonitoredSALReply.go      |    2 +-
 .../model/MonitoredSALShortFormBasicMode.go        |    2 +-
 .../model/NetworkProtocolControlInformation.go     |    2 +-
 .../protocols/cbus/readwrite/model/NetworkRoute.go |    2 +-
 .../protocols/cbus/readwrite/model/PanicStatus.go  |    2 +-
 .../cbus/readwrite/model/ParameterChange.go        |    2 +-
 .../cbus/readwrite/model/ParameterChangeReply.go   |    2 +-
 .../model/ParameterValueApplicationAddress1.go     |    2 +-
 .../model/ParameterValueApplicationAddress2.go     |    2 +-
 .../model/ParameterValueBaudRateSelector.go        |    2 +-
 .../model/ParameterValueCustomManufacturer.go      |    2 +-
 .../readwrite/model/ParameterValueCustomTypes.go   |    2 +-
 .../model/ParameterValueInterfaceOptions1.go       |    2 +-
 ...rameterValueInterfaceOptions1PowerUpSettings.go |    2 +-
 .../model/ParameterValueInterfaceOptions2.go       |    2 +-
 .../model/ParameterValueInterfaceOptions3.go       |    2 +-
 .../cbus/readwrite/model/ParameterValueRaw.go      |    2 +-
 .../readwrite/model/ParameterValueSerialNumber.go  |    2 +-
 plc4go/protocols/cbus/readwrite/model/PowerUp.go   |    2 +-
 .../protocols/cbus/readwrite/model/PowerUpReply.go |    2 +-
 .../cbus/readwrite/model/ReplyEncodedReply.go      |    2 +-
 .../protocols/cbus/readwrite/model/ReplyNetwork.go |    2 +-
 .../model/ReplyOrConfirmationConfirmation.go       |    2 +-
 .../readwrite/model/ReplyOrConfirmationReply.go    |    2 +-
 .../cbus/readwrite/model/RequestCommand.go         |    2 +-
 .../cbus/readwrite/model/RequestContext.go         |    2 +-
 .../readwrite/model/RequestDirectCommandAccess.go  |    2 +-
 .../protocols/cbus/readwrite/model/RequestEmpty.go |    2 +-
 .../protocols/cbus/readwrite/model/RequestNull.go  |    2 +-
 .../cbus/readwrite/model/RequestObsolete.go        |    2 +-
 .../protocols/cbus/readwrite/model/RequestReset.go |    2 +-
 .../readwrite/model/RequestSmartConnectShortcut.go |    2 +-
 .../cbus/readwrite/model/RequestTermination.go     |    2 +-
 .../cbus/readwrite/model/ResponseTermination.go    |    2 +-
 .../cbus/readwrite/model/SALDataAccessControl.go   |    2 +-
 .../cbus/readwrite/model/SALDataAirConditioning.go |    2 +-
 .../cbus/readwrite/model/SALDataAudioAndVideo.go   |    2 +-
 .../readwrite/model/SALDataClockAndTimekeeping.go  |    2 +-
 .../cbus/readwrite/model/SALDataEnableControl.go   |    2 +-
 .../cbus/readwrite/model/SALDataErrorReporting.go  |    2 +-
 .../cbus/readwrite/model/SALDataFreeUsage.go       |    2 +-
 .../cbus/readwrite/model/SALDataHeating.go         |    2 +-
 .../cbus/readwrite/model/SALDataHvacActuator.go    |    2 +-
 .../readwrite/model/SALDataIrrigationControl.go    |    2 +-
 .../cbus/readwrite/model/SALDataLighting.go        |    2 +-
 .../cbus/readwrite/model/SALDataMeasurement.go     |    2 +-
 .../cbus/readwrite/model/SALDataMediaTransport.go  |    2 +-
 .../cbus/readwrite/model/SALDataMetering.go        |    2 +-
 .../model/SALDataPoolsSpasPondsFountainsControl.go |    2 +-
 .../cbus/readwrite/model/SALDataReserved.go        |    2 +-
 .../readwrite/model/SALDataRoomControlSystem.go    |    2 +-
 .../cbus/readwrite/model/SALDataSecurity.go        |    2 +-
 .../model/SALDataTelephonyStatusAndControl.go      |    2 +-
 .../readwrite/model/SALDataTemperatureBroadcast.go |    2 +-
 .../cbus/readwrite/model/SALDataTesting.go         |    2 +-
 .../cbus/readwrite/model/SALDataTriggerControl.go  |    2 +-
 .../cbus/readwrite/model/SALDataVentilation.go     |    2 +-
 .../cbus/readwrite/model/SecurityArmCode.go        |    2 +-
 .../cbus/readwrite/model/SecurityDataAlarmOff.go   |    2 +-
 .../cbus/readwrite/model/SecurityDataAlarmOn.go    |    2 +-
 .../model/SecurityDataArmFailedCleared.go          |    2 +-
 .../readwrite/model/SecurityDataArmFailedRaised.go |    2 +-
 .../model/SecurityDataArmReadyNotReady.go          |    2 +-
 .../cbus/readwrite/model/SecurityDataArmSystem.go  |    2 +-
 .../model/SecurityDataCurrentAlarmType.go          |    2 +-
 .../readwrite/model/SecurityDataDisplayMessage.go  |    2 +-
 .../cbus/readwrite/model/SecurityDataDropTamper.go |    2 +-
 .../readwrite/model/SecurityDataEmulatedKeypad.go  |    2 +-
 .../model/SecurityDataEntryDelayStarted.go         |    2 +-
 .../cbus/readwrite/model/SecurityDataEvent.go      |    2 +-
 .../model/SecurityDataExitDelayStarted.go          |    2 +-
 .../model/SecurityDataFireAlarmCleared.go          |    2 +-
 .../readwrite/model/SecurityDataFireAlarmRaised.go |    2 +-
 .../readwrite/model/SecurityDataGasAlarmCleared.go |    2 +-
 .../readwrite/model/SecurityDataGasAlarmRaised.go  |    2 +-
 .../model/SecurityDataLineCutAlarmCleared.go       |    2 +-
 .../model/SecurityDataLineCutAlarmRaised.go        |    2 +-
 .../model/SecurityDataLowBatteryCharging.go        |    2 +-
 .../model/SecurityDataLowBatteryCorrected.go       |    2 +-
 .../model/SecurityDataLowBatteryDetected.go        |    2 +-
 .../readwrite/model/SecurityDataMainsFailure.go    |    2 +-
 .../model/SecurityDataMainsRestoredOrApplied.go    |    2 +-
 .../cbus/readwrite/model/SecurityDataOff.go        |    2 +-
 .../cbus/readwrite/model/SecurityDataOn.go         |    2 +-
 .../model/SecurityDataOtherAlarmCleared.go         |    2 +-
 .../model/SecurityDataOtherAlarmRaised.go          |    2 +-
 .../readwrite/model/SecurityDataPanicActivated.go  |    2 +-
 .../readwrite/model/SecurityDataPanicCleared.go    |    2 +-
 .../model/SecurityDataPasswordEntryStatus.go       |    2 +-
 .../cbus/readwrite/model/SecurityDataRaiseAlarm.go |    2 +-
 .../readwrite/model/SecurityDataRaiseTamper.go     |    2 +-
 .../readwrite/model/SecurityDataRequestZoneName.go |    2 +-
 .../readwrite/model/SecurityDataStatus1Request.go  |    2 +-
 .../readwrite/model/SecurityDataStatus2Request.go  |    2 +-
 .../readwrite/model/SecurityDataStatusReport1.go   |    2 +-
 .../readwrite/model/SecurityDataStatusReport2.go   |    2 +-
 .../model/SecurityDataSystemArmedDisarmed.go       |    2 +-
 .../readwrite/model/SecurityDataSystemDisarmed.go  |    2 +-
 .../cbus/readwrite/model/SecurityDataTamperOff.go  |    2 +-
 .../cbus/readwrite/model/SecurityDataTamperOn.go   |    2 +-
 .../readwrite/model/SecurityDataZoneIsolated.go    |    2 +-
 .../cbus/readwrite/model/SecurityDataZoneName.go   |    2 +-
 .../cbus/readwrite/model/SecurityDataZoneOpen.go   |    2 +-
 .../cbus/readwrite/model/SecurityDataZoneSealed.go |    2 +-
 .../cbus/readwrite/model/SecurityDataZoneShort.go  |    2 +-
 .../readwrite/model/SecurityDataZoneUnsealed.go    |    2 +-
 .../cbus/readwrite/model/SerialInterfaceAddress.go |    2 +-
 .../protocols/cbus/readwrite/model/SerialNumber.go |    2 +-
 .../cbus/readwrite/model/ServerErrorReply.go       |    2 +-
 .../protocols/cbus/readwrite/model/StatusByte.go   |    2 +-
 .../readwrite/model/StatusRequestBinaryState.go    |    2 +-
 .../model/StatusRequestBinaryStateDeprecated.go    |    2 +-
 .../cbus/readwrite/model/StatusRequestLevel.go     |    2 +-
 .../protocols/cbus/readwrite/model/TamperStatus.go |    2 +-
 .../readwrite/model/TelephonyDataClearDiversion.go |    2 +-
 .../readwrite/model/TelephonyDataDialInFailure.go  |    2 +-
 .../readwrite/model/TelephonyDataDialOutFailure.go |    2 +-
 .../cbus/readwrite/model/TelephonyDataDivert.go    |    2 +-
 .../TelephonyDataInternetConnectionRequestMade.go  |    2 +-
 .../model/TelephonyDataIsolateSecondaryOutlet.go   |    2 +-
 .../readwrite/model/TelephonyDataLineOffHook.go    |    2 +-
 .../readwrite/model/TelephonyDataLineOnHook.go     |    2 +-
 .../model/TelephonyDataRecallLastNumber.go         |    2 +-
 .../model/TelephonyDataRecallLastNumberRequest.go  |    2 +-
 .../model/TelephonyDataRejectIncomingCall.go       |    2 +-
 .../cbus/readwrite/model/TelephonyDataRinging.go   |    2 +-
 .../readwrite/model/TemperatureBroadcastData.go    |    2 +-
 .../model/TriggerControlDataIndicatorKill.go       |    2 +-
 .../readwrite/model/TriggerControlDataLabel.go     |    2 +-
 .../model/TriggerControlDataTriggerEvent.go        |    2 +-
 .../model/TriggerControlDataTriggerMax.go          |    2 +-
 .../model/TriggerControlDataTriggerMin.go          |    2 +-
 .../readwrite/model/TriggerControlLabelOptions.go  |    2 +-
 .../protocols/cbus/readwrite/model/UnitAddress.go  |    2 +-
 .../protocols/cbus/readwrite/model/ZoneStatus.go   |    2 +-
 .../df1/readwrite/model/DF1SymbolMessageFrame.go   |    2 +-
 .../readwrite/model/DF1SymbolMessageFrameACK.go    |    2 +-
 .../readwrite/model/DF1SymbolMessageFrameNAK.go    |    2 +-
 .../readwrite/model/DF1UnprotectedReadRequest.go   |    2 +-
 .../readwrite/model/DF1UnprotectedReadResponse.go  |    2 +-
 .../protocols/eip/readwrite/model/CipExchange.go   |    2 +-
 plc4go/protocols/eip/readwrite/model/CipRRData.go  |    2 +-
 .../eip/readwrite/model/CipReadRequest.go          |    2 +-
 .../eip/readwrite/model/CipReadResponse.go         |    2 +-
 .../eip/readwrite/model/CipUnconnectedRequest.go   |    2 +-
 .../eip/readwrite/model/CipWriteRequest.go         |    2 +-
 .../eip/readwrite/model/CipWriteResponse.go        |    2 +-
 .../eip/readwrite/model/EipConnectionRequest.go    |    2 +-
 .../eip/readwrite/model/EipDisconnectRequest.go    |    2 +-
 .../eip/readwrite/model/MultipleServiceRequest.go  |    2 +-
 .../eip/readwrite/model/MultipleServiceResponse.go |    2 +-
 plc4go/protocols/eip/readwrite/model/Services.go   |    2 +-
 .../model/FirmataCommandProtocolVersion.go         |    2 +-
 .../model/FirmataCommandSetDigitalPinValue.go      |    2 +-
 .../readwrite/model/FirmataCommandSetPinMode.go    |    2 +-
 .../firmata/readwrite/model/FirmataCommandSysex.go |    2 +-
 .../readwrite/model/FirmataCommandSystemReset.go   |    2 +-
 .../readwrite/model/FirmataMessageAnalogIO.go      |    2 +-
 .../readwrite/model/FirmataMessageCommand.go       |    2 +-
 .../readwrite/model/FirmataMessageDigitalIO.go     |    2 +-
 .../model/FirmataMessageSubscribeAnalogPinValue.go |    2 +-
 .../FirmataMessageSubscribeDigitalPinValue.go      |    2 +-
 .../model/SysexCommandAnalogMappingQueryRequest.go |    2 +-
 .../SysexCommandAnalogMappingQueryResponse.go      |    2 +-
 .../model/SysexCommandAnalogMappingResponse.go     |    2 +-
 .../readwrite/model/SysexCommandCapabilityQuery.go |    2 +-
 .../model/SysexCommandCapabilityResponse.go        |    2 +-
 .../readwrite/model/SysexCommandExtendedAnalog.go  |    2 +-
 .../readwrite/model/SysexCommandExtendedId.go      |    2 +-
 .../readwrite/model/SysexCommandPinStateQuery.go   |    2 +-
 .../model/SysexCommandPinStateResponse.go          |    2 +-
 .../model/SysexCommandReportFirmwareRequest.go     |    2 +-
 .../model/SysexCommandReportFirmwareResponse.go    |    2 +-
 .../model/SysexCommandSamplingInterval.go          |    2 +-
 .../readwrite/model/SysexCommandStringData.go      |    2 +-
 .../model/SysexCommandSysexNonRealtime.go          |    2 +-
 .../readwrite/model/SysexCommandSysexRealtime.go   |    2 +-
 .../knxnetip/readwrite/model/ApduControlAck.go     |    2 +-
 .../knxnetip/readwrite/model/ApduControlConnect.go |    2 +-
 .../readwrite/model/ApduControlContainer.go        |    2 +-
 .../readwrite/model/ApduControlDisconnect.go       |    2 +-
 .../knxnetip/readwrite/model/ApduControlNack.go    |    2 +-
 .../knxnetip/readwrite/model/ApduDataAdcRead.go    |    2 +-
 .../readwrite/model/ApduDataAdcResponse.go         |    2 +-
 .../knxnetip/readwrite/model/ApduDataContainer.go  |    2 +-
 .../model/ApduDataDeviceDescriptorRead.go          |    2 +-
 .../model/ApduDataDeviceDescriptorResponse.go      |    2 +-
 .../readwrite/model/ApduDataExtAuthorizeRequest.go |    2 +-
 .../model/ApduDataExtAuthorizeResponse.go          |    2 +-
 .../model/ApduDataExtDomainAddressRead.go          |    2 +-
 .../model/ApduDataExtDomainAddressResponse.go      |    2 +-
 .../model/ApduDataExtDomainAddressSelectiveRead.go |    2 +-
 .../ApduDataExtDomainAddressSerialNumberRead.go    |    2 +-
 ...ApduDataExtDomainAddressSerialNumberResponse.go |    2 +-
 .../ApduDataExtDomainAddressSerialNumberWrite.go   |    2 +-
 .../model/ApduDataExtDomainAddressWrite.go         |    2 +-
 .../model/ApduDataExtFileStreamInfoReport.go       |    2 +-
 .../ApduDataExtGroupPropertyValueInfoReport.go     |    2 +-
 .../model/ApduDataExtGroupPropertyValueRead.go     |    2 +-
 .../model/ApduDataExtGroupPropertyValueResponse.go |    2 +-
 .../model/ApduDataExtGroupPropertyValueWrite.go    |    2 +-
 ...ApduDataExtIndividualAddressSerialNumberRead.go |    2 +-
 ...DataExtIndividualAddressSerialNumberResponse.go |    2 +-
 ...pduDataExtIndividualAddressSerialNumberWrite.go |    2 +-
 .../readwrite/model/ApduDataExtKeyResponse.go      |    2 +-
 .../readwrite/model/ApduDataExtKeyWrite.go         |    2 +-
 .../readwrite/model/ApduDataExtLinkRead.go         |    2 +-
 .../readwrite/model/ApduDataExtLinkResponse.go     |    2 +-
 .../readwrite/model/ApduDataExtLinkWrite.go        |    2 +-
 .../readwrite/model/ApduDataExtMemoryBitWrite.go   |    2 +-
 .../model/ApduDataExtNetworkParameterRead.go       |    2 +-
 .../model/ApduDataExtNetworkParameterResponse.go   |    2 +-
 .../model/ApduDataExtNetworkParameterWrite.go      |    2 +-
 .../model/ApduDataExtOpenRoutingTableRequest.go    |    2 +-
 .../model/ApduDataExtPropertyDescriptionRead.go    |    2 +-
 .../ApduDataExtPropertyDescriptionResponse.go      |    2 +-
 .../model/ApduDataExtPropertyValueRead.go          |    2 +-
 .../model/ApduDataExtPropertyValueResponse.go      |    2 +-
 .../model/ApduDataExtPropertyValueWrite.go         |    2 +-
 .../model/ApduDataExtReadRouterMemoryRequest.go    |    2 +-
 .../model/ApduDataExtReadRouterMemoryResponse.go   |    2 +-
 .../model/ApduDataExtReadRouterStatusRequest.go    |    2 +-
 .../model/ApduDataExtReadRouterStatusResponse.go   |    2 +-
 .../model/ApduDataExtReadRoutingTableRequest.go    |    2 +-
 .../model/ApduDataExtReadRoutingTableResponse.go   |    2 +-
 .../model/ApduDataExtWriteRouterMemoryRequest.go   |    2 +-
 .../model/ApduDataExtWriteRouterStatusRequest.go   |    2 +-
 .../model/ApduDataExtWriteRoutingTableRequest.go   |    2 +-
 .../readwrite/model/ApduDataGroupValueRead.go      |    2 +-
 .../readwrite/model/ApduDataGroupValueResponse.go  |    2 +-
 .../readwrite/model/ApduDataGroupValueWrite.go     |    2 +-
 .../model/ApduDataIndividualAddressRead.go         |    2 +-
 .../model/ApduDataIndividualAddressResponse.go     |    2 +-
 .../model/ApduDataIndividualAddressWrite.go        |    2 +-
 .../knxnetip/readwrite/model/ApduDataMemoryRead.go |    2 +-
 .../readwrite/model/ApduDataMemoryResponse.go      |    2 +-
 .../readwrite/model/ApduDataMemoryWrite.go         |    2 +-
 .../knxnetip/readwrite/model/ApduDataOther.go      |    2 +-
 .../knxnetip/readwrite/model/ApduDataRestart.go    |    2 +-
 .../readwrite/model/ApduDataUserMessage.go         |    2 +-
 .../CEMIAdditionalInformationBusmonitorInfo.go     |    2 +-
 .../CEMIAdditionalInformationRelativeTimestamp.go  |    2 +-
 .../knxnetip/readwrite/model/ChannelInformation.go |    2 +-
 .../model/ComObjectTableRealisationType1.go        |    2 +-
 .../model/ComObjectTableRealisationType2.go        |    2 +-
 .../model/ComObjectTableRealisationType6.go        |    2 +-
 .../knxnetip/readwrite/model/ConnectionRequest.go  |    2 +-
 ...ConnectionRequestInformationDeviceManagement.go |    2 +-
 ...ConnectionRequestInformationTunnelConnection.go |    2 +-
 .../knxnetip/readwrite/model/ConnectionResponse.go |    2 +-
 .../ConnectionResponseDataBlockDeviceManagement.go |    2 +-
 .../ConnectionResponseDataBlockTunnelConnection.go |    2 +-
 .../readwrite/model/ConnectionStateRequest.go      |    2 +-
 .../readwrite/model/ConnectionStateResponse.go     |    2 +-
 .../knxnetip/readwrite/model/DIBDeviceInfo.go      |    2 +-
 .../knxnetip/readwrite/model/DIBSuppSvcFamilies.go |    2 +-
 .../knxnetip/readwrite/model/DescriptionRequest.go |    2 +-
 .../readwrite/model/DescriptionResponse.go         |    2 +-
 .../readwrite/model/DeviceConfigurationAck.go      |    2 +-
 .../model/DeviceConfigurationAckDataBlock.go       |    2 +-
 .../readwrite/model/DeviceConfigurationRequest.go  |    2 +-
 .../model/DeviceConfigurationRequestDataBlock.go   |    2 +-
 .../readwrite/model/DeviceDescriptorType2.go       |    2 +-
 .../knxnetip/readwrite/model/DeviceStatus.go       |    2 +-
 .../knxnetip/readwrite/model/DisconnectRequest.go  |    2 +-
 .../knxnetip/readwrite/model/DisconnectResponse.go |    2 +-
 .../model/GroupObjectDescriptorRealisationType1.go |    2 +-
 .../model/GroupObjectDescriptorRealisationType2.go |    2 +-
 .../model/GroupObjectDescriptorRealisationType6.go |    2 +-
 .../model/GroupObjectDescriptorRealisationType7.go |    2 +-
 .../model/GroupObjectDescriptorRealisationTypeB.go |    2 +-
 .../readwrite/model/HPAIControlEndpoint.go         |    2 +-
 .../knxnetip/readwrite/model/HPAIDataEndpoint.go   |    2 +-
 .../readwrite/model/HPAIDiscoveryEndpoint.go       |    2 +-
 .../knxnetip/readwrite/model/IPAddress.go          |    2 +-
 .../knxnetip/readwrite/model/KnxAddress.go         |    2 +-
 .../readwrite/model/KnxGroupAddress2Level.go       |    2 +-
 .../readwrite/model/KnxGroupAddress3Level.go       |    2 +-
 .../readwrite/model/KnxGroupAddressFreeLevel.go    |    2 +-
 .../knxnetip/readwrite/model/KnxNetIpCore.go       |    2 +-
 .../readwrite/model/KnxNetIpDeviceManagement.go    |    2 +-
 .../knxnetip/readwrite/model/KnxNetIpRouting.go    |    2 +-
 .../knxnetip/readwrite/model/KnxNetIpTunneling.go  |    2 +-
 .../knxnetip/readwrite/model/KnxNetObjectServer.go |    2 +-
 .../model/KnxNetRemoteConfigurationAndDiagnosis.go |    2 +-
 .../readwrite/model/KnxNetRemoteLogging.go         |    2 +-
 .../knxnetip/readwrite/model/LBusmonInd.go         |    2 +-
 .../protocols/knxnetip/readwrite/model/LDataCon.go |    2 +-
 .../knxnetip/readwrite/model/LDataExtended.go      |    2 +-
 .../knxnetip/readwrite/model/LDataFrameACK.go      |    2 +-
 .../protocols/knxnetip/readwrite/model/LDataInd.go |    2 +-
 .../protocols/knxnetip/readwrite/model/LDataReq.go |    2 +-
 .../knxnetip/readwrite/model/LPollData.go          |    2 +-
 .../knxnetip/readwrite/model/LPollDataCon.go       |    2 +-
 .../knxnetip/readwrite/model/LPollDataReq.go       |    2 +-
 .../protocols/knxnetip/readwrite/model/LRawCon.go  |    2 +-
 .../protocols/knxnetip/readwrite/model/LRawInd.go  |    2 +-
 .../protocols/knxnetip/readwrite/model/LRawReq.go  |    2 +-
 .../knxnetip/readwrite/model/MACAddress.go         |    2 +-
 .../readwrite/model/MFuncPropCommandReq.go         |    2 +-
 .../knxnetip/readwrite/model/MFuncPropCon.go       |    2 +-
 .../readwrite/model/MFuncPropStateReadReq.go       |    2 +-
 .../knxnetip/readwrite/model/MPropInfoInd.go       |    2 +-
 .../knxnetip/readwrite/model/MPropReadCon.go       |    2 +-
 .../knxnetip/readwrite/model/MPropReadReq.go       |    2 +-
 .../knxnetip/readwrite/model/MPropWriteCon.go      |    2 +-
 .../knxnetip/readwrite/model/MPropWriteReq.go      |    2 +-
 .../knxnetip/readwrite/model/MResetInd.go          |    2 +-
 .../knxnetip/readwrite/model/MResetReq.go          |    2 +-
 .../model/ProjectInstallationIdentifier.go         |    2 +-
 .../knxnetip/readwrite/model/RelativeTimestamp.go  |    2 +-
 .../knxnetip/readwrite/model/RoutingIndication.go  |    2 +-
 .../knxnetip/readwrite/model/SearchRequest.go      |    2 +-
 .../knxnetip/readwrite/model/SearchResponse.go     |    2 +-
 .../knxnetip/readwrite/model/TDataConnectedInd.go  |    2 +-
 .../knxnetip/readwrite/model/TDataConnectedReq.go  |    2 +-
 .../knxnetip/readwrite/model/TDataIndividualInd.go |    2 +-
 .../knxnetip/readwrite/model/TDataIndividualReq.go |    2 +-
 .../knxnetip/readwrite/model/TunnelingRequest.go   |    2 +-
 .../readwrite/model/TunnelingRequestDataBlock.go   |    2 +-
 .../knxnetip/readwrite/model/TunnelingResponse.go  |    2 +-
 .../readwrite/model/TunnelingResponseDataBlock.go  |    2 +-
 .../knxnetip/readwrite/model/UnknownMessage.go     |    2 +-
 .../modbus/readwrite/model/ModbusAsciiADU.go       |    2 +-
 .../modbus/readwrite/model/ModbusConstants.go      |    2 +-
 .../model/ModbusDeviceInformationObject.go         |    2 +-
 .../readwrite/model/ModbusPDUDiagnosticRequest.go  |    2 +-
 .../readwrite/model/ModbusPDUDiagnosticResponse.go |    2 +-
 .../modbus/readwrite/model/ModbusPDUError.go       |    2 +-
 .../model/ModbusPDUGetComEventCounterRequest.go    |    2 +-
 .../model/ModbusPDUGetComEventCounterResponse.go   |    2 +-
 .../model/ModbusPDUGetComEventLogRequest.go        |    2 +-
 .../model/ModbusPDUGetComEventLogResponse.go       |    2 +-
 .../ModbusPDUMaskWriteHoldingRegisterRequest.go    |    2 +-
 .../ModbusPDUMaskWriteHoldingRegisterResponse.go   |    2 +-
 .../readwrite/model/ModbusPDUReadCoilsRequest.go   |    2 +-
 .../readwrite/model/ModbusPDUReadCoilsResponse.go  |    2 +-
 .../ModbusPDUReadDeviceIdentificationRequest.go    |    2 +-
 .../ModbusPDUReadDeviceIdentificationResponse.go   |    2 +-
 .../model/ModbusPDUReadDiscreteInputsRequest.go    |    2 +-
 .../model/ModbusPDUReadDiscreteInputsResponse.go   |    2 +-
 .../model/ModbusPDUReadExceptionStatusRequest.go   |    2 +-
 .../model/ModbusPDUReadExceptionStatusResponse.go  |    2 +-
 .../model/ModbusPDUReadFifoQueueRequest.go         |    2 +-
 .../model/ModbusPDUReadFifoQueueResponse.go        |    2 +-
 .../model/ModbusPDUReadFileRecordRequest.go        |    2 +-
 .../model/ModbusPDUReadFileRecordRequestItem.go    |    2 +-
 .../model/ModbusPDUReadFileRecordResponse.go       |    2 +-
 .../model/ModbusPDUReadFileRecordResponseItem.go   |    2 +-
 .../model/ModbusPDUReadHoldingRegistersRequest.go  |    2 +-
 .../model/ModbusPDUReadHoldingRegistersResponse.go |    2 +-
 .../model/ModbusPDUReadInputRegistersRequest.go    |    2 +-
 .../model/ModbusPDUReadInputRegistersResponse.go   |    2 +-
 ...sPDUReadWriteMultipleHoldingRegistersRequest.go |    2 +-
 ...PDUReadWriteMultipleHoldingRegistersResponse.go |    2 +-
 .../model/ModbusPDUReportServerIdRequest.go        |    2 +-
 .../model/ModbusPDUReportServerIdResponse.go       |    2 +-
 .../model/ModbusPDUWriteFileRecordRequest.go       |    2 +-
 .../model/ModbusPDUWriteFileRecordRequestItem.go   |    2 +-
 .../model/ModbusPDUWriteFileRecordResponse.go      |    2 +-
 .../model/ModbusPDUWriteFileRecordResponseItem.go  |    2 +-
 .../model/ModbusPDUWriteMultipleCoilsRequest.go    |    2 +-
 .../model/ModbusPDUWriteMultipleCoilsResponse.go   |    2 +-
 ...odbusPDUWriteMultipleHoldingRegistersRequest.go |    2 +-
 ...dbusPDUWriteMultipleHoldingRegistersResponse.go |    2 +-
 .../model/ModbusPDUWriteSingleCoilRequest.go       |    2 +-
 .../model/ModbusPDUWriteSingleCoilResponse.go      |    2 +-
 .../model/ModbusPDUWriteSingleRegisterRequest.go   |    2 +-
 .../model/ModbusPDUWriteSingleRegisterResponse.go  |    2 +-
 .../modbus/readwrite/model/ModbusRtuADU.go         |    2 +-
 .../modbus/readwrite/model/ModbusTcpADU.go         |    2 +-
 .../model/AlarmMessageAckObjectPushType.go         |    2 +-
 .../s7/readwrite/model/AlarmMessageAckPushType.go  |    2 +-
 .../readwrite/model/AlarmMessageAckResponseType.go |    2 +-
 .../s7/readwrite/model/AlarmMessageAckType.go      |    2 +-
 .../readwrite/model/AlarmMessageObjectAckType.go   |    2 +-
 .../readwrite/model/AlarmMessageObjectPushType.go  |    2 +-
 .../readwrite/model/AlarmMessageObjectQueryType.go |    2 +-
 .../s7/readwrite/model/AlarmMessagePushType.go     |    2 +-
 .../s7/readwrite/model/AlarmMessageQueryType.go    |    2 +-
 .../s7/readwrite/model/AssociatedValueType.go      |    2 +-
 .../readwrite/model/COTPPacketConnectionRequest.go |    2 +-
 .../model/COTPPacketConnectionResponse.go          |    2 +-
 .../protocols/s7/readwrite/model/COTPPacketData.go |    2 +-
 .../readwrite/model/COTPPacketDisconnectRequest.go |    2 +-
 .../model/COTPPacketDisconnectResponse.go          |    2 +-
 .../s7/readwrite/model/COTPPacketTpduError.go      |    2 +-
 .../s7/readwrite/model/COTPParameterCalledTsap.go  |    2 +-
 .../s7/readwrite/model/COTPParameterCallingTsap.go |    2 +-
 .../s7/readwrite/model/COTPParameterChecksum.go    |    2 +-
 ...COTPParameterDisconnectAdditionalInformation.go |    2 +-
 .../s7/readwrite/model/COTPParameterTpduSize.go    |    2 +-
 plc4go/protocols/s7/readwrite/model/DateAndTime.go |    2 +-
 .../protocols/s7/readwrite/model/S7AddressAny.go   |    2 +-
 .../s7/readwrite/model/S7MessageObjectRequest.go   |    2 +-
 .../s7/readwrite/model/S7MessageObjectResponse.go  |    2 +-
 .../s7/readwrite/model/S7MessageRequest.go         |    2 +-
 .../s7/readwrite/model/S7MessageResponse.go        |    2 +-
 .../s7/readwrite/model/S7MessageResponseData.go    |    2 +-
 .../s7/readwrite/model/S7MessageUserData.go        |    2 +-
 .../readwrite/model/S7ParameterModeTransition.go   |    2 +-
 .../readwrite/model/S7ParameterReadVarRequest.go   |    2 +-
 .../readwrite/model/S7ParameterReadVarResponse.go  |    2 +-
 .../model/S7ParameterSetupCommunication.go         |    2 +-
 .../s7/readwrite/model/S7ParameterUserData.go      |    2 +-
 .../model/S7ParameterUserDataItemCPUFunctions.go   |    2 +-
 .../readwrite/model/S7ParameterWriteVarRequest.go  |    2 +-
 .../readwrite/model/S7ParameterWriteVarResponse.go |    2 +-
 .../s7/readwrite/model/S7PayloadAlarm8.go          |    2 +-
 .../s7/readwrite/model/S7PayloadAlarmAckInd.go     |    2 +-
 .../s7/readwrite/model/S7PayloadAlarmS.go          |    2 +-
 .../s7/readwrite/model/S7PayloadAlarmSC.go         |    2 +-
 .../s7/readwrite/model/S7PayloadAlarmSQ.go         |    2 +-
 .../readwrite/model/S7PayloadDiagnosticMessage.go  |    2 +-
 .../s7/readwrite/model/S7PayloadNotify.go          |    2 +-
 .../s7/readwrite/model/S7PayloadNotify8.go         |    2 +-
 .../s7/readwrite/model/S7PayloadReadVarResponse.go |    2 +-
 .../s7/readwrite/model/S7PayloadUserData.go        |    2 +-
 .../S7PayloadUserDataItemCpuFunctionAlarmAck.go    |    2 +-
 ...yloadUserDataItemCpuFunctionAlarmAckResponse.go |    2 +-
 .../S7PayloadUserDataItemCpuFunctionAlarmQuery.go  |    2 +-
 ...oadUserDataItemCpuFunctionAlarmQueryResponse.go |    2 +-
 ...ayloadUserDataItemCpuFunctionMsgSubscription.go |    2 +-
 ...aItemCpuFunctionMsgSubscriptionAlarmResponse.go |    2 +-
 ...erDataItemCpuFunctionMsgSubscriptionResponse.go |    2 +-
 ...ataItemCpuFunctionMsgSubscriptionSysResponse.go |    2 +-
 ...PayloadUserDataItemCpuFunctionReadSzlRequest.go |    2 +-
 ...ayloadUserDataItemCpuFunctionReadSzlResponse.go |    2 +-
 .../s7/readwrite/model/S7PayloadWriteVarRequest.go |    2 +-
 .../readwrite/model/S7PayloadWriteVarResponse.go   |    2 +-
 .../s7/readwrite/model/S7VarPayloadDataItem.go     |    2 +-
 .../s7/readwrite/model/S7VarPayloadStatusItem.go   |    2 +-
 .../model/S7VarRequestParameterItemAddress.go      |    2 +-
 plc4go/protocols/s7/readwrite/model/State.go       |    2 +-
 .../s7/readwrite/model/SzlDataTreeItem.go          |    2 +-
 plc4go/protocols/s7/readwrite/model/SzlId.go       |    2 +-
 plc4go/protocols/s7/readwrite/model/TPKTPacket.go  |    2 +-
 .../protocols/simulated/readwrite/model/Dummy.go   |    2 +-
 plc4go/spi/utils/WriteBufferByteBased.go           |    3 +-
 plc4go/spi/utils/WriteBufferByteBased_test.go      | 1015 ++++++++++++++++++++
 1918 files changed, 2938 insertions(+), 1918 deletions(-)

diff --git a/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh b/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh
index 232caf0f5..1ce4735f6 100644
--- a/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh
+++ b/code-generation/language-go/src/main/resources/templates/go/complex-type-template.go.ftlh
@@ -1566,7 +1566,7 @@ func (pm *_${type.name}) SerializeParent(writeBuffer utils.WriteBuffer, child ${
 	_ = m
 <#else>
 func (m *_${type.name}) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian))<@emitImport import="encoding/binary" /> // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes())))<@emitImport import="encoding/binary" /> // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go
index 76180338d..d44f36cf0 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionRequest.go
@@ -131,7 +131,7 @@ func CIPEncapsulationConnectionRequestParse(readBuffer utils.ReadBuffer) (CIPEnc
 }
 
 func (m *_CIPEncapsulationConnectionRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go
index 175683049..630940cf7 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationConnectionResponse.go
@@ -131,7 +131,7 @@ func CIPEncapsulationConnectionResponseParse(readBuffer utils.ReadBuffer) (CIPEn
 }
 
 func (m *_CIPEncapsulationConnectionResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go
index dba21620f..176329773 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go
@@ -166,7 +166,7 @@ func CIPEncapsulationReadRequestParse(readBuffer utils.ReadBuffer) (CIPEncapsula
 }
 
 func (m *_CIPEncapsulationReadRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go
index fe1917a11..0b9c8d7dc 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go
@@ -169,7 +169,7 @@ func CIPEncapsulationReadResponseParse(readBuffer utils.ReadBuffer, packetLen ui
 }
 
 func (m *_CIPEncapsulationReadResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go
index 33fa90cfb..b72164720 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go
@@ -166,7 +166,7 @@ func DF1CommandRequestMessageParse(readBuffer utils.ReadBuffer) (DF1CommandReque
 }
 
 func (m *_DF1CommandRequestMessage) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go b/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
index 6ec41bc9e..551e7f829 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
@@ -178,7 +178,7 @@ func DF1CommandResponseMessageProtectedTypedLogicalReadParse(readBuffer utils.Re
 }
 
 func (m *_DF1CommandResponseMessageProtectedTypedLogicalRead) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
index 73f5a6355..7dc97e1d5 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
@@ -231,7 +231,7 @@ func DF1RequestProtectedTypedLogicalReadParse(readBuffer utils.ReadBuffer) (DF1R
 }
 
 func (m *_DF1RequestProtectedTypedLogicalRead) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
index 04345d54b..ae27f32cb 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
@@ -200,7 +200,11 @@ func (m *_AdsAddDeviceNotificationRequest) GetLengthInBytes() uint16 {
 	return m.GetLengthInBits() / 8
 }
 
-func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (AdsAddDeviceNotificationRequest, error) {
+func AdsAddDeviceNotificationRequestParse(theBytes []byte) (AdsAddDeviceNotificationRequest, error) {
+	return AdsAddDeviceNotificationRequestParseWithBuffer(utils.NewReadBufferByteBased(theBytes))
+}
+
+func AdsAddDeviceNotificationRequestParseWithBuffer(readBuffer utils.ReadBuffer) (AdsAddDeviceNotificationRequest, error) {
 	positionAware := readBuffer
 	_ = positionAware
 	if pullErr := readBuffer.PullContext("AdsAddDeviceNotificationRequest"); pullErr != nil {
@@ -306,7 +310,7 @@ func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (AdsAddDe
 }
 
 func (m *_AdsAddDeviceNotificationRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
index b0e75d991..4f5f40f95 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
@@ -191,7 +191,7 @@ func AdsAddDeviceNotificationResponseParse(readBuffer utils.ReadBuffer) (AdsAddD
 }
 
 func (m *_AdsAddDeviceNotificationResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsConstants.go b/plc4go/protocols/ads/readwrite/model/AdsConstants.go
index 4d2678d21..db353face 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsConstants.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsConstants.go
@@ -126,7 +126,7 @@ func AdsConstantsParse(readBuffer utils.ReadBuffer) (AdsConstants, error) {
 }
 
 func (m *_AdsConstants) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go b/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go
index b425aea69..a300d7c28 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDataTypeArrayInfo.go
@@ -165,7 +165,7 @@ func AdsDataTypeArrayInfoParse(readBuffer utils.ReadBuffer) (AdsDataTypeArrayInf
 }
 
 func (m *_AdsDataTypeArrayInfo) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go
index c2421f122..860c11e72 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableChildEntry.go
@@ -534,7 +534,7 @@ func AdsDataTypeTableChildEntryParse(readBuffer utils.ReadBuffer) (AdsDataTypeTa
 }
 
 func (m *_AdsDataTypeTableChildEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go
index 4ddbb218c..f407c98b3 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDataTypeTableEntry.go
@@ -534,7 +534,7 @@ func AdsDataTypeTableEntryParse(readBuffer utils.ReadBuffer) (AdsDataTypeTableEn
 }
 
 func (m *_AdsDataTypeTableEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
index 50ed36ad7..205e91c90 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
@@ -166,7 +166,7 @@ func AdsDeleteDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (AdsDe
 }
 
 func (m *_AdsDeleteDeviceNotificationRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
index cfcd5ef66..8297af0c3 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
@@ -172,7 +172,7 @@ func AdsDeleteDeviceNotificationResponseParse(readBuffer utils.ReadBuffer) (AdsD
 }
 
 func (m *_AdsDeleteDeviceNotificationResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go b/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go
index f3b82a63e..65e31ad2f 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go
@@ -225,7 +225,7 @@ func AdsDeviceNotificationRequestParse(readBuffer utils.ReadBuffer) (AdsDeviceNo
 }
 
 func (m *_AdsDeviceNotificationRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationResponse.go b/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationResponse.go
index 46a8cfbde..ca93efc69 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationResponse.go
@@ -137,7 +137,7 @@ func AdsDeviceNotificationResponseParse(readBuffer utils.ReadBuffer) (AdsDeviceN
 }
 
 func (m *_AdsDeviceNotificationResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsInvalidRequest.go b/plc4go/protocols/ads/readwrite/model/AdsInvalidRequest.go
index 4552675a8..56c7d3d44 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsInvalidRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsInvalidRequest.go
@@ -137,7 +137,7 @@ func AdsInvalidRequestParse(readBuffer utils.ReadBuffer) (AdsInvalidRequest, err
 }
 
 func (m *_AdsInvalidRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsInvalidResponse.go b/plc4go/protocols/ads/readwrite/model/AdsInvalidResponse.go
index ba84a2789..b2b0a20c2 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsInvalidResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsInvalidResponse.go
@@ -137,7 +137,7 @@ func AdsInvalidResponseParse(readBuffer utils.ReadBuffer) (AdsInvalidResponse, e
 }
 
 func (m *_AdsInvalidResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go
index 721648810..043dfdc25 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go
@@ -193,7 +193,7 @@ func AdsMultiRequestItemReadParse(readBuffer utils.ReadBuffer, indexGroup uint32
 }
 
 func (m *_AdsMultiRequestItemRead) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
index 06d9f5483..dfb4c9040 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
@@ -212,7 +212,7 @@ func AdsMultiRequestItemReadWriteParse(readBuffer utils.ReadBuffer, indexGroup u
 }
 
 func (m *_AdsMultiRequestItemReadWrite) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go
index 418411533..95725de52 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go
@@ -193,7 +193,7 @@ func AdsMultiRequestItemWriteParse(readBuffer utils.ReadBuffer, indexGroup uint3
 }
 
 func (m *_AdsMultiRequestItemWrite) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go b/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
index f8e11843a..1e9116342 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
@@ -162,7 +162,7 @@ func AdsNotificationSampleParse(readBuffer utils.ReadBuffer) (AdsNotificationSam
 }
 
 func (m *_AdsNotificationSample) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoRequest.go b/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoRequest.go
index b5279e36d..d4376c42c 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoRequest.go
@@ -137,7 +137,7 @@ func AdsReadDeviceInfoRequestParse(readBuffer utils.ReadBuffer) (AdsReadDeviceIn
 }
 
 func (m *_AdsReadDeviceInfoRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go
index 784515851..1bea7b2cb 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go
@@ -249,7 +249,7 @@ func AdsReadDeviceInfoResponseParse(readBuffer utils.ReadBuffer) (AdsReadDeviceI
 }
 
 func (m *_AdsReadDeviceInfoResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go b/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go
index 67b5c581e..bfc360654 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go
@@ -204,7 +204,7 @@ func AdsReadRequestParse(readBuffer utils.ReadBuffer) (AdsReadRequest, error) {
 }
 
 func (m *_AdsReadRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go
index 5038d08e1..3e447a052 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go
@@ -202,7 +202,7 @@ func AdsReadResponseParse(readBuffer utils.ReadBuffer) (AdsReadResponse, error)
 }
 
 func (m *_AdsReadResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadStateRequest.go b/plc4go/protocols/ads/readwrite/model/AdsReadStateRequest.go
index 5bf64b231..4452f6bbe 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadStateRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadStateRequest.go
@@ -137,7 +137,7 @@ func AdsReadStateRequestParse(readBuffer utils.ReadBuffer) (AdsReadStateRequest,
 }
 
 func (m *_AdsReadStateRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go
index a03d658ac..83acaa9ff 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go
@@ -210,7 +210,7 @@ func AdsReadStateResponseParse(readBuffer utils.ReadBuffer) (AdsReadStateRespons
 }
 
 func (m *_AdsReadStateResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go b/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go
index 8f100297b..c30e6bd68 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go
@@ -274,7 +274,7 @@ func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer) (AdsReadWriteRequest,
 }
 
 func (m *_AdsReadWriteRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go
index ea4f082d9..c2d0705af 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go
@@ -202,7 +202,7 @@ func AdsReadWriteResponseParse(readBuffer utils.ReadBuffer) (AdsReadWriteRespons
 }
 
 func (m *_AdsReadWriteResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go b/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
index c7952b3bf..c3a7670b5 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
@@ -182,7 +182,7 @@ func AdsStampHeaderParse(readBuffer utils.ReadBuffer) (AdsStampHeader, error) {
 }
 
 func (m *_AdsStampHeader) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go b/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go
index 3b63ff828..e322fdbcd 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsSymbolTableEntry.go
@@ -645,7 +645,7 @@ func AdsSymbolTableEntryParse(readBuffer utils.ReadBuffer) (AdsSymbolTableEntry,
 }
 
 func (m *_AdsSymbolTableEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go b/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go
index 2a2515ead..0ddf5998f 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsTableSizes.go
@@ -215,7 +215,7 @@ func AdsTableSizesParse(readBuffer utils.ReadBuffer) (AdsTableSizes, error) {
 }
 
 func (m *_AdsTableSizes) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go b/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go
index 215df85a1..18aed3e86 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go
@@ -215,7 +215,7 @@ func AdsWriteControlRequestParse(readBuffer utils.ReadBuffer) (AdsWriteControlRe
 }
 
 func (m *_AdsWriteControlRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go b/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go
index 60bf8fc17..ca773f16e 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go
@@ -172,7 +172,7 @@ func AdsWriteControlResponseParse(readBuffer utils.ReadBuffer) (AdsWriteControlR
 }
 
 func (m *_AdsWriteControlResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go b/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go
index 8ce370371..3be6837d2 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go
@@ -215,7 +215,7 @@ func AdsWriteRequestParse(readBuffer utils.ReadBuffer) (AdsWriteRequest, error)
 }
 
 func (m *_AdsWriteRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go b/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go
index 72bf8c9fc..efbe67913 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go
@@ -172,7 +172,7 @@ func AdsWriteResponseParse(readBuffer utils.ReadBuffer) (AdsWriteResponse, error
 }
 
 func (m *_AdsWriteResponse) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsNetId.go b/plc4go/protocols/ads/readwrite/model/AmsNetId.go
index 7f397b7c0..5c9b0b3e2 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsNetId.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsNetId.go
@@ -215,7 +215,7 @@ func AmsNetIdParse(readBuffer utils.ReadBuffer) (AmsNetId, error) {
 }
 
 func (m *_AmsNetId) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
index fc112a251..3f32c43ee 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
@@ -215,7 +215,7 @@ func AmsSerialAcknowledgeFrameParse(readBuffer utils.ReadBuffer) (AmsSerialAckno
 }
 
 func (m *_AmsSerialAcknowledgeFrame) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
index c578d527e..42fc9d65f 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
@@ -239,7 +239,7 @@ func AmsSerialFrameParse(readBuffer utils.ReadBuffer) (AmsSerialFrame, error) {
 }
 
 func (m *_AmsSerialFrame) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
index 12e53c9a8..9e189b7d9 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
@@ -215,7 +215,7 @@ func AmsSerialResetFrameParse(readBuffer utils.ReadBuffer) (AmsSerialResetFrame,
 }
 
 func (m *_AmsSerialResetFrame) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go b/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
index c45ea2ef5..33f509240 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
@@ -164,7 +164,7 @@ func AmsTCPPacketParse(readBuffer utils.ReadBuffer) (AmsTCPPacket, error) {
 }
 
 func (m *_AmsTCPPacket) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go b/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go
index 54cb46c25..8c759084c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go
@@ -224,7 +224,7 @@ func APDUAbortParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUAbort,
 }
 
 func (m *_APDUAbort) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go b/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go
index 63fcbd272..afbaf3ba0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go
@@ -405,7 +405,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 }
 
 func (m *_APDUComplexAck) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go b/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go
index 7733c49df..79f5dc9ba 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go
@@ -474,7 +474,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 }
 
 func (m *_APDUConfirmedRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUError.go b/plc4go/protocols/bacnetip/readwrite/model/APDUError.go
index 4fbb9577e..f98a97916 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUError.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUError.go
@@ -230,7 +230,7 @@ func APDUErrorParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUError,
 }
 
 func (m *_APDUError) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go b/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go
index e03fc74ee..af0674e11 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go
@@ -205,7 +205,7 @@ func APDURejectParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUReject
 }
 
 func (m *_APDUReject) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go b/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go
index f0e6e8425..564830c2a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go
@@ -256,7 +256,7 @@ func APDUSegmentAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUSe
 }
 
 func (m *_APDUSegmentAck) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go b/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go
index fe37ec06d..b35972716 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go
@@ -199,7 +199,7 @@ func APDUSimpleAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUSim
 }
 
 func (m *_APDUSimpleAck) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go b/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go
index 662514470..d71c0ef50 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go
@@ -186,7 +186,7 @@ func APDUUnconfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16)
 }
 
 func (m *_APDUUnconfirmedRequest) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go b/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go
index af4379b93..97072f75f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go
@@ -177,7 +177,7 @@ func APDUUnknownParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUUnkno
 }
 
 func (m *_APDUUnknown) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
index b36da492e..fe8edca3e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
@@ -175,7 +175,7 @@ func BACnetAbortReasonTaggedParse(readBuffer utils.ReadBuffer, actualLength uint
 }
 
 func (m *_BACnetAbortReasonTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
index aae72ab76..e264613b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
@@ -211,7 +211,7 @@ func BACnetAccessAuthenticationFactorDisableTaggedParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetAccessAuthenticationFactorDisableTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
index 4f3181e6c..7706a8e88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
@@ -211,7 +211,7 @@ func BACnetAccessCredentialDisableReasonTaggedParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetAccessCredentialDisableReasonTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
index 3ec05de52..bb0155608 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
@@ -211,7 +211,7 @@ func BACnetAccessCredentialDisableTaggedParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetAccessCredentialDisableTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
index 3ca315c4c..1fa5bdead 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
@@ -211,7 +211,7 @@ func BACnetAccessEventTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 }
 
 func (m *_BACnetAccessEventTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
index 0c293b81c..c77527679 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
@@ -168,7 +168,7 @@ func BACnetAccessPassbackModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetAccessPassbackModeTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
index fa24eb9d1..38c1a3bdb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
@@ -250,7 +250,7 @@ func BACnetAccessRuleParse(readBuffer utils.ReadBuffer) (BACnetAccessRule, error
 }
 
 func (m *_BACnetAccessRule) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
index a478eb719..a787f63b1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
@@ -168,7 +168,7 @@ func BACnetAccessRuleLocationSpecifierTaggedParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetAccessRuleLocationSpecifierTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
index 9bc9e28a6..690679c58 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
@@ -168,7 +168,7 @@ func BACnetAccessRuleTimeRangeSpecifierTaggedParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetAccessRuleTimeRangeSpecifierTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
index a5afe9bf0..e83fe0d31 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
@@ -131,7 +131,7 @@ func BACnetAccessThreatLevelParse(readBuffer utils.ReadBuffer) (BACnetAccessThre
 }
 
 func (m *_BACnetAccessThreatLevel) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
index dcb4b70b0..b3b0df84c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
@@ -211,7 +211,7 @@ func BACnetAccessUserTypeTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint
 }
 
 func (m *_BACnetAccessUserTypeTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
index 01474a9d8..1123e4fa3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
@@ -211,7 +211,7 @@ func BACnetAccessZoneOccupancyStateTaggedParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetAccessZoneOccupancyStateTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
index d4d73d859..8f11998e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
@@ -203,7 +203,7 @@ func BACnetAccumulatorRecordParse(readBuffer utils.ReadBuffer) (BACnetAccumulato
 }
 
 func (m *_BACnetAccumulatorRecord) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
index 38a80d182..9321c435f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
@@ -168,7 +168,7 @@ func BACnetAccumulatorRecordAccumulatorStatusTaggedParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetAccumulatorRecordAccumulatorStatusTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
index fd18149a5..f390b9b67 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
@@ -379,7 +379,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 }
 
 func (m *_BACnetActionCommand) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
index 36f870f77..59747ecde 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
@@ -190,7 +190,7 @@ func BACnetActionListParse(readBuffer utils.ReadBuffer) (BACnetActionList, error
 }
 
 func (m *_BACnetActionList) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
index b9b7b384b..070355828 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
@@ -168,7 +168,7 @@ func BACnetActionTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8, tagCl
 }
 
 func (m *_BACnetActionTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
index 17e44959a..21585d68e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
@@ -203,7 +203,7 @@ func BACnetAddressParse(readBuffer utils.ReadBuffer) (BACnetAddress, error) {
 }
 
 func (m *_BACnetAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
index f20d06ece..bfec3c3b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
@@ -155,7 +155,7 @@ func BACnetAddressBindingParse(readBuffer utils.ReadBuffer) (BACnetAddressBindin
 }
 
 func (m *_BACnetAddressBinding) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
index c2ca102c9..238ae3262 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
@@ -183,7 +183,7 @@ func BACnetAddressEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uint8) (B
 }
 
 func (m *_BACnetAddressEnclosed) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go
index dbf160ce4..734c5c820 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go
@@ -159,7 +159,7 @@ func BACnetApplicationTagBitStringParse(readBuffer utils.ReadBuffer, header BACn
 }
 
 func (m *_BACnetApplicationTagBitString) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go
index b51772864..12f93e813 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagBooleanParse(readBuffer utils.ReadBuffer, header BACnet
 }
 
 func (m *_BACnetApplicationTagBoolean) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go
index 9f78363a7..5885faa17 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagCharacterStringParse(readBuffer utils.ReadBuffer, heade
 }
 
 func (m *_BACnetApplicationTagCharacterString) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go
index 84a705a3b..3cfd30d70 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go
@@ -159,7 +159,7 @@ func BACnetApplicationTagDateParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 }
 
 func (m *_BACnetApplicationTagDate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go
index 0423e538d..2410901a3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagDoubleParse(readBuffer utils.ReadBuffer) (BACnetApplica
 }
 
 func (m *_BACnetApplicationTagDouble) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go
index 23eac6ed5..2f2a8ea21 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagEnumeratedParse(readBuffer utils.ReadBuffer, header BAC
 }
 
 func (m *_BACnetApplicationTagEnumerated) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagNull.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagNull.go
index 723e49eef..c8599fed1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagNull.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagNull.go
@@ -124,7 +124,7 @@ func BACnetApplicationTagNullParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 }
 
 func (m *_BACnetApplicationTagNull) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go
index 8bf45d3e4..8c0f59563 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go
@@ -194,7 +194,7 @@ func BACnetApplicationTagObjectIdentifierParse(readBuffer utils.ReadBuffer) (BAC
 }
 
 func (m *_BACnetApplicationTagObjectIdentifier) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go
index 4d49ba3ef..eb8b2c393 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go
@@ -159,7 +159,7 @@ func BACnetApplicationTagOctetStringParse(readBuffer utils.ReadBuffer, header BA
 }
 
 func (m *_BACnetApplicationTagOctetString) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go
index 541c79765..d7ce288af 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagRealParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 }
 
 func (m *_BACnetApplicationTagReal) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
index b309651a9..d04976dfd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagSignedIntegerParse(readBuffer utils.ReadBuffer, header
 }
 
 func (m *_BACnetApplicationTagSignedInteger) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go
index f80ba2782..bc010be45 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go
@@ -159,7 +159,7 @@ func BACnetApplicationTagTimeParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 }
 
 func (m *_BACnetApplicationTagTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go
index 1b9624a9f..f6c0018aa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go
@@ -181,7 +181,7 @@ func BACnetApplicationTagUnsignedIntegerParse(readBuffer utils.ReadBuffer, heade
 }
 
 func (m *_BACnetApplicationTagUnsignedInteger) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
index d7cc3121b..29f127157 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
@@ -155,7 +155,7 @@ func BACnetAssignedAccessRightsParse(readBuffer utils.ReadBuffer) (BACnetAssigne
 }
 
 func (m *_BACnetAssignedAccessRights) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
index 76f249bbf..229a3f89b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
@@ -131,7 +131,7 @@ func BACnetAssignedLandingCallsParse(readBuffer utils.ReadBuffer) (BACnetAssigne
 }
 
 func (m *_BACnetAssignedLandingCalls) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
index 5efc7c8e4..e553799d2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
@@ -194,7 +194,7 @@ func BACnetAssignedLandingCallsLandingCallsListParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetAssignedLandingCallsLandingCallsList) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
index 871ecf864..c93b559d6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
@@ -155,7 +155,7 @@ func BACnetAssignedLandingCallsLandingCallsListEntryParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetAssignedLandingCallsLandingCallsListEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
index 651fbc33a..c306ca601 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
@@ -179,7 +179,7 @@ func BACnetAuthenticationFactorParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 }
 
 func (m *_BACnetAuthenticationFactor) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
index 855864239..752820f88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
@@ -183,7 +183,7 @@ func BACnetAuthenticationFactorEnclosedParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetAuthenticationFactorEnclosed) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
index 9b5e982b3..e4780a46b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
@@ -202,7 +202,7 @@ func BACnetAuthenticationFactorFormatParse(readBuffer utils.ReadBuffer) (BACnetA
 }
 
 func (m *_BACnetAuthenticationFactorFormat) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
index 76a85dbc6..f2b0dc2a5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
@@ -168,7 +168,7 @@ func BACnetAuthenticationFactorTypeTaggedParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetAuthenticationFactorTypeTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
index b40efa5bb..256e88769 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
@@ -179,7 +179,7 @@ func BACnetAuthenticationPolicyParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 }
 
 func (m *_BACnetAuthenticationPolicy) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
index 54a92bbcd..c9ba010c1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
@@ -194,7 +194,7 @@ func BACnetAuthenticationPolicyListParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetAuthenticationPolicyList) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
index 7071c2067..8579da9d6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
@@ -155,7 +155,7 @@ func BACnetAuthenticationPolicyListEntryParse(readBuffer utils.ReadBuffer) (BACn
 }
 
 func (m *_BACnetAuthenticationPolicyListEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
index 71dd79d1a..83bbf8396 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
@@ -168,7 +168,7 @@ func BACnetAuthenticationStatusTaggedParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetAuthenticationStatusTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
index a5946148f..c4b1eee8a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
@@ -211,7 +211,7 @@ func BACnetAuthorizationExemptionTaggedParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetAuthorizationExemptionTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
index 743ebd078..0bb880ff4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
@@ -211,7 +211,7 @@ func BACnetAuthorizationModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetAuthorizationModeTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
index 1ea0e2db4..90610e19b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
@@ -167,7 +167,7 @@ func BACnetBDTEntryParse(readBuffer utils.ReadBuffer) (BACnetBDTEntry, error) {
 }
 
 func (m *_BACnetBDTEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
index 37dfd58e2..22f3e8dd1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
@@ -168,7 +168,7 @@ func BACnetBackupStateTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 }
 
 func (m *_BACnetBackupStateTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
index 8dbdb2008..05315b89a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
@@ -211,7 +211,7 @@ func BACnetBinaryLightingPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetBinaryLightingPVTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
index 221f41b2f..768203d1e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
@@ -168,7 +168,7 @@ func BACnetBinaryPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8, tag
 }
 
 func (m *_BACnetBinaryPVTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
index 6e7976d14..8f0a41c7f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
@@ -227,7 +227,7 @@ func BACnetCOVMultipleSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVM
 }
 
 func (m *_BACnetCOVMultipleSubscription) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
index 58bebda33..61500c584 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
@@ -194,7 +194,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParse(readBu
 }
 
 func (m *_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
index f78ffac9f..81b2a89bc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
@@ -155,7 +155,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryParse(r
 }
 
 func (m *_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
index 60b787b5d..804262809 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
@@ -194,7 +194,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 }
 
 func (m *_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
index 1f520d9a6..58dbb273a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
@@ -191,7 +191,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 }
 
 func (m *_BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
index 375531c8f..0605b6931 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
@@ -239,7 +239,7 @@ func BACnetCOVSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVSubscript
 }
 
 func (m *_BACnetCOVSubscription) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go
index 344ee9b51..360e069ad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go
@@ -159,7 +159,7 @@ func BACnetCalendarEntryDateParse(readBuffer utils.ReadBuffer) (BACnetCalendarEn
 }
 
 func (m *_BACnetCalendarEntryDate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go
index 666677da6..659959aa7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go
@@ -159,7 +159,7 @@ func BACnetCalendarEntryDateRangeParse(readBuffer utils.ReadBuffer) (BACnetCalen
 }
 
 func (m *_BACnetCalendarEntryDateRange) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
index d4a18048a..00977fbe7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
@@ -183,7 +183,7 @@ func BACnetCalendarEntryEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uin
 }
 
 func (m *_BACnetCalendarEntryEnclosed) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go
index f9815c3b7..148fe108c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go
@@ -159,7 +159,7 @@ func BACnetCalendarEntryWeekNDayParse(readBuffer utils.ReadBuffer) (BACnetCalend
 }
 
 func (m *_BACnetCalendarEntryWeekNDay) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go
index e6d018ed5..440886101 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go
@@ -159,7 +159,7 @@ func BACnetChannelValueBitStringParse(readBuffer utils.ReadBuffer) (BACnetChanne
 }
 
 func (m *_BACnetChannelValueBitString) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go
index a3cc5cdad..ee12ae571 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go
@@ -159,7 +159,7 @@ func BACnetChannelValueBooleanParse(readBuffer utils.ReadBuffer) (BACnetChannelV
 }
 
 func (m *_BACnetChannelValueBoolean) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go
index 56bb26e83..e120c7629 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go
@@ -159,7 +159,7 @@ func BACnetChannelValueCharacterStringParse(readBuffer utils.ReadBuffer) (BACnet
 }
 
 func (m *_BACnetChannelValueCharacterString) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go
index 71911a92c..f5af47992 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go
@@ -159,7 +159,7 @@ func BACnetChannelValueDateParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 }
 
 func (m *_BACnetChannelValueDate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go
index 2f4112466..c005dee30 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go
@@ -159,7 +159,7 @@ func BACnetChannelValueDoubleParse(readBuffer utils.ReadBuffer) (BACnetChannelVa
 }
 
 func (m *_BACnetChannelValueDouble) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go
index 4440b6ac5..68093092d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go
@@ -159,7 +159,7 @@ func BACnetChannelValueEnumeratedParse(readBuffer utils.ReadBuffer) (BACnetChann
 }
 
 func (m *_BACnetChannelValueEnumerated) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go
index ed745c773..f7fe7319e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go
@@ -159,7 +159,7 @@ func BACnetChannelValueIntegerParse(readBuffer utils.ReadBuffer) (BACnetChannelV
 }
 
 func (m *_BACnetChannelValueInteger) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go
index ff6680b3d..6f520f04b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go
@@ -159,7 +159,7 @@ func BACnetChannelValueLightingCommandParse(readBuffer utils.ReadBuffer) (BACnet
 }
 
 func (m *_BACnetChannelValueLightingCommand) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go
index 4f3599ab9..0f80d0aee 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go
@@ -159,7 +159,7 @@ func BACnetChannelValueNullParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 }
 
 func (m *_BACnetChannelValueNull) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go
index fe6adbb1d..4f8a9f553 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go
@@ -159,7 +159,7 @@ func BACnetChannelValueObjectidentifierParse(readBuffer utils.ReadBuffer) (BACne
 }
 
 func (m *_BACnetChannelValueObjectidentifier) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go
index e7752297f..560a7cdc9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go
@@ -159,7 +159,7 @@ func BACnetChannelValueOctetStringParse(readBuffer utils.ReadBuffer) (BACnetChan
 }
 
 func (m *_BACnetChannelValueOctetString) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go
index 1b5739b3f..9f691e7f4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go
@@ -159,7 +159,7 @@ func BACnetChannelValueRealParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 }
 
 func (m *_BACnetChannelValueReal) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go
index 38f160542..d8f0e0979 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go
@@ -159,7 +159,7 @@ func BACnetChannelValueTimeParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 }
 
 func (m *_BACnetChannelValueTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go
index ebb258581..4f7e3a621 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go
@@ -159,7 +159,7 @@ func BACnetChannelValueUnsignedParse(readBuffer utils.ReadBuffer) (BACnetChannel
 }
 
 func (m *_BACnetChannelValueUnsigned) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go
index 6fed414ab..b66ae7c19 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go
@@ -159,7 +159,7 @@ func BACnetClientCOVNoneParse(readBuffer utils.ReadBuffer) (BACnetClientCOVNone,
 }
 
 func (m *_BACnetClientCOVNone) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go
index 9e6f59531..2af23c0d3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go
@@ -159,7 +159,7 @@ func BACnetClientCOVObjectParse(readBuffer utils.ReadBuffer) (BACnetClientCOVObj
 }
 
 func (m *_BACnetClientCOVObject) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
index b27d34c38..78575a7cf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
@@ -150,7 +150,7 @@ func BACnetClosingTagParse(readBuffer utils.ReadBuffer, tagNumberArgument uint8)
 }
 
 func (m *_BACnetClosingTag) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go
index 2d55d5ef0..10de10a87 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go
@@ -289,7 +289,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConfirmedServiceRequestAcknowledgeAlarm) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go
index 11d0d6465..7ceadfd06 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go
@@ -262,7 +262,7 @@ func BACnetConfirmedServiceRequestAddListElementParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConfirmedServiceRequestAddListElement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go
index f76ae4376..dfc575e04 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go
@@ -189,7 +189,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConfirmedServiceRequestAtomicReadFile) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go
index a2eda121f..2b2c4e6e7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go
@@ -186,7 +186,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileRecordParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestAtomicReadFileRecord) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go
index 6b71fbb6b..ec398f8ea 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go
@@ -186,7 +186,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestAtomicReadFileStream) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go
index cc0a14abc..f9d68adaf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go
@@ -287,7 +287,7 @@ func BACnetConfirmedServiceRequestAtomicWriteFileParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConfirmedServiceRequestAtomicWriteFile) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go
index 07b12e3ce..d5cb1ec5f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go
@@ -162,7 +162,7 @@ func BACnetConfirmedServiceRequestAuthenticateParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConfirmedServiceRequestAuthenticate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
index 78eaeddc9..1dfac5044 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
@@ -264,7 +264,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(readBuffer utils
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedCOVNotification) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go
index 4b7e2de44..c2585973c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go
@@ -276,7 +276,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationMultipleParse(readBuff
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go
index 6bd80dbee..f1578f5ef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go
@@ -509,7 +509,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedEventNotification) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go
index 5293864c4..4f2d80edd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go
@@ -226,7 +226,7 @@ func BACnetConfirmedServiceRequestConfirmedPrivateTransferParse(readBuffer utils
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedPrivateTransfer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go
index 71aac02e0..a0448ca09 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go
@@ -251,7 +251,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedTextMessage) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go
index 5ff31d83a..14becb6e4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacterParse
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go
index f7facc4f4..9089fef88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumericParse(r
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
index cb7147f7e..f86f25406 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
@@ -168,7 +168,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTaggedParse
 }
 
 func (m *_BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go
index 739c00bfa..56d3718c3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go
@@ -201,7 +201,7 @@ func BACnetConfirmedServiceRequestCreateObjectParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConfirmedServiceRequestCreateObject) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
index 583fb763b..9e21ba87c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
@@ -295,7 +295,7 @@ func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParse(readBuffer ut
 }
 
 func (m *_BACnetConfirmedServiceRequestCreateObjectObjectSpecifier) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go
index 58ee5dfe4..a44b288f2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go
@@ -164,7 +164,7 @@ func BACnetConfirmedServiceRequestDeleteObjectParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConfirmedServiceRequestDeleteObject) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go
index d5dcc0ac6..6fcef2c4f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go
@@ -237,7 +237,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlParse(readBuffer uti
 }
 
 func (m *_BACnetConfirmedServiceRequestDeviceCommunicationControl) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
index d32af759b..d9a4bface 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
@@ -168,7 +168,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTaggedP
 }
 
 func (m *_BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go
index 8d21fcd4b..e0bb57467 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go
@@ -345,7 +345,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestGetEnrollmentSummary) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
index 9e259be67..bb7aa2a33 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
@@ -168,7 +168,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagge
 }
 
 func (m *_BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
index 6950abfff..e50716802 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
@@ -168,7 +168,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTaggedPars
 }
 
 func (m *_BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
index ec18ce42c..8884f8ecc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
@@ -207,7 +207,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParse(readBu
 }
 
 func (m *_BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go
index 84e97dbfa..5409652f2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go
@@ -176,7 +176,7 @@ func BACnetConfirmedServiceRequestGetEventInformationParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConfirmedServiceRequestGetEventInformation) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go
index 5c3231d2f..40abe88d2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go
@@ -251,7 +251,7 @@ func BACnetConfirmedServiceRequestLifeSafetyOperationParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConfirmedServiceRequestLifeSafetyOperation) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
index 22affadfe..cf298e1c4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
@@ -226,7 +226,7 @@ func BACnetConfirmedServiceRequestReadPropertyParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConfirmedServiceRequestReadProperty) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go
index b1d82e1cd..a9b04f791 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go
@@ -162,7 +162,7 @@ func BACnetConfirmedServiceRequestReadPropertyConditionalParse(readBuffer utils.
 }
 
 func (m *_BACnetConfirmedServiceRequestReadPropertyConditional) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go
index 8c3463c3b..337b24544 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestReadPropertyMultipleParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestReadPropertyMultiple) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go
index 1cafd7b55..9ffce3ecb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go
@@ -262,7 +262,7 @@ func BACnetConfirmedServiceRequestReadRangeParse(readBuffer utils.ReadBuffer, se
 }
 
 func (m *_BACnetConfirmedServiceRequestReadRange) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go
index 536339ea8..782f75229 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go
@@ -186,7 +186,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeByPositionParse(readBuffer utils
 }
 
 func (m *_BACnetConfirmedServiceRequestReadRangeRangeByPosition) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go
index 7f03753ae..ede41cf92 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go
@@ -186,7 +186,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumberParse(readBuffer
 }
 
 func (m *_BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go
index 806dc723c..bc8d80a4d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go
@@ -186,7 +186,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeByTimeParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestReadRangeRangeByTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go
index 126d5d3bd..998b174e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go
@@ -201,7 +201,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConfirmedServiceRequestReinitializeDevice) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
index 7db09fa62..175ceb6aa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
@@ -168,7 +168,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTa
 }
 
 func (m *_BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go
index ed177e7f1..be364a2b9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go
@@ -262,7 +262,7 @@ func BACnetConfirmedServiceRequestRemoveListElementParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConfirmedServiceRequestRemoveListElement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go
index 4e6991992..121b9c291 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go
@@ -162,7 +162,7 @@ func BACnetConfirmedServiceRequestRequestKeyParse(readBuffer utils.ReadBuffer, s
 }
 
 func (m *_BACnetConfirmedServiceRequestRequestKey) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
index d514a1455..965add645 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
@@ -262,7 +262,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConfirmedServiceRequestSubscribeCOV) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go
index 45318fb05..ea6999280 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go
@@ -323,7 +323,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConfirmedServiceRequestSubscribeCOVProperty) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go
index 75d05ec4d..db17de3c5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go
@@ -298,7 +298,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleParse(readBuffer u
 }
 
 func (m *_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
index 9c713170e..8b4529174 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
@@ -214,7 +214,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 }
 
 func (m *_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
index e7fda8602..2ba313c34 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
@@ -194,7 +194,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 }
 
 func (m *_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
index a2a3074ee..a8f856c5b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
@@ -191,7 +191,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 }
 
 func (m *_BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go
index fc148f318..bdcb4e316 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go
@@ -162,7 +162,7 @@ func BACnetConfirmedServiceRequestUnknownParse(readBuffer utils.ReadBuffer, serv
 }
 
 func (m *_BACnetConfirmedServiceRequestUnknown) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go
index fe30ed0e4..40067dcd2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestVTCloseParse(readBuffer utils.ReadBuffer, serv
 }
 
 func (m *_BACnetConfirmedServiceRequestVTClose) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go
index c464d6476..0ef3d5458 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go
@@ -214,7 +214,7 @@ func BACnetConfirmedServiceRequestVTDataParse(readBuffer utils.ReadBuffer, servi
 }
 
 func (m *_BACnetConfirmedServiceRequestVTData) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go
index 8920ff8ea..4a63d4ef1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go
@@ -189,7 +189,7 @@ func BACnetConfirmedServiceRequestVTOpenParse(readBuffer utils.ReadBuffer, servi
 }
 
 func (m *_BACnetConfirmedServiceRequestVTOpen) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
index 5438c3d58..4636dc310 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
@@ -287,7 +287,7 @@ func BACnetConfirmedServiceRequestWritePropertyParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConfirmedServiceRequestWriteProperty) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go
index 6b9cf038c..9b0fa3dfc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestWritePropertyMultipleParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConfirmedServiceRequestWritePropertyMultiple) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go
index a213458f6..7e4e8391c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAPDULengthParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataAPDULength) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go
index 15b415e84..8564f7fa2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAPDUSegmentTimeoutParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataAPDUSegmentTimeout) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go
index 2661ed9ba..09b9fe91c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAPDUTimeoutParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataAPDUTimeout) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go
index c8dfd6944..91d4138e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAbsenteeLimitParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataAbsenteeLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go
index 73841b7f5..18e8730b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAcceptedModesParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataAcceptedModes) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go
index 33f7c311a..207c4978c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAccessAlarmEventsParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataAccessAlarmEvents) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessCredentialAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessCredentialAll.go
index c2777bc34..aa1227c51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessCredentialAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessCredentialAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccessCredentialAllParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAccessCredentialAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go
index daf39d57b..568cd25b6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAccessDoorAlarmValuesParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataAccessDoorAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAll.go
index 755ae4a5a..c73d8a093 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccessDoorAllParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataAccessDoorAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go
index 8a65bee80..2485945db 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAccessDoorFaultValuesParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataAccessDoorFaultValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go
index a28d8589b..29fc77f00 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessDoorPresentValueParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataAccessDoorPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go
index 759113f4a..27228fbc8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessDoorRelinquishDefaultParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConstructedDataAccessDoorRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go
index a344991a9..67e469acd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAccessDoorsParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataAccessDoors) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go
index 161a6ed43..eed7363e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessEventParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataAccessEvent) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go
index 32d02f760..161988ac9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessEventAuthenticationFactorParse(readBuffer utils.
 }
 
 func (m *_BACnetConstructedDataAccessEventAuthenticationFactor) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go
index cf4902158..ac453a522 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessEventCredentialParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataAccessEventCredential) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go
index e811242cc..f470a3a3f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessEventTagParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataAccessEventTag) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go
index ace32d9a3..97474a20c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessEventTimeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataAccessEventTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessPointAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessPointAll.go
index 0a86ab5b7..7ac154807 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessPointAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessPointAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccessPointAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataAccessPointAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessRightsAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessRightsAll.go
index ba804f514..ce2499254 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessRightsAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessRightsAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccessRightsAllParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataAccessRightsAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go
index edaa5f808..948e5acc1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAccessTransactionEventsParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAccessTransactionEvents) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessUserAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessUserAll.go
index 473c0aa79..abfac5a40 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessUserAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessUserAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccessUserAllParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataAccessUserAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go
index ffb4a55e6..c9808768e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccessZoneAdjustValueParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataAccessZoneAdjustValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go
index d8237d01c..f409fed7a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAccessZoneAlarmValuesParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataAccessZoneAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAll.go
index fc060db79..640781f0a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccessZoneAllParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataAccessZoneAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go
index 276ee66d9..c5cb108fd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccompanimentParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataAccompaniment) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go
index 7dc74baa3..e07760118 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccompanimentTimeParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataAccompanimentTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorAll.go
index 1c763903f..a44f6bbd8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAccumulatorAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataAccumulatorAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go
index 640041fcf..6065ef47d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccumulatorFaultHighLimitParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataAccumulatorFaultHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go
index af8adc861..cae319fa5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccumulatorFaultLowLimitParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataAccumulatorFaultLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go
index 6e4b706e6..0c96e8f23 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccumulatorHighLimitParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAccumulatorHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go
index 45ed94782..21ae0edfa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccumulatorLowLimitParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAccumulatorLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go
index 0223944ca..0adccc771 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccumulatorMaxPresValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAccumulatorMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go
index 8737a0539..c89868b12 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAccumulatorMinPresValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAccumulatorMinPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go
index 93b74401b..783c435ab 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAckRequiredParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataAckRequired) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go
index 765c7c388..a07245092 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAckedTransitionsParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataAckedTransitions) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go
index 4a30e4718..6d4f3dfe6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataActionParse(readBuffer utils.ReadBuffer, tagNumber uin
 }
 
 func (m *_BACnetConstructedDataAction) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go
index 3a86e69a8..3623a6705 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataActionTextParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataActionText) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go
index 9baf59368..f6b317804 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataActivationTimeParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataActivationTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go
index 11f498770..4459ea25b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataActiveAuthenticationPolicyParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataActiveAuthenticationPolicy) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go
index d0f68fcab..d26d16788 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataActiveCOVMultipleSubscriptionsParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataActiveCOVMultipleSubscriptions) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go
index bd733cadb..8cbd84c8e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataActiveCOVSubscriptionsParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataActiveCOVSubscriptions) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go
index 464ca25b4..7b71e152d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataActiveTextParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataActiveText) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go
index dbdb3b250..27ccda2f4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataActiveVTSessionsParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataActiveVTSessions) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go
index 61b9ed8ad..33f0bad4b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataActualShedLevelParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataActualShedLevel) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go
index 72ab67680..7481e132a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAdjustValueParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataAdjustValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go
index 306404687..aece03c5a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAlarmValueParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataAlarmValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go
index a291f548c..711b1bdee 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAlarmValuesParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentAll.go
index 679a3f83d..db09ef5dd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAlertEnrollmentAllParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataAlertEnrollmentAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go
index 3e7ee1c93..e16b13d16 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAlertEnrollmentPresentValueParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConstructedDataAlertEnrollmentPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go
index 8b0170d14..6e811c9e9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAlignIntervalsParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataAlignIntervals) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go
index 56e7a6ee8..c52581bdc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAllWritesSuccessfulParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAllWritesSuccessful) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go
index 50c565d4d..b5c7a5843 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAllowGroupDelayInhibitParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataAllowGroupDelayInhibit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputAll.go
index 922179e7d..45e0eb678 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAnalogInputAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataAnalogInputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go
index e3b831c51..bc177eaf3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogInputFaultHighLimitParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataAnalogInputFaultHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go
index 8596fb314..ec810950d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogInputFaultLowLimitParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataAnalogInputFaultLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go
index dd486177d..2ad5c8035 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogInputInterfaceValueParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataAnalogInputInterfaceValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go
index 373718d19..494ce8f88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogInputMaxPresValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAnalogInputMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go
index b0c24ad7e..556b37629 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogInputPresentValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAnalogInputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputAll.go
index b11a0e6ea..77b372c77 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAnalogOutputAllParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataAnalogOutputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go
index d1ab5c303..efbe45652 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogOutputInterfaceValueParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataAnalogOutputInterfaceValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go
index 944c4319c..a9c497d76 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogOutputMaxPresValueParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataAnalogOutputMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go
index 4d361bee7..17657d922 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogOutputPresentValueParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataAnalogOutputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go
index 010673696..03f26fc6b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogOutputRelinquishDefaultParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataAnalogOutputRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueAll.go
index c91ca1afd..7447e5ebe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAnalogValueAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataAnalogValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go
index d804aad8e..2f4e798c0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogValueFaultHighLimitParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataAnalogValueFaultHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go
index 06d88dada..23e2b1f0a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogValueFaultLowLimitParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataAnalogValueFaultLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go
index f9c32c7a0..3707d4617 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogValueMaxPresValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAnalogValueMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go
index c781016c0..310ff4064 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogValuePresentValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAnalogValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go
index f8e4895c0..41645723c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAnalogValueRelinquishDefaultParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataAnalogValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go
index b2de2d5bc..2e794f9ff 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataApplicationSoftwareVersionParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataApplicationSoftwareVersion) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go
index 58d3b0c2b..10361ea60 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataArchiveParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataArchive) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go
index 3e822c37f..e364f6582 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAssignedAccessRightsParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAssignedAccessRights) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go
index 9c8a2c898..616c56329 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAssignedLandingCallsParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAssignedLandingCalls) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go
index 98eb0b9f9..feb949261 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAttemptedSamplesParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataAttemptedSamples) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go
index 944a8a426..85abeadf3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAuthenticationFactorsParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataAuthenticationFactors) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go
index 653e375b3..be7f02ed6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAuthenticationPolicyListParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataAuthenticationPolicyList) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go
index 2f68eece0..a167be40d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataAuthenticationPolicyNamesParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataAuthenticationPolicyNames) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go
index a4a251e61..bd31c2ae8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAuthenticationStatusParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataAuthenticationStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go
index 2eb31a218..a0fd8cb93 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataAuthorizationExemptionsParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataAuthorizationExemptions) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go
index eb97c123a..1b6f5c950 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAuthorizationModeParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataAuthorizationMode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go
index 9270af772..36d582fe6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAutoSlaveDiscoveryParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataAutoSlaveDiscovery) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go
index 0ec253942..338fc742a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataAverageValueParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataAverageValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAveragingAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAveragingAll.go
index 7d1a725ed..9457893ea 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAveragingAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAveragingAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataAveragingAllParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataAveragingAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go
index 1c9efc6cd..684aeebfa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPGlobalAddressParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataBACnetIPGlobalAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go
index e0c827418..7ac5f568b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPModeParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataBACnetIPMode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go
index bf5039aa0..dec429b31 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPMulticastAddressParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataBACnetIPMulticastAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go
index def0c679e..42bbcc429 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPNATTraversalParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataBACnetIPNATTraversal) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go
index 62ba2b06f..6615cba6c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPUDPPortParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataBACnetIPUDPPort) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go
index c7838efb1..dfcac00ed 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPv6ModeParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataBACnetIPv6Mode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go
index 37b4245b1..859eb9d55 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPv6MulticastAddressParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataBACnetIPv6MulticastAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go
index 3711852cf..8a6772627 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBACnetIPv6UDPPortParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataBACnetIPv6UDPPort) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go
index 89367991d..b66875a85 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBBMDAcceptFDRegistrationsParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataBBMDAcceptFDRegistrations) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go
index b4f070109..b7d5d51da 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataBBMDBroadcastDistributionTableParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataBBMDBroadcastDistributionTable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go
index 4c62ab4a0..6d4be75ff 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataBBMDForeignDeviceTableParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataBBMDForeignDeviceTable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go
index bde0027ab..f3bb5ecd4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBackupAndRestoreStateParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataBackupAndRestoreState) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go
index b44b85e2f..fb23ece8c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBackupFailureTimeoutParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataBackupFailureTimeout) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go
index 6d09fc27b..66c72ce1b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBackupPreparationTimeParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataBackupPreparationTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go
index e0b9d949d..430cbdf9b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBaseDeviceSecurityPolicyParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataBaseDeviceSecurityPolicy) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go
index cb77f5d3d..a5d43be1f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBelongsToParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataBelongsTo) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go
index b92eb40f1..e2cc0324d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBiasParse(readBuffer utils.ReadBuffer, tagNumber uint8
 }
 
 func (m *_BACnetConstructedDataBias) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputAll.go
index 8b6e1020a..8cdd0a765 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataBinaryInputAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataBinaryInputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go
index dda385401..1c3686604 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryInputInterfaceValueParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataBinaryInputInterfaceValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go
index c2d6ccb12..be90acca4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryInputPresentValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataBinaryInputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputAll.go
index 86f9efc83..40cffb462 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataBinaryLightingOutputAllParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataBinaryLightingOutputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go
index f7dfde277..a529df3ac 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryLightingOutputFeedbackValueParse(readBuffer util
 }
 
 func (m *_BACnetConstructedDataBinaryLightingOutputFeedbackValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go
index cd5d6c3d6..c2bb37aef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryLightingOutputPresentValueParse(readBuffer utils
 }
 
 func (m *_BACnetConstructedDataBinaryLightingOutputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go
index 9c6134403..cd2d6cb27 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryLightingOutputRelinquishDefaultParse(readBuffer
 }
 
 func (m *_BACnetConstructedDataBinaryLightingOutputRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputAll.go
index d16e7ff98..4e84b1621 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataBinaryOutputAllParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataBinaryOutputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go
index b533fd6f9..8f917d3ff 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryOutputFeedbackValueParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataBinaryOutputFeedbackValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go
index cd71b8372..e2cadb2d4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryOutputInterfaceValueParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataBinaryOutputInterfaceValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go
index c0e2221d7..86cc59622 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryOutputPresentValueParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataBinaryOutputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go
index a7376e946..0f1fa66c7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryOutputRelinquishDefaultParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataBinaryOutputRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueAll.go
index d2bdb2722..79f64d720 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataBinaryValueAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataBinaryValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go
index 4847a5cf3..3fda87a54 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryValuePresentValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataBinaryValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go
index 09c7e9c12..3c95864fa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBinaryValueRelinquishDefaultParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataBinaryValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go
index 0409a9889..e09a84789 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBitMaskParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataBitMask) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go
index 8157cb49e..58bbf369c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataBitStringValueAlarmValuesParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataBitStringValueAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go
index 936bbfbee..a69aabb5c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBitStringValuePresentValueParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataBitStringValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go
index 4f63f9b07..7df6a3751 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBitStringValueRelinquishDefaultParse(readBuffer utils.
 }
 
 func (m *_BACnetConstructedDataBitStringValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go
index d61ce6939..9cf50e25c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataBitTextParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataBitText) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitstringValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitstringValueAll.go
index 8d5a8c84b..8b4fb9556 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitstringValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitstringValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataBitstringValueAllParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataBitstringValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go
index 6c4e5354e..2e01e8208 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBlinkWarnEnableParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataBlinkWarnEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go
index c87d4ecd9..7007cc4f3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataBufferSizeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataBufferSize) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go
index 4acf938cf..cd53046b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCOVIncrementParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataCOVIncrement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go
index 737a93949..724e474a9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCOVPeriodParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataCOVPeriod) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go
index aa7f7d8a7..62b554b6d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCOVResubscriptionIntervalParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataCOVResubscriptionInterval) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go
index d3d700b18..df2e6b58d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCOVUPeriodParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataCOVUPeriod) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go
index 46a383a19..e8a64b30c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataCOVURecipientsParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataCOVURecipients) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarAll.go
index 68febfe54..ad74d67e4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataCalendarAllParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataCalendarAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go
index 31f0b0c7e..e4408d6ef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCalendarPresentValueParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataCalendarPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go
index 51bfb2dac..237487909 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarAssignedDirectionParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataCarAssignedDirection) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go
index 65637407c..b70e97f2f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataCarDoorCommandParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataCarDoorCommand) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go
index 5871a0383..b6480b492 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataCarDoorStatusParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataCarDoorStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go
index 0f4d2cae3..b82a87ee5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataCarDoorTextParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataCarDoorText) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go
index 6f72fadaa..3c2d1b2c5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarDoorZoneParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataCarDoorZone) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go
index 5f7648d15..7b7e542b4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarDriveStatusParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataCarDriveStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go
index eb726c02f..31e3cbf27 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarLoadParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataCarLoad) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go
index cc05ad736..2787d7124 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarLoadUnitsParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataCarLoadUnits) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go
index ace9598a1..1d8940053 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarModeParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataCarMode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go
index d278258de..c0b1a5dee 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarMovingDirectionParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataCarMovingDirection) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go
index 204a7d5f7..c431920fd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCarPositionParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataCarPosition) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go
index 07a4d3404..5a46ca23d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataChangeOfStateCountParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataChangeOfStateCount) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go
index a89c23fad..fa00031c4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataChangeOfStateTimeParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataChangeOfStateTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go
index 94cfa6473..5eae82a9f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataChangesPendingParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataChangesPending) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelAll.go
index f4c262774..937c1c956 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataChannelAllParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataChannelAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go
index c0449209d..56c55595d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataChannelListOfObjectPropertyReferencesParse(readBuffer
 }
 
 func (m *_BACnetConstructedDataChannelListOfObjectPropertyReferences) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go
index ecaddded7..f77ded25e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataChannelNumberParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataChannelNumber) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go
index 2415ae3ee..7e97ba699 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataChannelPresentValueParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataChannelPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go
index 3eb04344f..361cdd710 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataCharacterStringValueAlarmValuesParse(readBuffer utils.
 }
 
 func (m *_BACnetConstructedDataCharacterStringValueAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go
index f83004a87..beb490dfb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataCharacterStringValueFaultValuesParse(readBuffer utils.
 }
 
 func (m *_BACnetConstructedDataCharacterStringValueFaultValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go
index 953b18fbc..16ee118fc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCharacterStringValuePresentValueParse(readBuffer utils
 }
 
 func (m *_BACnetConstructedDataCharacterStringValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go
index bad7cd4ae..9617409ab 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCharacterStringValueRelinquishDefaultParse(readBuffer
 }
 
 func (m *_BACnetConstructedDataCharacterStringValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterstringValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterstringValueAll.go
index 18f53d02d..b62ebf690 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterstringValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterstringValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataCharacterstringValueAllParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataCharacterstringValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go
index 34f40b3bd..4f46c6566 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataClientCOVIncrementParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataClientCOVIncrement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go
index 81d7eb14b..67b885673 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCommandParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataCommand) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go
index 5325ac987..982b482f0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataCommandActionParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataCommandAction) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAll.go
index 338465075..5af86d82b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataCommandAllParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataCommandAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go
index 363562c7f..740928184 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go
@@ -249,7 +249,7 @@ func BACnetConstructedDataCommandTimeArrayParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataCommandTimeArray) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go
index ca8046167..0a482da61 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataConfigurationFilesParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataConfigurationFiles) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go
index dd8623490..881f645ad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataControlGroupsParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataControlGroups) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go
index 5ff5c54e4..fd6b7d490 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataControlledVariableReferenceParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConstructedDataControlledVariableReference) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go
index 53902111b..ae5c3a495 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataControlledVariableUnitsParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataControlledVariableUnits) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go
index 186c53189..91bc88db5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataControlledVariableValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataControlledVariableValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go
index 9c30ad24c..0fea44d68 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCountParse(readBuffer utils.ReadBuffer, tagNumber uint
 }
 
 func (m *_BACnetConstructedDataCount) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go
index 6b40a65a0..32ebc1d0a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCountBeforeChangeParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataCountBeforeChange) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go
index 9d04ea907..a4a32cff4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCountChangeTimeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataCountChangeTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputAll.go
index 495f7d996..7ab5840e1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataCredentialDataInputAllParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataCredentialDataInputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go
index a622d1105..b8ac4f2b0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCredentialDataInputPresentValueParse(readBuffer utils.
 }
 
 func (m *_BACnetConstructedDataCredentialDataInputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go
index 6df4bb9ac..26a570111 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCredentialDataInputUpdateTimeParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataCredentialDataInputUpdateTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go
index fb700417f..06c30ed6a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCredentialDisableParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataCredentialDisable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go
index ec7733e62..ab34415a6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCredentialStatusParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataCredentialStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go
index 271ba7d87..6fe308e2c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataCredentialsParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataCredentials) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go
index 09b5d80d2..8f765e27c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataCredentialsInZoneParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataCredentialsInZone) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go
index b60b7f88b..e218c3c02 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataCurrentCommandPriorityParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataCurrentCommandPriority) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go
index ebd2317ad..aa3eb55c8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDatabaseRevisionParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataDatabaseRevision) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go
index abbcf78c7..10b94b8ad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataDateListParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataDateList) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go
index 89c630ed9..d3738e295 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDatePatternValuePresentValueParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataDatePatternValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go
index 94a9ca395..9e52d3211 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDatePatternValueRelinquishDefaultParse(readBuffer util
 }
 
 func (m *_BACnetConstructedDataDatePatternValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go
index d1e6c26b2..7f64d7111 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDateTimePatternValuePresentValueParse(readBuffer utils
 }
 
 func (m *_BACnetConstructedDataDateTimePatternValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go
index afe1177ec..f04374feb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDateTimePatternValueRelinquishDefaultParse(readBuffer
 }
 
 func (m *_BACnetConstructedDataDateTimePatternValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go
index 707957264..42927be7d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDateTimeValuePresentValueParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataDateTimeValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go
index 58122a5b7..cbf2ca4ae 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDateTimeValueRelinquishDefaultParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataDateTimeValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueAll.go
index 61663c142..901b60f76 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataDateValueAllParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataDateValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go
index 13a0b5726..b760fa569 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDateValuePresentValueParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataDateValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go
index 36f9a95ae..f6693a62a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDateValueRelinquishDefaultParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataDateValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatepatternValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatepatternValueAll.go
index bb5ac25a8..f17686074 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatepatternValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatepatternValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataDatepatternValueAllParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataDatepatternValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimeValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimeValueAll.go
index 536060075..19279d581 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimeValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimeValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataDatetimeValueAllParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataDatetimeValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimepatternValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimepatternValueAll.go
index f128b24a9..910393b51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimepatternValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatetimepatternValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataDatetimepatternValueAllParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataDatetimepatternValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go
index c66eff500..ba49d0cf6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDaylightSavingsStatusParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataDaylightSavingsStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go
index 6598c4006..2f0a03b72 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDaysRemainingParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataDaysRemaining) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go
index 90100b18b..fce9597ac 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDeadbandParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataDeadband) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go
index 2fe2fec65..876c753d3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDefaultFadeTimeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataDefaultFadeTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go
index aa30d4c70..30c163aa7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDefaultRampRateParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataDefaultRampRate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go
index 4e576f4e9..5eb5668c3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDefaultStepIncrementParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataDefaultStepIncrement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go
index 4e5fcd792..7e2e2e67d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDefaultSubordinateRelationshipParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataDefaultSubordinateRelationship) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go
index d7e62157c..22324a0a1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDefaultTimeoutParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataDefaultTimeout) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go
index 0b6d17ded..4025acb1e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDeployedProfileLocationParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataDeployedProfileLocation) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go
index 1dc530646..5f2d6612a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDerivativeConstantParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataDerivativeConstant) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go
index 98847fabd..2dc807ed4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDerivativeConstantUnitsParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataDerivativeConstantUnits) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go
index 01ea19040..43f4d2fb4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDescriptionParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataDescription) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go
index 35e84bd42..b4c802254 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDescriptionOfHaltParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataDescriptionOfHalt) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go
index 6487be778..8bef1a1b7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataDeviceAddressBindingParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataDeviceAddressBinding) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAll.go
index cae04243b..6e8445332 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataDeviceAllParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataDeviceAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go
index 3be5afdd6..cc55c4ece 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDeviceMaxInfoFramesParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataDeviceMaxInfoFrames) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go
index 4c04c3cda..781785f8a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDeviceMaxMasterParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataDeviceMaxMaster) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go
index 394c71ba6..b137a49c0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDeviceTypeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataDeviceType) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go
index 891278543..22973e98d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDirectReadingParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataDirectReading) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go
index b61e2745f..3cc6b4fad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDistributionKeyRevisionParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataDistributionKeyRevision) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go
index bf6293da3..597784c10 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoNotHideParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataDoNotHide) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go
index 728fe0c1e..8d1a6b703 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoorAlarmStateParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataDoorAlarmState) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go
index d9b8db4d0..de7e49b11 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoorExtendedPulseTimeParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataDoorExtendedPulseTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go
index 0fe375ace..8bc7e9535 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataDoorMembersParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataDoorMembers) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go
index c3946b594..ad56def45 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoorOpenTooLongTimeParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataDoorOpenTooLongTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go
index ec129904b..982f91253 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoorPulseTimeParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataDoorPulseTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go
index 096c960e8..49e5b99f6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoorStatusParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataDoorStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go
index 3df9ff9cf..59bd90df1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDoorUnlockDelayTimeParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataDoorUnlockDelayTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go
index c39566100..37605c19b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataDutyWindowParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataDutyWindow) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go
index 7a3ed9f2b..d1ae4e210 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEffectivePeriodParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataEffectivePeriod) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go
index 9c073e738..8b1c31f76 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEgressActiveParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataEgressActive) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go
index 61780b480..163e55de2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEgressTimeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataEgressTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go
index 81bc22424..ec38e15ca 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataElapsedActiveTimeParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataElapsedActiveTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
index ead5fcb6f..94a0540fc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
@@ -332,7 +332,7 @@ func BACnetConstructedDataElementParse(readBuffer utils.ReadBuffer, objectTypeAr
 }
 
 func (m *_BACnetConstructedDataElement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go
index 63dad11c7..8b7f9b150 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataElevatorGroupParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataElevatorGroup) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupAll.go
index 7dfb72cc7..635fc7d6a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataElevatorGroupAllParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataElevatorGroupAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go
index 9258d1647..66df53629 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataElevatorGroupGroupMembersParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataElevatorGroupGroupMembers) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnable.go
index f54b613fe..f4b0089e9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEnableParse(readBuffer utils.ReadBuffer, tagNumber uin
 }
 
 func (m *_BACnetConstructedDataEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeter.go
index a6d99cd54..68ea2747e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeter.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEnergyMeterParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataEnergyMeter) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeterRef.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeterRef.go
index e63259b6c..ccaade04e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeterRef.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnergyMeterRef.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEnergyMeterRefParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataEnergyMeterRef) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEntryPoints.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEntryPoints.go
index f749c0c0c..08712c5ce 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEntryPoints.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEntryPoints.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataEntryPointsParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataEntryPoints) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataErrorLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataErrorLimit.go
index 4579d7c8a..f96d77f9b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataErrorLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataErrorLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataErrorLimitParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataErrorLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorAll.go
index 2be87185e..edf10ba59 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataEscalatorAllParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataEscalatorAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorFaultSignals.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorFaultSignals.go
index eaf15a6d8..f2776b6f6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorFaultSignals.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorFaultSignals.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataEscalatorFaultSignalsParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataEscalatorFaultSignals) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorMode.go
index b712e094d..bbbc843f0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEscalatorMode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEscalatorModeParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataEscalatorMode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibit.go
index 7a38c98be..826148eb6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventAlgorithmInhibitParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataEventAlgorithmInhibit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibitRef.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibitRef.go
index b0f6952e7..aab869f34 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibitRef.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventAlgorithmInhibitRef.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventAlgorithmInhibitRefParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataEventAlgorithmInhibitRef) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventDetectionEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventDetectionEnable.go
index dc8fb71f4..011b4b453 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventDetectionEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventDetectionEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventDetectionEnableParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataEventDetectionEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnable.go
index 380181114..4a614894b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventEnableParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataEventEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnrollmentAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnrollmentAll.go
index 52b8a0a0a..fc3938769 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnrollmentAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventEnrollmentAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataEventEnrollmentAllParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataEventEnrollmentAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogAll.go
index 7e12ba2bc..6f54909df 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataEventLogAllParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataEventLogAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogLogBuffer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogLogBuffer.go
index da09bece7..3ddd57e42 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogLogBuffer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventLogLogBuffer.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataEventLogLogBufferParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataEventLogLogBuffer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTexts.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTexts.go
index bc023147b..ae380adc7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTexts.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTexts.go
@@ -294,7 +294,7 @@ func BACnetConstructedDataEventMessageTextsParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataEventMessageTexts) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTextsConfig.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTextsConfig.go
index 918b0fc34..f59b0c282 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTextsConfig.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventMessageTextsConfig.go
@@ -294,7 +294,7 @@ func BACnetConstructedDataEventMessageTextsConfigParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataEventMessageTextsConfig) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventParameters.go
index b92a48cdb..684ca5418 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventParameters.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventParametersParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataEventParameters) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventState.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventState.go
index ad417ef25..a46e5bd8b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventState.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventState.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventStateParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataEventState) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventTimeStamps.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventTimeStamps.go
index ba7463d0e..06102564a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventTimeStamps.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventTimeStamps.go
@@ -294,7 +294,7 @@ func BACnetConstructedDataEventTimeStampsParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataEventTimeStamps) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventType.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventType.go
index 0294ff227..af6a48d43 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventType.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEventType.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataEventTypeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataEventType) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExceptionSchedule.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExceptionSchedule.go
index 4d78e3e4d..92a15922f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExceptionSchedule.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExceptionSchedule.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataExceptionScheduleParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataExceptionSchedule) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExecutionDelay.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExecutionDelay.go
index 5b4f848d8..23402c96a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExecutionDelay.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExecutionDelay.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataExecutionDelayParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataExecutionDelay) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExitPoints.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExitPoints.go
index e3849e6e0..2ebe4da79 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExitPoints.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExitPoints.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataExitPointsParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataExitPoints) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpectedShedLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpectedShedLevel.go
index 40065b8df..018cfbdbe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpectedShedLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpectedShedLevel.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataExpectedShedLevelParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataExpectedShedLevel) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpirationTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpirationTime.go
index 273fd1eef..6310d92b6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpirationTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExpirationTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataExpirationTimeParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataExpirationTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExtendedTimeEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExtendedTimeEnable.go
index 56991a514..3d68cd6d1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExtendedTimeEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataExtendedTimeEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataExtendedTimeEnableParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataExtendedTimeEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDBBMDAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDBBMDAddress.go
index ea4f3e478..d6c39dca9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDBBMDAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDBBMDAddress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFDBBMDAddressParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataFDBBMDAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDSubscriptionLifetime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDSubscriptionLifetime.go
index da430afed..e12f3cc98 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDSubscriptionLifetime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFDSubscriptionLifetime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFDSubscriptionLifetimeParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataFDSubscriptionLifetime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptEvents.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptEvents.go
index a82fd9007..900920847 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptEvents.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptEvents.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataFailedAttemptEventsParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataFailedAttemptEvents) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttempts.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttempts.go
index ef2f77a7a..54cadd054 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttempts.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttempts.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFailedAttemptsParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataFailedAttempts) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptsTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptsTime.go
index f93d9c136..e1c9c5fbb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptsTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFailedAttemptsTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFailedAttemptsTimeParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataFailedAttemptsTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultHighLimit.go
index 8209904dc..911e7ea9e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFaultHighLimitParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataFaultHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultLowLimit.go
index 8a95605ac..0e1d58d22 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFaultLowLimitParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataFaultLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultParameters.go
index 4da3e89f1..a6270fcbb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultParameters.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFaultParametersParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataFaultParameters) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultSignals.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultSignals.go
index 0fd4e58c4..8dcde8710 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultSignals.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultSignals.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataFaultSignalsParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataFaultSignals) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultType.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultType.go
index 7967dbf76..dfdda5539 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultType.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultType.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFaultTypeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataFaultType) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultValues.go
index 8b07c5fc9..fdb164db4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFaultValues.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataFaultValuesParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataFaultValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAccessMethod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAccessMethod.go
index ae02fdc74..2c4a160c1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAccessMethod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAccessMethod.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFileAccessMethodParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataFileAccessMethod) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAll.go
index d1967e680..c7352d69a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataFileAllParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataFileAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileRecordCount.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileRecordCount.go
index 652c2b757..5a120b599 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileRecordCount.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileRecordCount.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFileRecordCountParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataFileRecordCount) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileSize.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileSize.go
index 90862485a..a7ec3a692 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileSize.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileSize.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFileSizeParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataFileSize) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileType.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileType.go
index 4d7712aa4..b42a3445f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileType.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFileType.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFileTypeParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataFileType) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFirmwareRevision.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFirmwareRevision.go
index 59fe49eb3..857107f7a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFirmwareRevision.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFirmwareRevision.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFirmwareRevisionParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataFirmwareRevision) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFloorText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFloorText.go
index 89153bdc4..94ab966c6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFloorText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFloorText.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataFloorTextParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataFloorText) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFullDutyBaseline.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFullDutyBaseline.go
index 8ba226689..77d1ce10f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFullDutyBaseline.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataFullDutyBaseline.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataFullDutyBaselineParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataFullDutyBaseline) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupAll.go
index fcc4386f4..7c5ba447f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataGlobalGroupAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataGlobalGroupAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupGroupMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupGroupMembers.go
index 2282cdc5a..dfd4f5768 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupGroupMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupGroupMembers.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataGlobalGroupGroupMembersParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataGlobalGroupGroupMembers) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupPresentValue.go
index edb36b096..8a3377a93 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalGroupPresentValue.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataGlobalGroupPresentValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataGlobalGroupPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalIdentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalIdentifier.go
index c64353e3a..46fc4aa64 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalIdentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGlobalIdentifier.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataGlobalIdentifierParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataGlobalIdentifier) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupAll.go
index 1ed3ee88e..f23d4f46f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataGroupAllParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataGroupAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupID.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupID.go
index e85a2bcaf..1fe19dfad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupID.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupID.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataGroupIDParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataGroupID) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMemberNames.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMemberNames.go
index 8b7d876a5..857a4866b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMemberNames.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMemberNames.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataGroupMemberNamesParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataGroupMemberNames) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMembers.go
index e19a7eb67..8d4166b81 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMembers.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataGroupMembersParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataGroupMembers) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMode.go
index 1eccaef14..01a75ebc3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupMode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataGroupModeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataGroupMode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupPresentValue.go
index 3cc3f5391..90632630e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataGroupPresentValue.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataGroupPresentValueParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataGroupPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHighLimit.go
index 9ed83076c..50c46dfe8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataHighLimitParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHigherDeck.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHigherDeck.go
index cbcc9ebb1..f34be6ff2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHigherDeck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataHigherDeck.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataHigherDeckParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataHigherDeck) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPAddress.go
index bbc0e5d76..c8377388e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPAddress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPAddressParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataIPAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPEnable.go
index 61d224839..a52a3009b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPDHCPEnableParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataIPDHCPEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTime.go
index 955e78275..af1ca812b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPDHCPLeaseTimeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataIPDHCPLeaseTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTimeRemaining.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTimeRemaining.go
index a965395c8..396054a6b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTimeRemaining.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPLeaseTimeRemaining.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPDHCPLeaseTimeRemainingParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataIPDHCPLeaseTimeRemaining) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPServer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPServer.go
index 1d08a6bed..4a05abff8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPServer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDHCPServer.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPDHCPServerParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataIPDHCPServer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDNSServer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDNSServer.go
index 8afc5b446..8b34a72f3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDNSServer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDNSServer.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataIPDNSServerParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataIPDNSServer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDefaultGateway.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDefaultGateway.go
index 2e6b2f7b3..ee5758797 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDefaultGateway.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPDefaultGateway.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPDefaultGatewayParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataIPDefaultGateway) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPSubnetMask.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPSubnetMask.go
index fea412553..316ab485c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPSubnetMask.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPSubnetMask.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPSubnetMaskParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataIPSubnetMask) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6Address.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6Address.go
index 08b3410db..56efba2b0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6Address.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6Address.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6AddressParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataIPv6Address) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6AutoAddressingEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6AutoAddressingEnable.go
index 8e1cdeebc..8dc33df79 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6AutoAddressingEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6AutoAddressingEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6AutoAddressingEnableParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataIPv6AutoAddressingEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTime.go
index 86d2db988..ff7996b88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6DHCPLeaseTimeParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataIPv6DHCPLeaseTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTimeRemaining.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTimeRemaining.go
index 3582e7964..5b8f28f30 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTimeRemaining.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPLeaseTimeRemaining.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6DHCPLeaseTimeRemainingParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataIPv6DHCPLeaseTimeRemaining) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPServer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPServer.go
index 4c1859979..b1c42cedb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPServer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DHCPServer.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6DHCPServerParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataIPv6DHCPServer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DNSServer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DNSServer.go
index ed391bf34..caa5e2fbd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DNSServer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DNSServer.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataIPv6DNSServerParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataIPv6DNSServer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DefaultGateway.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DefaultGateway.go
index 218a181fe..07c838552 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DefaultGateway.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6DefaultGateway.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6DefaultGatewayParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataIPv6DefaultGateway) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6PrefixLength.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6PrefixLength.go
index eec55edd3..2d96e7463 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6PrefixLength.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6PrefixLength.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6PrefixLengthParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataIPv6PrefixLength) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6ZoneIndex.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6ZoneIndex.go
index 13874fc01..6c5ff5fbc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6ZoneIndex.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIPv6ZoneIndex.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIPv6ZoneIndexParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataIPv6ZoneIndex) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProcess.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProcess.go
index 67f06a394..f9c7f3151 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProcess.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProcess.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInProcessParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataInProcess) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProgress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProgress.go
index dacc8a0b3..c14eb09fa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProgress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInProgress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInProgressParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataInProgress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInactiveText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInactiveText.go
index e83ab53ea..9c61c24c4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInactiveText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInactiveText.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInactiveTextParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataInactiveText) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInitialTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInitialTimeout.go
index 6fcd53a2d..9985c838e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInitialTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInitialTimeout.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInitialTimeoutParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataInitialTimeout) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInputReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInputReference.go
index b7922a066..062c0fcb6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInputReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInputReference.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInputReferenceParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataInputReference) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstallationID.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstallationID.go
index bfb442fc0..4bfb00002 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstallationID.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstallationID.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInstallationIDParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataInstallationID) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstanceOf.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstanceOf.go
index 0702e4287..de69adb9f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstanceOf.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstanceOf.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInstanceOfParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataInstanceOf) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstantaneousPower.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstantaneousPower.go
index 04b0c1c8f..46dde1f93 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstantaneousPower.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataInstantaneousPower.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataInstantaneousPowerParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataInstantaneousPower) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueAll.go
index b87041de1..df06115b9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataIntegerValueAllParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataIntegerValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueCOVIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueCOVIncrement.go
index 870257c50..0fc10d4b4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueCOVIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueCOVIncrement.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueCOVIncrementParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataIntegerValueCOVIncrement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueDeadband.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueDeadband.go
index a319457d9..81684850b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueDeadband.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueDeadband.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueDeadbandParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataIntegerValueDeadband) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultHighLimit.go
index 1c3ecbcb4..acf08d300 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueFaultHighLimitParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataIntegerValueFaultHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultLowLimit.go
index f3a33faeb..789af6267 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueFaultLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueFaultLowLimitParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataIntegerValueFaultLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueHighLimit.go
index 6cdcacab5..d870cf84b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueHighLimitParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataIntegerValueHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueLowLimit.go
index ee90493c2..54f9b10d2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueLowLimitParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataIntegerValueLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMaxPresValue.go
index 90c646e7f..1c93911b0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueMaxPresValueParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataIntegerValueMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMinPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMinPresValue.go
index b5b3a1175..556fe4b72 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMinPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueMinPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueMinPresValueParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataIntegerValueMinPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValuePresentValue.go
index 2aaa1647d..9970e1c60 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValuePresentValueParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataIntegerValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueRelinquishDefault.go
index a8bf057ef..00b92c8f6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueRelinquishDefaultParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataIntegerValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueResolution.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueResolution.go
index 47b6711d0..e7949c8dd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueResolution.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegerValueResolution.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegerValueResolutionParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataIntegerValueResolution) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstant.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstant.go
index 84431e0fc..d9a85fc3a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstant.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstant.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegralConstantParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataIntegralConstant) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstantUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstantUnits.go
index 3180671a3..c18e35223 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstantUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntegralConstantUnits.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntegralConstantUnitsParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataIntegralConstantUnits) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntervalOffset.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntervalOffset.go
index 2ae5eed86..7078eabcd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntervalOffset.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIntervalOffset.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIntervalOffsetParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataIntervalOffset) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIsUTC.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIsUTC.go
index 30d1a308b..0a8e254b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIsUTC.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataIsUTC.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataIsUTCParse(readBuffer utils.ReadBuffer, tagNumber uint
 }
 
 func (m *_BACnetConstructedDataIsUTC) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataKeySets.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataKeySets.go
index b15d4efda..432bb00c2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataKeySets.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataKeySets.go
@@ -249,7 +249,7 @@ func BACnetConstructedDataKeySetsParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataKeySets) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCallControl.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCallControl.go
index c934d932d..fb99ea097 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCallControl.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCallControl.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLandingCallControlParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataLandingCallControl) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCalls.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCalls.go
index 3658867b7..03f6733d4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCalls.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingCalls.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLandingCallsParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataLandingCalls) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingDoorStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingDoorStatus.go
index 8a759f633..a9b1bfc8a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingDoorStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLandingDoorStatus.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataLandingDoorStatusParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataLandingDoorStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueAll.go
index fbd79edda..73a4edac4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLargeAnalogValueAllParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueCOVIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueCOVIncrement.go
index ed6462ab7..dc956c46c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueCOVIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueCOVIncrement.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueCOVIncrementParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueCOVIncrement) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueDeadband.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueDeadband.go
index ee01c2017..573e188e5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueDeadband.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueDeadband.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueDeadbandParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueDeadband) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultHighLimit.go
index 91bcafaf5..f727c087d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueFaultHighLimitParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueFaultHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultLowLimit.go
index 802767c2d..92df5361e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueFaultLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueFaultLowLimitParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueFaultLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueHighLimit.go
index bd8305827..88be972e1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueHighLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueHighLimitParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueHighLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueLowLimit.go
index c00e76ade..6f598b540 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueLowLimitParse(readBuffer utils.ReadBuf
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMaxPresValue.go
index d414bb1a5..2b46a43b6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueMaxPresValueParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMinPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMinPresValue.go
index 8078ed8c1..a8c56fc50 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMinPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueMinPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueMinPresValueParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueMinPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValuePresentValue.go
index 84aba8088..581c92a4a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValuePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValuePresentValueParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValuePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueRelinquishDefault.go
index 943637466..3951701cd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueRelinquishDefaultParse(readBuffer util
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueResolution.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueResolution.go
index 1c53075b9..32fd87b78 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueResolution.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLargeAnalogValueResolution.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLargeAnalogValueResolutionParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataLargeAnalogValueResolution) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessEvent.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessEvent.go
index f69414a01..9e25c205b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessEvent.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessEvent.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastAccessEventParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataLastAccessEvent) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessPoint.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessPoint.go
index e40bad784..552e58b4f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessPoint.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastAccessPoint.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastAccessPointParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataLastAccessPoint) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCommandTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCommandTime.go
index d25184911..8fb654a6a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCommandTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCommandTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastCommandTimeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataLastCommandTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAdded.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAdded.go
index 31d5a3e8d..7bdebfb40 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAdded.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAdded.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastCredentialAddedParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataLastCredentialAdded) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAddedTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAddedTime.go
index e58b72bcb..1d95141dd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAddedTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialAddedTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastCredentialAddedTimeParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataLastCredentialAddedTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemoved.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemoved.go
index 5d13a4bf5..638ea1712 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemoved.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemoved.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastCredentialRemovedParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataLastCredentialRemoved) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemovedTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemovedTime.go
index 245f1c4f4..f82c2ddf1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemovedTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastCredentialRemovedTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastCredentialRemovedTimeParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataLastCredentialRemovedTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastKeyServer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastKeyServer.go
index 7fe0a84b4..593d5bbfe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastKeyServer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastKeyServer.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastKeyServerParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataLastKeyServer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastNotifyRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastNotifyRecord.go
index 3a37ca181..84290d349 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastNotifyRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastNotifyRecord.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastNotifyRecordParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataLastNotifyRecord) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastPriority.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastPriority.go
index f6216e69e..beb4233cd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastPriority.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastPriority.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastPriorityParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataLastPriority) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestartReason.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestartReason.go
index 2703f8c08..167171a16 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestartReason.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestartReason.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastRestartReasonParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataLastRestartReason) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestoreTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestoreTime.go
index feb1a39fa..2491e0c88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestoreTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastRestoreTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastRestoreTimeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataLastRestoreTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastStateChange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastStateChange.go
index ae94535b2..620a42e83 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastStateChange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastStateChange.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastStateChangeParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataLastStateChange) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastUseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastUseTime.go
index 14ecd0c1d..b30c7bbfa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastUseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLastUseTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLastUseTimeParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataLastUseTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyAlarmValues.go
index c08fa483f..48a60a4a5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLifeSafetyAlarmValuesParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataLifeSafetyAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAlarmValues.go
index 0e2141594..1b0a6f960 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLifeSafetyPointAlarmValuesParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataLifeSafetyPointAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAll.go
index 70a5a4bb3..0d9c37f33 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLifeSafetyPointAllParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataLifeSafetyPointAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointFaultValues.go
index 7b5234b1a..42fe24145 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointFaultValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLifeSafetyPointFaultValuesParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataLifeSafetyPointFaultValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointPresentValue.go
index c7b8ae67f..cdfb01667 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyPointPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLifeSafetyPointPresentValueParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConstructedDataLifeSafetyPointPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAlarmValues.go
index 57b50fdce..187ea75fe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLifeSafetyZoneAlarmValuesParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataLifeSafetyZoneAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAll.go
index 34223af1a..fccfaa554 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLifeSafetyZoneAllParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataLifeSafetyZoneAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneFaultValues.go
index cb7ead44e..eb15924ef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneFaultValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLifeSafetyZoneFaultValuesParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataLifeSafetyZoneFaultValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneMaintenanceRequired.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneMaintenanceRequired.go
index fd1689549..2a005cb0b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneMaintenanceRequired.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZoneMaintenanceRequired.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLifeSafetyZoneMaintenanceRequiredParse(readBuffer util
 }
 
 func (m *_BACnetConstructedDataLifeSafetyZoneMaintenanceRequired) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZonePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZonePresentValue.go
index 3d952eaec..4e8aff246 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZonePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLifeSafetyZonePresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLifeSafetyZonePresentValueParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataLifeSafetyZonePresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftAll.go
index f10508688..ebd24c1b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLiftAllParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataLiftAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftFaultSignals.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftFaultSignals.go
index 29d7ca757..bc7998f85 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftFaultSignals.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLiftFaultSignals.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataLiftFaultSignalsParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataLiftFaultSignals) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommand.go
index fe6433544..c3f49ce57 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommand.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLightingCommandParse(readBuffer utils.ReadBuffer, tagN
 }
 
 func (m *_BACnetConstructedDataLightingCommand) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommandDefaultPriority.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommandDefaultPriority.go
index e55734967..86af79f13 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommandDefaultPriority.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingCommandDefaultPriority.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLightingCommandDefaultPriorityParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataLightingCommandDefaultPriority) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputAll.go
index 658d14f76..7fbabb78c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLightingOutputAllParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataLightingOutputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputFeedbackValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputFeedbackValue.go
index 5035a1056..b0d07c741 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputFeedbackValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputFeedbackValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLightingOutputFeedbackValueParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConstructedDataLightingOutputFeedbackValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputPresentValue.go
index f219cbb85..22058219d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLightingOutputPresentValueParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataLightingOutputPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputRelinquishDefault.go
index 102539e66..75ce362fb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLightingOutputRelinquishDefaultParse(readBuffer utils.
 }
 
 func (m *_BACnetConstructedDataLightingOutputRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputTrackingValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputTrackingValue.go
index d629c6baa..df4347286 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputTrackingValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLightingOutputTrackingValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLightingOutputTrackingValueParse(readBuffer utils.Read
 }
 
 func (m *_BACnetConstructedDataLightingOutputTrackingValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitEnable.go
index e819c6550..00c9909d7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitEnable.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLimitEnableParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataLimitEnable) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitMonitoringInterval.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitMonitoringInterval.go
index 9f460a86e..b2bd99a09 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitMonitoringInterval.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLimitMonitoringInterval.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLimitMonitoringIntervalParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataLimitMonitoringInterval) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeed.go
index d2eba9047..8e8a173b6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeed.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLinkSpeedParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLinkSpeed) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeedAutonegotiate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeedAutonegotiate.go
index d6465eeef..56fd9c64f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeedAutonegotiate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeedAutonegotiate.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLinkSpeedAutonegotiateParse(readBuffer utils.ReadBuffe
 }
 
 func (m *_BACnetConstructedDataLinkSpeedAutonegotiate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeeds.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeeds.go
index 7e974ef5e..088b58bd2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeeds.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLinkSpeeds.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataLinkSpeedsParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLinkSpeeds) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfGroupMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfGroupMembers.go
index 9428f184f..e98b75364 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfGroupMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfGroupMembers.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataListOfGroupMembersParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataListOfGroupMembers) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfObjectPropertyReferences.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfObjectPropertyReferences.go
index d24fb49e9..5dbd89b93 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfObjectPropertyReferences.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataListOfObjectPropertyReferences.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataListOfObjectPropertyReferencesParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataListOfObjectPropertyReferences) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlAll.go
index da135fa1c..a585d8160 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLoadControlAllParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataLoadControlAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlPresentValue.go
index 2214f610f..25940c31a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoadControlPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLoadControlPresentValueParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataLoadControlPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalDate.go
index 937bf23f1..f60886051 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalDate.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLocalDateParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLocalDate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalForwardingOnly.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalForwardingOnly.go
index 34763b2c4..4f6402a2e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalForwardingOnly.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalForwardingOnly.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLocalForwardingOnlyParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataLocalForwardingOnly) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalTime.go
index 3f81edf55..f28b7dbc9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocalTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLocalTimeParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLocalTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocation.go
index 3dfa62c0a..065b045e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLocation.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLocationParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataLocation) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockStatus.go
index 271bd0601..7609b08f9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockStatus.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLockStatusParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLockStatus) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockout.go
index 91e721aa4..36a27af1e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockout.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLockoutParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataLockout) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockoutRelinquishTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockoutRelinquishTime.go
index 2c15b64fa..c8673253b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockoutRelinquishTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLockoutRelinquishTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLockoutRelinquishTimeParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataLockoutRelinquishTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogBuffer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogBuffer.go
index 21b0865cd..25e38fe3b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogBuffer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogBuffer.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataLogBufferParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLogBuffer) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogDeviceObjectProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogDeviceObjectProperty.go
index 6befbea40..c3bd2a113 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogDeviceObjectProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogDeviceObjectProperty.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLogDeviceObjectPropertyParse(readBuffer utils.ReadBuff
 }
 
 func (m *_BACnetConstructedDataLogDeviceObjectProperty) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogInterval.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogInterval.go
index 51be9f8e1..43a50a7b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogInterval.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLogInterval.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLogIntervalParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataLogInterval) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingObject.go
index 2966d921a..379825885 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingObject.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLoggingObjectParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataLoggingObject) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingRecord.go
index f843f1116..a119aac26 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingRecord.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLoggingRecordParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataLoggingRecord) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingType.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingType.go
index 2c00619d0..b2f040175 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingType.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoggingType.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLoggingTypeParse(readBuffer utils.ReadBuffer, tagNumbe
 }
 
 func (m *_BACnetConstructedDataLoggingType) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAction.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAction.go
index 29bc06e54..1e1f99cc0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAction.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAction.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLoopActionParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLoopAction) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAll.go
index 7d115db52..1aca81202 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataLoopAllParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataLoopAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopPresentValue.go
index 40d9fe7fd..6246a8ceb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLoopPresentValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLoopPresentValueParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataLoopPresentValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowDiffLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowDiffLimit.go
index a116515f1..31983aec1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowDiffLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowDiffLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLowDiffLimitParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataLowDiffLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowLimit.go
index bf0604d59..a31640fa4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowLimit.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLowLimitParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataLowLimit) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowerDeck.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowerDeck.go
index 8110119b2..78eb21df6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowerDeck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataLowerDeck.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataLowerDeckParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataLowerDeck) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMACAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMACAddress.go
index f609d722e..d1c9575b0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMACAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMACAddress.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMACAddressParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataMACAddress) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMachineRoomID.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMachineRoomID.go
index aeb13519e..c3edc4f62 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMachineRoomID.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMachineRoomID.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMachineRoomIDParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataMachineRoomID) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaintenanceRequired.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaintenanceRequired.go
index 872394a24..1584b656e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaintenanceRequired.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaintenanceRequired.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaintenanceRequiredParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataMaintenanceRequired) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMakingCarCall.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMakingCarCall.go
index 839e66ee2..7e088a8bb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMakingCarCall.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMakingCarCall.go
@@ -244,7 +244,7 @@ func BACnetConstructedDataMakingCarCallParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataMakingCarCall) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManipulatedVariableReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManipulatedVariableReference.go
index ceeb13559..66d424fac 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManipulatedVariableReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManipulatedVariableReference.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataManipulatedVariableReferenceParse(readBuffer utils.Rea
 }
 
 func (m *_BACnetConstructedDataManipulatedVariableReference) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManualSlaveAddressBinding.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManualSlaveAddressBinding.go
index bc5f11f26..767b6061e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManualSlaveAddressBinding.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataManualSlaveAddressBinding.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataManualSlaveAddressBindingParse(readBuffer utils.ReadBu
 }
 
 func (m *_BACnetConstructedDataManualSlaveAddressBinding) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaskedAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaskedAlarmValues.go
index 8a0838673..b1f39934b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaskedAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaskedAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataMaskedAlarmValuesParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataMaskedAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxAPDULengthAccepted.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxAPDULengthAccepted.go
index 39045dbf7..71cf43638 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxAPDULengthAccepted.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxAPDULengthAccepted.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxAPDULengthAcceptedParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataMaxAPDULengthAccepted) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxActualValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxActualValue.go
index 846b1bd6a..2b0ef4dd2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxActualValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxActualValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxActualValueParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataMaxActualValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxFailedAttempts.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxFailedAttempts.go
index baff4d5ee..e0650344c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxFailedAttempts.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxFailedAttempts.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxFailedAttemptsParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataMaxFailedAttempts) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxInfoFrames.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxInfoFrames.go
index ee0b9fe77..505c3b92f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxInfoFrames.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxInfoFrames.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxInfoFramesParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataMaxInfoFrames) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxMaster.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxMaster.go
index 99d4f18c6..e86256a9d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxMaster.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxMaster.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxMasterParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataMaxMaster) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxPresValue.go
index 6f1dcc617..be36e6793 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxPresValueParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataMaxPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxSegmentsAccepted.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxSegmentsAccepted.go
index f87b080e8..04df19d74 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxSegmentsAccepted.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaxSegmentsAccepted.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaxSegmentsAcceptedParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataMaxSegmentsAccepted) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumOutput.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumOutput.go
index 5ab3f459a..0f3ae827f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumOutput.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumOutput.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaximumOutputParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataMaximumOutput) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValue.go
index 12c1c6cf8..4a8392052 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaximumValueParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataMaximumValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValueTimestamp.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValueTimestamp.go
index 5117171b8..6013d76ec 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValueTimestamp.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMaximumValueTimestamp.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMaximumValueTimestampParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataMaximumValueTimestamp) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberOf.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberOf.go
index 0e8ae55d1..cf6c403f3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberOf.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberOf.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataMemberOfParse(readBuffer utils.ReadBuffer, tagNumber u
 }
 
 func (m *_BACnetConstructedDataMemberOf) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberStatusFlags.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberStatusFlags.go
index 479673470..153d7dcf2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberStatusFlags.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMemberStatusFlags.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMemberStatusFlagsParse(readBuffer utils.ReadBuffer, ta
 }
 
 func (m *_BACnetConstructedDataMemberStatusFlags) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMembers.go
index 345578571..2da977492 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMembers.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataMembersParse(readBuffer utils.ReadBuffer, tagNumber ui
 }
 
 func (m *_BACnetConstructedDataMembers) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinActualValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinActualValue.go
index 5df2d7303..6eb425906 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinActualValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinActualValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinActualValueParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataMinActualValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinPresValue.go
index 51791c12e..d9b0a6221 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinPresValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinPresValueParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataMinPresValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOffTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOffTime.go
index 351484b95..5b8d58f6c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOffTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOffTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinimumOffTimeParse(readBuffer utils.ReadBuffer, tagNu
 }
 
 func (m *_BACnetConstructedDataMinimumOffTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOnTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOnTime.go
index ba61e53a4..da4239ca3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOnTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOnTime.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinimumOnTimeParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataMinimumOnTime) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOutput.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOutput.go
index c5dfb849c..d2e9163cd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOutput.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumOutput.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinimumOutputParse(readBuffer utils.ReadBuffer, tagNum
 }
 
 func (m *_BACnetConstructedDataMinimumOutput) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValue.go
index 7908affac..790f2c5b7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinimumValueParse(readBuffer utils.ReadBuffer, tagNumb
 }
 
 func (m *_BACnetConstructedDataMinimumValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValueTimestamp.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValueTimestamp.go
index 49aeb261b..6036b7b16 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValueTimestamp.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMinimumValueTimestamp.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMinimumValueTimestampParse(readBuffer utils.ReadBuffer
 }
 
 func (m *_BACnetConstructedDataMinimumValueTimestamp) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMode.go
index 0f98f378d..b380318b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMode.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataModeParse(readBuffer utils.ReadBuffer, tagNumber uint8
 }
 
 func (m *_BACnetConstructedDataMode) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModelName.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModelName.go
index dd5a9500a..981b620e0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModelName.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModelName.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataModelNameParse(readBuffer utils.ReadBuffer, tagNumber
 }
 
 func (m *_BACnetConstructedDataModelName) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModificationDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModificationDate.go
index 53a923095..688578355 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModificationDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataModificationDate.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataModificationDateParse(readBuffer utils.ReadBuffer, tag
 }
 
 func (m *_BACnetConstructedDataModificationDate) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAlarmValues.go
index 6ddccce9d..9687f3b8c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAlarmValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataMultiStateInputAlarmValuesParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataMultiStateInputAlarmValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAll.go
index 1264e4758..40abc8f51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataMultiStateInputAllParse(readBuffer utils.ReadBuffer, t
 }
 
 func (m *_BACnetConstructedDataMultiStateInputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputFaultValues.go
index fa00faec2..62942fc90 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputFaultValues.go
@@ -183,7 +183,7 @@ func BACnetConstructedDataMultiStateInputFaultValuesParse(readBuffer utils.ReadB
 }
 
 func (m *_BACnetConstructedDataMultiStateInputFaultValues) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputInterfaceValue.go
index 725e5533d..d85a6fb84 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateInputInterfaceValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMultiStateInputInterfaceValueParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataMultiStateInputInterfaceValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputAll.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputAll.go
index 9d10cbe54..d8995cbc0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputAll.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputAll.go
@@ -142,7 +142,7 @@ func BACnetConstructedDataMultiStateOutputAllParse(readBuffer utils.ReadBuffer,
 }
 
 func (m *_BACnetConstructedDataMultiStateOutputAll) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputFeedbackValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputFeedbackValue.go
index a55430586..49d86672c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputFeedbackValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputFeedbackValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMultiStateOutputFeedbackValueParse(readBuffer utils.Re
 }
 
 func (m *_BACnetConstructedDataMultiStateOutputFeedbackValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputInterfaceValue.go
index b2c883ba6..37bee87c9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputInterfaceValue.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMultiStateOutputInterfaceValueParse(readBuffer utils.R
 }
 
 func (m *_BACnetConstructedDataMultiStateOutputInterfaceValue) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
 	if err := m.SerializeWithWriteBuffer(wb); err != nil {
 		return nil, err
 	}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputRelinquishDefault.go
index 41e8381cb..9b9692010 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataMultiStateOutputRelinquishDefault.go
@@ -194,7 +194,7 @@ func BACnetConstructedDataMultiStateOutputRelinquishDefaultParse(readBuffer util
 }
 
 func (m *_BACnetConstructedDataMultiStateOutputRelinquishDefault) Serialize() ([]byte, error) {
-	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian)) // TODO: get endianness from mspec
+	wb := utils.NewWriteBufferByteBased(utils.WithByteOrderForByteBasedBuffer(binary.BigEndian), utils.WithInitialSizeForByteBasedBuffer(int(m.GetLengthInBytes()))) // TODO: get endianness from mspec
... 17893 lines suppressed ...