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/07/01 14:01:37 UTC

[plc4x] branch develop updated (145764e3d -> 8636f3fe8)

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

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


    from 145764e3d chore(plc4go): Minor updates to the cbus protocol
     new ace05fb77 feat(c-bus): refined c-bus mspec
     new a7504a6f4 feat(codegen/plc4go): when a sub-type parse match fails output the actual values
     new 913bd948a feat(c-bus): small improvements on spec
     new dffd97de8 chore(codegen): added note for naming sub types
     new 5dfee9081 feat(codegen/plc4go): add information of the type into the error message
     new 8636f3fe8 feat(codegen/plc4j): add information of the type into the error message

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../templates/go/complex-type-template.go.ftlh     |  51 ++--
 .../templates/java/complex-type-template.java.ftlh |   2 +-
 .../mspec/model/terms/DefaultVariableLiteral.java  |   2 +-
 .../mspec/parser/MessageFormatListener.java        |   1 +
 .../readwrite/model/CIPEncapsulationPacket.go      |  19 +-
 .../readwrite/model/CIPEncapsulationReadRequest.go |   2 +-
 .../model/CIPEncapsulationReadResponse.go          |   2 +-
 .../readwrite/model/DF1CommandRequestMessage.go    |   2 +-
 ...mandResponseMessageProtectedTypedLogicalRead.go |   2 +-
 .../abeth/readwrite/model/DF1RequestCommand.go     |   7 +-
 .../abeth/readwrite/model/DF1RequestMessage.go     |  17 +-
 .../model/DF1RequestProtectedTypedLogicalRead.go   |  10 +-
 .../abeth/readwrite/model/DF1ResponseMessage.go    |  19 +-
 .../model/AdsAddDeviceNotificationRequest.go       |  16 +-
 .../model/AdsAddDeviceNotificationResponse.go      |   4 +-
 plc4go/protocols/ads/readwrite/model/AdsData.go    |   5 +-
 .../model/AdsDeleteDeviceNotificationRequest.go    |   2 +-
 .../model/AdsDeleteDeviceNotificationResponse.go   |   2 +-
 .../model/AdsDeviceNotificationRequest.go          |   6 +-
 .../ads/readwrite/model/AdsMultiRequestItem.go     |   5 +-
 .../ads/readwrite/model/AdsMultiRequestItemRead.go |   6 +-
 .../model/AdsMultiRequestItemReadWrite.go          |   8 +-
 .../readwrite/model/AdsMultiRequestItemWrite.go    |   6 +-
 .../ads/readwrite/model/AdsNotificationSample.go   |   6 +-
 .../readwrite/model/AdsReadDeviceInfoResponse.go   |  10 +-
 .../ads/readwrite/model/AdsReadRequest.go          |   6 +-
 .../ads/readwrite/model/AdsReadResponse.go         |   6 +-
 .../ads/readwrite/model/AdsReadStateResponse.go    |   6 +-
 .../ads/readwrite/model/AdsReadWriteRequest.go     |  12 +-
 .../ads/readwrite/model/AdsReadWriteResponse.go    |   6 +-
 .../ads/readwrite/model/AdsStampHeader.go          |   6 +-
 .../ads/readwrite/model/AdsWriteControlRequest.go  |   8 +-
 .../ads/readwrite/model/AdsWriteControlResponse.go |   2 +-
 .../ads/readwrite/model/AdsWriteRequest.go         |   8 +-
 .../ads/readwrite/model/AdsWriteResponse.go        |   2 +-
 plc4go/protocols/ads/readwrite/model/AmsNetId.go   |  12 +-
 plc4go/protocols/ads/readwrite/model/AmsPacket.go  |  20 +-
 .../readwrite/model/AmsSerialAcknowledgeFrame.go   |  12 +-
 .../ads/readwrite/model/AmsSerialFrame.go          |  14 +-
 .../ads/readwrite/model/AmsSerialResetFrame.go     |  12 +-
 .../protocols/ads/readwrite/model/AmsTCPPacket.go  |   6 +-
 plc4go/protocols/ads/readwrite/model/State.go      |  20 +-
 plc4go/protocols/bacnetip/readwrite/model/APDU.go  |   7 +-
 .../bacnetip/readwrite/model/APDUAbort.go          |   8 +-
 .../bacnetip/readwrite/model/APDUComplexAck.go     |  18 +-
 .../readwrite/model/APDUConfirmedRequest.go        |  24 +-
 .../bacnetip/readwrite/model/APDUError.go          |   8 +-
 .../bacnetip/readwrite/model/APDUReject.go         |   6 +-
 .../bacnetip/readwrite/model/APDUSegmentAck.go     |  12 +-
 .../bacnetip/readwrite/model/APDUSimpleAck.go      |   6 +-
 .../readwrite/model/APDUUnconfirmedRequest.go      |   4 +-
 .../bacnetip/readwrite/model/APDUUnknown.go        |   4 +-
 .../readwrite/model/BACnetAbortReasonTagged.go     |   4 +-
 ...ACnetAccessAuthenticationFactorDisableTagged.go |   6 +-
 .../BACnetAccessCredentialDisableReasonTagged.go   |   6 +-
 .../model/BACnetAccessCredentialDisableTagged.go   |   6 +-
 .../readwrite/model/BACnetAccessEventTagged.go     |   6 +-
 .../model/BACnetAccessPassbackModeTagged.go        |   4 +-
 .../bacnetip/readwrite/model/BACnetAccessRule.go   |  10 +-
 .../BACnetAccessRuleLocationSpecifierTagged.go     |   4 +-
 .../BACnetAccessRuleTimeRangeSpecifierTagged.go    |   4 +-
 .../readwrite/model/BACnetAccessThreatLevel.go     |   2 +-
 .../readwrite/model/BACnetAccessUserTypeTagged.go  |   6 +-
 .../model/BACnetAccessZoneOccupancyStateTagged.go  |   6 +-
 .../readwrite/model/BACnetAccumulatorRecord.go     |   8 +-
 ...CnetAccumulatorRecordAccumulatorStatusTagged.go |   4 +-
 .../readwrite/model/BACnetActionCommand.go         |  18 +-
 .../bacnetip/readwrite/model/BACnetActionList.go   |   6 +-
 .../bacnetip/readwrite/model/BACnetActionTagged.go |   4 +-
 .../bacnetip/readwrite/model/BACnetAddress.go      |   4 +-
 .../readwrite/model/BACnetAddressBinding.go        |   4 +-
 .../readwrite/model/BACnetAddressEnclosed.go       |   6 +-
 .../readwrite/model/BACnetApplicationTag.go        |   7 +-
 .../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 +-
 .../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  |   4 +-
 .../readwrite/model/BACnetAssignedLandingCalls.go  |   2 +-
 .../BACnetAssignedLandingCallsLandingCallsList.go  |   6 +-
 ...netAssignedLandingCallsLandingCallsListEntry.go |   4 +-
 .../readwrite/model/BACnetAuthenticationFactor.go  |   6 +-
 .../model/BACnetAuthenticationFactorEnclosed.go    |   6 +-
 .../model/BACnetAuthenticationFactorFormat.go      |   6 +-
 .../model/BACnetAuthenticationFactorTypeTagged.go  |   4 +-
 .../readwrite/model/BACnetAuthenticationPolicy.go  |   6 +-
 .../model/BACnetAuthenticationPolicyList.go        |   6 +-
 .../model/BACnetAuthenticationPolicyListEntry.go   |   4 +-
 .../model/BACnetAuthenticationStatusTagged.go      |   4 +-
 .../model/BACnetAuthorizationExemptionTagged.go    |   6 +-
 .../model/BACnetAuthorizationModeTagged.go         |   6 +-
 .../bacnetip/readwrite/model/BACnetBDTEntry.go     |   4 +-
 .../readwrite/model/BACnetBackupStateTagged.go     |   4 +-
 .../model/BACnetBinaryLightingPVTagged.go          |   6 +-
 .../readwrite/model/BACnetBinaryPVTagged.go        |   4 +-
 .../model/BACnetCOVMultipleSubscription.go         |  10 +-
 ...bscriptionListOfCovSubscriptionSpecification.go |   6 +-
 ...ptionListOfCovSubscriptionSpecificationEntry.go |   4 +-
 ...riptionSpecificationEntryListOfCovReferences.go |   6 +-
 ...onSpecificationEntryListOfCovReferencesEntry.go |   6 +-
 .../readwrite/model/BACnetCOVSubscription.go       |  10 +-
 .../readwrite/model/BACnetCalendarEntry.go         |   5 +-
 .../readwrite/model/BACnetCalendarEntryDate.go     |   2 +-
 .../model/BACnetCalendarEntryDateRange.go          |   2 +-
 .../readwrite/model/BACnetCalendarEntryEnclosed.go |   6 +-
 .../readwrite/model/BACnetCalendarEntryWeekNDay.go |   2 +-
 .../bacnetip/readwrite/model/BACnetChannelValue.go |   5 +-
 .../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 +-
 .../bacnetip/readwrite/model/BACnetClientCOV.go    |   5 +-
 .../readwrite/model/BACnetClientCOVNone.go         |   2 +-
 .../readwrite/model/BACnetClientCOVObject.go       |   2 +-
 .../bacnetip/readwrite/model/BACnetClosingTag.go   |   2 +-
 .../model/BACnetConfirmedServiceRequest.go         |   7 +-
 ...ACnetConfirmedServiceRequestAcknowledgeAlarm.go |  12 +-
 .../BACnetConfirmedServiceRequestAddListElement.go |   8 +-
 .../BACnetConfirmedServiceRequestAtomicReadFile.go |   4 +-
 ...tConfirmedServiceRequestAtomicReadFileRecord.go |   4 +-
 ...tConfirmedServiceRequestAtomicReadFileStream.go |   4 +-
 ...edServiceRequestAtomicReadFileStreamOrRecord.go |   9 +-
 ...BACnetConfirmedServiceRequestAtomicWriteFile.go |  10 +-
 .../BACnetConfirmedServiceRequestAuthenticate.go   |   2 +-
 ...firmedServiceRequestConfirmedCOVNotification.go |  10 +-
 ...rviceRequestConfirmedCOVNotificationMultiple.go |  10 +-
 ...rmedServiceRequestConfirmedEventNotification.go |  26 +-
 ...firmedServiceRequestConfirmedPrivateTransfer.go |   6 +-
 ...tConfirmedServiceRequestConfirmedTextMessage.go |   8 +-
 ...rviceRequestConfirmedTextMessageMessageClass.go |   9 +-
 ...estConfirmedTextMessageMessageClassCharacter.go |   2 +-
 ...questConfirmedTextMessageMessageClassNumeric.go |   2 +-
 ...estConfirmedTextMessageMessagePriorityTagged.go |   4 +-
 .../BACnetConfirmedServiceRequestCreateObject.go   |   4 +-
 ...medServiceRequestCreateObjectObjectSpecifier.go |   8 +-
 .../BACnetConfirmedServiceRequestDeleteObject.go   |   2 +-
 ...rmedServiceRequestDeviceCommunicationControl.go |   6 +-
 ...eviceCommunicationControlEnableDisableTagged.go |   4 +-
 ...tConfirmedServiceRequestGetEnrollmentSummary.go |  12 +-
 ...EnrollmentSummaryAcknowledgementFilterTagged.go |   4 +-
 ...stGetEnrollmentSummaryEventStateFilterTagged.go |   4 +-
 ...iceRequestGetEnrollmentSummaryPriorityFilter.go |   8 +-
 ...etConfirmedServiceRequestGetEventInformation.go |   2 +-
 ...etConfirmedServiceRequestLifeSafetyOperation.go |   8 +-
 .../BACnetConfirmedServiceRequestReadProperty.go   |   6 +-
 ...nfirmedServiceRequestReadPropertyConditional.go |   2 +-
 ...tConfirmedServiceRequestReadPropertyMultiple.go |   2 +-
 .../BACnetConfirmedServiceRequestReadRange.go      |   8 +-
 .../BACnetConfirmedServiceRequestReadRangeRange.go |   9 +-
 ...firmedServiceRequestReadRangeRangeByPosition.go |   4 +-
 ...ServiceRequestReadRangeRangeBySequenceNumber.go |   4 +-
 ...tConfirmedServiceRequestReadRangeRangeByTime.go |   4 +-
 ...netConfirmedServiceRequestReinitializeDevice.go |   4 +-
 ...ializeDeviceReinitializedStateOfDeviceTagged.go |   4 +-
 ...CnetConfirmedServiceRequestRemoveListElement.go |   8 +-
 .../BACnetConfirmedServiceRequestRequestKey.go     |   2 +-
 .../BACnetConfirmedServiceRequestSubscribeCOV.go   |   8 +-
 ...tConfirmedServiceRequestSubscribeCOVProperty.go |  12 +-
 ...edServiceRequestSubscribeCOVPropertyMultiple.go |  10 +-
 ...yMultipleListOfCovSubscriptionSpecifications.go |   8 +-
 ...tipleListOfCovSubscriptionSpecificationsList.go |   6 +-
 ...ListOfCovSubscriptionSpecificationsReference.go |   6 +-
 .../model/BACnetConfirmedServiceRequestUnknown.go  |   2 +-
 .../model/BACnetConfirmedServiceRequestVTClose.go  |   2 +-
 .../model/BACnetConfirmedServiceRequestVTData.go   |   6 +-
 .../model/BACnetConfirmedServiceRequestVTOpen.go   |   4 +-
 .../BACnetConfirmedServiceRequestWriteProperty.go  |  10 +-
 ...ConfirmedServiceRequestWritePropertyMultiple.go |   2 +-
 .../readwrite/model/BACnetConstructedData.go       |   9 +-
 .../model/BACnetConstructedDataAPDULength.go       |   2 +-
 .../BACnetConstructedDataAPDUSegmentTimeout.go     |   2 +-
 .../model/BACnetConstructedDataAPDUTimeout.go      |   2 +-
 .../model/BACnetConstructedDataAbsenteeLimit.go    |   2 +-
 .../model/BACnetConstructedDataAcceptedModes.go    |   2 +-
 .../BACnetConstructedDataAccessAlarmEvents.go      |   2 +-
 .../BACnetConstructedDataAccessDoorAlarmValues.go  |   2 +-
 .../BACnetConstructedDataAccessDoorFaultValues.go  |   2 +-
 .../BACnetConstructedDataAccessDoorPresentValue.go |   2 +-
 ...etConstructedDataAccessDoorRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataAccessDoors.go      |   4 +-
 .../model/BACnetConstructedDataAccessEvent.go      |   2 +-
 ...nstructedDataAccessEventAuthenticationFactor.go |   2 +-
 .../BACnetConstructedDataAccessEventCredential.go  |   2 +-
 .../model/BACnetConstructedDataAccessEventTag.go   |   2 +-
 .../model/BACnetConstructedDataAccessEventTime.go  |   2 +-
 ...BACnetConstructedDataAccessTransactionEvents.go |   2 +-
 .../BACnetConstructedDataAccessZoneAdjustValue.go  |   2 +-
 .../BACnetConstructedDataAccessZoneAlarmValues.go  |   2 +-
 .../model/BACnetConstructedDataAccompaniment.go    |   2 +-
 .../BACnetConstructedDataAccompanimentTime.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 |   4 +-
 .../model/BACnetConstructedDataActionText.go       |   4 +-
 .../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      |   4 +-
 ...etConstructedDataAlertEnrollmentPresentValue.go |   2 +-
 .../model/BACnetConstructedDataAlignIntervals.go   |   2 +-
 .../BACnetConstructedDataAllWritesSuccessful.go    |   2 +-
 .../BACnetConstructedDataAllowGroupDelayInhibit.go |   2 +-
 ...CnetConstructedDataAnalogInputFaultHighLimit.go |   2 +-
 ...ACnetConstructedDataAnalogInputFaultLowLimit.go |   2 +-
 ...CnetConstructedDataAnalogInputInterfaceValue.go |   2 +-
 ...BACnetConstructedDataAnalogInputMaxPresValue.go |   2 +-
 ...BACnetConstructedDataAnalogInputPresentValue.go |   2 +-
 ...netConstructedDataAnalogOutputInterfaceValue.go |   2 +-
 ...ACnetConstructedDataAnalogOutputMaxPresValue.go |   2 +-
 ...ACnetConstructedDataAnalogOutputPresentValue.go |   2 +-
 ...ConstructedDataAnalogOutputRelinquishDefault.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   |   4 +-
 .../BACnetConstructedDataAssignedLandingCalls.go   |   4 +-
 .../model/BACnetConstructedDataAttemptedSamples.go |   2 +-
 .../BACnetConstructedDataAuthenticationFactors.go  |   4 +-
 ...ACnetConstructedDataAuthenticationPolicyList.go |   4 +-
 ...CnetConstructedDataAuthenticationPolicyNames.go |   4 +-
 .../BACnetConstructedDataAuthenticationStatus.go   |   2 +-
 ...BACnetConstructedDataAuthorizationExemptions.go |   2 +-
 .../BACnetConstructedDataAuthorizationMode.go      |   2 +-
 .../BACnetConstructedDataAutoSlaveDiscovery.go     |   2 +-
 .../model/BACnetConstructedDataAverageValue.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 +-
 ...CnetConstructedDataBinaryInputInterfaceValue.go |   2 +-
 ...BACnetConstructedDataBinaryInputPresentValue.go |   2 +-
 ...tructedDataBinaryLightingOutputFeedbackValue.go |   2 +-
 ...structedDataBinaryLightingOutputPresentValue.go |   2 +-
 ...tedDataBinaryLightingOutputRelinquishDefault.go |   2 +-
 ...CnetConstructedDataBinaryOutputFeedbackValue.go |   2 +-
 ...netConstructedDataBinaryOutputInterfaceValue.go |   2 +-
 ...ACnetConstructedDataBinaryOutputPresentValue.go |   2 +-
 ...ConstructedDataBinaryOutputRelinquishDefault.go |   2 +-
 ...BACnetConstructedDataBinaryValuePresentValue.go |   2 +-
 ...tConstructedDataBinaryValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataBitMask.go          |   2 +-
 ...CnetConstructedDataBitStringValueAlarmValues.go |   4 +-
 ...netConstructedDataBitStringValuePresentValue.go |   2 +-
 ...nstructedDataBitStringValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataBitText.go          |   4 +-
 .../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 +-
 .../BACnetConstructedDataCalendarPresentValue.go   |   2 +-
 .../BACnetConstructedDataCarAssignedDirection.go   |   2 +-
 .../model/BACnetConstructedDataCarDoorCommand.go   |   4 +-
 .../model/BACnetConstructedDataCarDoorStatus.go    |   4 +-
 .../model/BACnetConstructedDataCarDoorText.go      |   4 +-
 .../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 +-
 ...tedDataChannelListOfObjectPropertyReferences.go |   4 +-
 .../model/BACnetConstructedDataChannelNumber.go    |   2 +-
 .../BACnetConstructedDataChannelPresentValue.go    |   2 +-
 ...nstructedDataCharacterStringValueAlarmValues.go |   4 +-
 ...nstructedDataCharacterStringValueFaultValues.go |   4 +-
 ...structedDataCharacterStringValuePresentValue.go |   2 +-
 ...tedDataCharacterStringValueRelinquishDefault.go |   2 +-
 .../BACnetConstructedDataClientCOVIncrement.go     |   2 +-
 .../model/BACnetConstructedDataCommand.go          |   2 +-
 .../model/BACnetConstructedDataCommandAction.go    |   4 +-
 .../model/BACnetConstructedDataCommandTimeArray.go |   4 +-
 .../BACnetConstructedDataConfigurationFiles.go     |   4 +-
 .../model/BACnetConstructedDataControlGroups.go    |   4 +-
 ...etConstructedDataControlledVariableReference.go |   2 +-
 ...BACnetConstructedDataControlledVariableUnits.go |   2 +-
 ...BACnetConstructedDataControlledVariableValue.go |   2 +-
 .../readwrite/model/BACnetConstructedDataCount.go  |   2 +-
 .../BACnetConstructedDataCountBeforeChange.go      |   2 +-
 .../model/BACnetConstructedDataCountChangeTime.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 +-
 .../BACnetConstructedDataDateValuePresentValue.go  |   2 +-
 ...netConstructedDataDateValueRelinquishDefault.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 +-
 .../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      |   4 +-
 .../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          |   6 +-
 .../model/BACnetConstructedDataElevatorGroup.go    |   2 +-
 ...CnetConstructedDataElevatorGroupGroupMembers.go |   4 +-
 .../readwrite/model/BACnetConstructedDataEnable.go |   2 +-
 .../model/BACnetConstructedDataEnergyMeter.go      |   2 +-
 .../model/BACnetConstructedDataEnergyMeterRef.go   |   2 +-
 .../model/BACnetConstructedDataEntryPoints.go      |   2 +-
 .../model/BACnetConstructedDataErrorLimit.go       |   2 +-
 .../BACnetConstructedDataEscalatorFaultSignals.go  |   2 +-
 .../model/BACnetConstructedDataEscalatorMode.go    |   2 +-
 .../BACnetConstructedDataEventAlgorithmInhibit.go  |   2 +-
 ...ACnetConstructedDataEventAlgorithmInhibitRef.go |   2 +-
 .../BACnetConstructedDataEventDetectionEnable.go   |   2 +-
 .../model/BACnetConstructedDataEventEnable.go      |   2 +-
 .../BACnetConstructedDataEventLogLogBuffer.go      |   2 +-
 .../BACnetConstructedDataEventMessageTexts.go      |   4 +-
 ...BACnetConstructedDataEventMessageTextsConfig.go |   4 +-
 .../model/BACnetConstructedDataEventParameters.go  |   2 +-
 .../model/BACnetConstructedDataEventState.go       |   2 +-
 .../model/BACnetConstructedDataEventTimeStamps.go  |   4 +-
 .../model/BACnetConstructedDataEventType.go        |   2 +-
 .../BACnetConstructedDataExceptionSchedule.go      |   4 +-
 .../model/BACnetConstructedDataExecutionDelay.go   |   4 +-
 .../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      |   4 +-
 .../model/BACnetConstructedDataFileAccessMethod.go |   2 +-
 .../model/BACnetConstructedDataFileRecordCount.go  |   2 +-
 .../model/BACnetConstructedDataFileSize.go         |   2 +-
 .../model/BACnetConstructedDataFileType.go         |   2 +-
 .../model/BACnetConstructedDataFirmwareRevision.go |   2 +-
 .../model/BACnetConstructedDataFloorText.go        |   4 +-
 .../model/BACnetConstructedDataFullDutyBaseline.go |   2 +-
 ...BACnetConstructedDataGlobalGroupGroupMembers.go |   4 +-
 ...BACnetConstructedDataGlobalGroupPresentValue.go |   4 +-
 .../model/BACnetConstructedDataGlobalIdentifier.go |   2 +-
 .../model/BACnetConstructedDataGroupID.go          |   2 +-
 .../model/BACnetConstructedDataGroupMemberNames.go |   4 +-
 .../model/BACnetConstructedDataGroupMembers.go     |   4 +-
 .../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      |   4 +-
 .../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    |   4 +-
 .../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 +-
 ...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          |   4 +-
 .../BACnetConstructedDataLandingCallControl.go     |   2 +-
 .../model/BACnetConstructedDataLandingCalls.go     |   2 +-
 .../BACnetConstructedDataLandingDoorStatus.go      |   4 +-
 ...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 +-
 ...netConstructedDataLifeSafetyPointFaultValues.go |   2 +-
 ...etConstructedDataLifeSafetyPointPresentValue.go |   2 +-
 ...CnetConstructedDataLifeSafetyZoneAlarmValues.go |   2 +-
 ...CnetConstructedDataLifeSafetyZoneFaultValues.go |   2 +-
 ...tructedDataLifeSafetyZoneMaintenanceRequired.go |   2 +-
 ...netConstructedDataLifeSafetyZonePresentValue.go |   2 +-
 .../model/BACnetConstructedDataLiftFaultSignals.go |   2 +-
 .../model/BACnetConstructedDataLightingCommand.go  |   2 +-
 ...onstructedDataLightingCommandDefaultPriority.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       |   4 +-
 .../BACnetConstructedDataListOfGroupMembers.go     |   2 +-
 ...onstructedDataListOfObjectPropertyReferences.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        |   4 +-
 ...BACnetConstructedDataLogDeviceObjectProperty.go |   2 +-
 .../model/BACnetConstructedDataLogInterval.go      |   2 +-
 .../model/BACnetConstructedDataLoggingObject.go    |   2 +-
 .../model/BACnetConstructedDataLoggingRecord.go    |   2 +-
 .../model/BACnetConstructedDataLoggingType.go      |   2 +-
 .../model/BACnetConstructedDataLoopAction.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    |   4 +-
 ...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 +-
 ...netConstructedDataMultiStateInputFaultValues.go |   2 +-
 ...ConstructedDataMultiStateInputInterfaceValue.go |   2 +-
 ...ConstructedDataMultiStateOutputFeedbackValue.go |   2 +-
 ...onstructedDataMultiStateOutputInterfaceValue.go |   2 +-
 ...tructedDataMultiStateOutputRelinquishDefault.go |   2 +-
 ...netConstructedDataMultiStateValueAlarmValues.go |   2 +-
 ...netConstructedDataMultiStateValueFaultValues.go |   2 +-
 ...structedDataMultiStateValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataMusterPoint.go      |   2 +-
 .../BACnetConstructedDataNegativeAccessRules.go    |   4 +-
 ...ConstructedDataNetworkAccessSecurityPolicies.go |   4 +-
 .../BACnetConstructedDataNetworkInterfaceName.go   |   2 +-
 .../model/BACnetConstructedDataNetworkNumber.go    |   2 +-
 .../BACnetConstructedDataNetworkNumberQuality.go   |   2 +-
 ...ACnetConstructedDataNetworkPortMaxInfoFrames.go |   2 +-
 .../BACnetConstructedDataNetworkPortMaxMaster.go   |   2 +-
 .../model/BACnetConstructedDataNetworkType.go      |   2 +-
 .../BACnetConstructedDataNextStoppingFloor.go      |   2 +-
 .../model/BACnetConstructedDataNodeSubtype.go      |   2 +-
 .../model/BACnetConstructedDataNodeType.go         |   2 +-
 .../BACnetConstructedDataNotificationClass.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       |   4 +-
 .../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 +-
 .../BACnetConstructedDataOperationDirection.go     |   2 +-
 .../BACnetConstructedDataOperationExpected.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       |   4 +-
 .../BACnetConstructedDataPositiveAccessRules.go    |   4 +-
 ...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         |   4 +-
 .../model/BACnetConstructedDataPriorityArray.go    |   2 +-
 .../BACnetConstructedDataPriorityForWriting.go     |   2 +-
 .../BACnetConstructedDataProcessIdentifier.go      |   2 +-
 ...BACnetConstructedDataProcessIdentifierFilter.go |   2 +-
 .../model/BACnetConstructedDataProfileLocation.go  |   2 +-
 .../model/BACnetConstructedDataProfileName.go      |   2 +-
 .../model/BACnetConstructedDataProgramChange.go    |   2 +-
 .../model/BACnetConstructedDataProgramLocation.go  |   2 +-
 .../model/BACnetConstructedDataProgramState.go     |   2 +-
 .../model/BACnetConstructedDataPropertyList.go     |   4 +-
 .../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 +-
 ...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      |   4 +-
 .../model/BACnetConstructedDataReliability.go      |   2 +-
 ...tConstructedDataReliabilityEvaluationInhibit.go |   2 +-
 .../BACnetConstructedDataRelinquishDefault.go      |   2 +-
 .../model/BACnetConstructedDataRepresents.go       |   2 +-
 .../BACnetConstructedDataRequestedShedLevel.go     |   2 +-
 ...BACnetConstructedDataRequestedUpdateInterval.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/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  |   4 +-
 .../model/BACnetConstructedDataShedLevels.go       |   4 +-
 .../model/BACnetConstructedDataSilenced.go         |   2 +-
 .../BACnetConstructedDataSlaveAddressBinding.go    |   2 +-
 .../model/BACnetConstructedDataSlaveProxyEnable.go |   2 +-
 .../model/BACnetConstructedDataStartTime.go        |   2 +-
 .../BACnetConstructedDataStateChangeValues.go      |   4 +-
 .../model/BACnetConstructedDataStateDescription.go |   2 +-
 .../model/BACnetConstructedDataStateText.go        |   4 +-
 .../model/BACnetConstructedDataStatusFlags.go      |   2 +-
 .../model/BACnetConstructedDataStopTime.go         |   2 +-
 .../model/BACnetConstructedDataStopWhenFull.go     |   2 +-
 .../model/BACnetConstructedDataStrikeCount.go      |   2 +-
 .../BACnetConstructedDataStructuredObjectList.go   |   4 +-
 .../BACnetConstructedDataSubordinateAnnotations.go |   4 +-
 .../model/BACnetConstructedDataSubordinateList.go  |   4 +-
 .../BACnetConstructedDataSubordinateNodeTypes.go   |   4 +-
 ...ACnetConstructedDataSubordinateRelationships.go |   4 +-
 .../model/BACnetConstructedDataSubordinateTags.go  |   4 +-
 .../BACnetConstructedDataSubscribedRecipients.go   |   2 +-
 .../BACnetConstructedDataSupportedFormatClasses.go |   4 +-
 .../model/BACnetConstructedDataSupportedFormats.go |   4 +-
 ...etConstructedDataSupportedSecurityAlgorithms.go |   2 +-
 .../model/BACnetConstructedDataSystemStatus.go     |   2 +-
 .../readwrite/model/BACnetConstructedDataTags.go   |   4 +-
 .../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 +-
 .../BACnetConstructedDataTimeValuePresentValue.go  |   2 +-
 ...netConstructedDataTimeValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataTimerAlarmValues.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 +-
 .../BACnetConstructedDataTrendLogLogBuffer.go      |   2 +-
 ...nstructedDataTrendLogLogDeviceObjectProperty.go |   2 +-
 ...CnetConstructedDataTrendLogMultipleLogBuffer.go |   2 +-
 ...dDataTrendLogMultipleLogDeviceObjectProperty.go |   4 +-
 .../model/BACnetConstructedDataTrigger.go          |   2 +-
 .../model/BACnetConstructedDataUTCOffset.go        |   2 +-
 ...structedDataUTCTimeSynchronizationRecipients.go |   2 +-
 .../readwrite/model/BACnetConstructedDataUnits.go  |   2 +-
 .../model/BACnetConstructedDataUnspecified.go      |   4 +-
 .../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 |   4 +-
 .../model/BACnetConstructedDataVarianceValue.go    |   2 +-
 .../model/BACnetConstructedDataVendorIdentifier.go |   2 +-
 .../model/BACnetConstructedDataVendorName.go       |   2 +-
 .../model/BACnetConstructedDataVerificationTime.go |   2 +-
 .../BACnetConstructedDataVirtualMACAddressTable.go |   2 +-
 .../model/BACnetConstructedDataWeeklySchedule.go   |   4 +-
 .../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 +-
 .../bacnetip/readwrite/model/BACnetContextTag.go   |   7 +-
 .../readwrite/model/BACnetContextTagBitString.go   |   2 +-
 .../readwrite/model/BACnetContextTagBoolean.go     |   4 +-
 .../model/BACnetContextTagCharacterString.go       |   2 +-
 .../readwrite/model/BACnetContextTagDate.go        |   2 +-
 .../readwrite/model/BACnetContextTagDouble.go      |   2 +-
 .../readwrite/model/BACnetContextTagEnumerated.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  |   4 +-
 .../readwrite/model/BACnetDailySchedule.go         |   6 +-
 .../bacnetip/readwrite/model/BACnetDateRange.go    |   4 +-
 .../readwrite/model/BACnetDateRangeEnclosed.go     |   6 +-
 .../bacnetip/readwrite/model/BACnetDateTime.go     |   4 +-
 .../readwrite/model/BACnetDateTimeEnclosed.go      |   6 +-
 .../readwrite/model/BACnetDaysOfWeekTagged.go      |   4 +-
 .../bacnetip/readwrite/model/BACnetDestination.go  |  14 +-
 .../model/BACnetDeviceObjectPropertyReference.go   |   8 +-
 .../BACnetDeviceObjectPropertyReferenceEnclosed.go |   6 +-
 .../readwrite/model/BACnetDeviceObjectReference.go |   4 +-
 .../model/BACnetDeviceObjectReferenceEnclosed.go   |   6 +-
 .../readwrite/model/BACnetDeviceStatusTagged.go    |   6 +-
 .../readwrite/model/BACnetDoorAlarmStateTagged.go  |   6 +-
 .../model/BACnetDoorSecuredStatusTagged.go         |   4 +-
 .../readwrite/model/BACnetDoorStatusTagged.go      |   6 +-
 .../readwrite/model/BACnetDoorValueTagged.go       |   4 +-
 .../model/BACnetEngineeringUnitsTagged.go          |   6 +-
 .../bacnetip/readwrite/model/BACnetError.go        |   5 +-
 .../bacnetip/readwrite/model/BACnetErrorGeneral.go |   2 +-
 .../readwrite/model/BACnetEscalatorFaultTagged.go  |   6 +-
 .../readwrite/model/BACnetEscalatorModeTagged.go   |   6 +-
 .../BACnetEscalatorOperationDirectionTagged.go     |   6 +-
 .../readwrite/model/BACnetEventLogRecord.go        |   4 +-
 .../model/BACnetEventLogRecordLogDatum.go          |   9 +-
 .../model/BACnetEventLogRecordLogDatumLogStatus.go |   2 +-
 .../BACnetEventLogRecordLogDatumNotification.go    |   6 +-
 .../BACnetEventLogRecordLogDatumTimeChange.go      |   2 +-
 .../model/BACnetEventNotificationSubscription.go   |   8 +-
 .../readwrite/model/BACnetEventParameter.go        |   5 +-
 .../model/BACnetEventParameterAccessEvent.go       |   8 +-
 ...tEventParameterAccessEventListOfAccessEvents.go |   6 +-
 .../model/BACnetEventParameterBufferReady.go       |   8 +-
 .../model/BACnetEventParameterChangeOfBitstring.go |  10 +-
 ...ameterChangeOfBitstringListOfBitstringValues.go |   6 +-
 .../BACnetEventParameterChangeOfCharacterString.go |   8 +-
 ...eterChangeOfCharacterStringListOfAlarmValues.go |   6 +-
 .../BACnetEventParameterChangeOfDiscreteValue.go   |   6 +-
 .../BACnetEventParameterChangeOfLifeSavety.go      |  12 +-
 ...ParameterChangeOfLifeSavetyListOfAlarmValues.go |   6 +-
 ...hangeOfLifeSavetyListOfLifeSavetyAlarmValues.go |   6 +-
 .../model/BACnetEventParameterChangeOfState.go     |   8 +-
 ...ACnetEventParameterChangeOfStateListOfValues.go |   6 +-
 .../BACnetEventParameterChangeOfStatusFlags.go     |   8 +-
 .../model/BACnetEventParameterChangeOfTimer.go     |  10 +-
 .../BACnetEventParameterChangeOfTimerAlarmValue.go |   6 +-
 .../model/BACnetEventParameterChangeOfValue.go     |   8 +-
 ...BACnetEventParameterChangeOfValueCivCriteria.go |   9 +-
 ...ventParameterChangeOfValueCivCriteriaBitmask.go |   2 +-
 ...fValueCivCriteriaReferencedPropertyIncrement.go |   2 +-
 .../model/BACnetEventParameterCommandFailure.go    |   8 +-
 .../model/BACnetEventParameterDoubleOutOfRange.go  |  12 +-
 .../model/BACnetEventParameterExtended.go          |  10 +-
 .../BACnetEventParameterExtendedParameters.go      |  32 +--
 .../model/BACnetEventParameterFloatingLimit.go     |  14 +-
 .../readwrite/model/BACnetEventParameterNone.go    |   2 +-
 .../model/BACnetEventParameterOutOfRange.go        |  12 +-
 .../model/BACnetEventParameterSignedOutOfRange.go  |  12 +-
 .../BACnetEventParameterUnsignedOutOfRange.go      |  12 +-
 .../model/BACnetEventParameterUnsignedRange.go     |  10 +-
 .../readwrite/model/BACnetEventPriorities.go       |  10 +-
 .../readwrite/model/BACnetEventStateTagged.go      |   6 +-
 .../readwrite/model/BACnetEventSummariesList.go    |   6 +-
 .../bacnetip/readwrite/model/BACnetEventSummary.go |  14 +-
 .../readwrite/model/BACnetEventTimestamps.go       |   6 +-
 .../model/BACnetEventTimestampsEnclosed.go         |   6 +-
 .../model/BACnetEventTransitionBitsTagged.go       |   4 +-
 .../readwrite/model/BACnetEventTypeTagged.go       |   6 +-
 .../readwrite/model/BACnetFaultParameter.go        |   5 +-
 .../BACnetFaultParameterFaultCharacterString.go    |   6 +-
 ...rameterFaultCharacterStringListOfFaultValues.go |   6 +-
 .../model/BACnetFaultParameterFaultExtended.go     |  10 +-
 .../BACnetFaultParameterFaultExtendedParameters.go |   6 +-
 ...etFaultParameterFaultExtendedParametersEntry.go |   5 +-
 ...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   |   8 +-
 ...ultParameterFaultLifeSafetyListOfFaultValues.go |   6 +-
 .../model/BACnetFaultParameterFaultListed.go       |   6 +-
 .../model/BACnetFaultParameterFaultOutOfRange.go   |   8 +-
 ...tFaultParameterFaultOutOfRangeMaxNormalValue.go |   9 +-
 ...ParameterFaultOutOfRangeMaxNormalValueDouble.go |   2 +-
 ...arameterFaultOutOfRangeMaxNormalValueInteger.go |   2 +-
 ...ltParameterFaultOutOfRangeMaxNormalValueReal.go |   2 +-
 ...rameterFaultOutOfRangeMaxNormalValueUnsigned.go |   2 +-
 ...tFaultParameterFaultOutOfRangeMinNormalValue.go |   9 +-
 ...ParameterFaultOutOfRangeMinNormalValueDouble.go |   2 +-
 ...arameterFaultOutOfRangeMinNormalValueInteger.go |   2 +-
 ...ltParameterFaultOutOfRangeMinNormalValueReal.go |   2 +-
 ...rameterFaultOutOfRangeMinNormalValueUnsigned.go |   2 +-
 .../model/BACnetFaultParameterFaultState.go        |   6 +-
 ...netFaultParameterFaultStateListOfFaultValues.go |   6 +-
 .../model/BACnetFaultParameterFaultStatusFlags.go  |   6 +-
 .../readwrite/model/BACnetFaultParameterNone.go    |   2 +-
 .../readwrite/model/BACnetFaultTypeTagged.go       |   4 +-
 .../model/BACnetFileAccessMethodTagged.go          |   4 +-
 .../readwrite/model/BACnetGroupChannelValue.go     |   6 +-
 .../readwrite/model/BACnetGroupChannelValueList.go |   6 +-
 .../bacnetip/readwrite/model/BACnetHostAddress.go  |   5 +-
 .../readwrite/model/BACnetHostAddressEnclosed.go   |   6 +-
 .../readwrite/model/BACnetHostAddressIpAddress.go  |   2 +-
 .../readwrite/model/BACnetHostAddressName.go       |   2 +-
 .../readwrite/model/BACnetHostAddressNull.go       |   2 +-
 .../bacnetip/readwrite/model/BACnetHostNPort.go    |   4 +-
 .../readwrite/model/BACnetHostNPortEnclosed.go     |   6 +-
 .../bacnetip/readwrite/model/BACnetIPModeTagged.go |   4 +-
 .../readwrite/model/BACnetKeyIdentifier.go         |   4 +-
 .../readwrite/model/BACnetLandingCallStatus.go     |   6 +-
 .../model/BACnetLandingCallStatusCommand.go        |   5 +-
 .../BACnetLandingCallStatusCommandDestination.go   |   2 +-
 .../BACnetLandingCallStatusCommandDirection.go     |   2 +-
 .../readwrite/model/BACnetLandingDoorStatus.go     |   2 +-
 .../BACnetLandingDoorStatusLandingDoorsList.go     |   6 +-
 ...BACnetLandingDoorStatusLandingDoorsListEntry.go |   4 +-
 .../readwrite/model/BACnetLifeSafetyModeTagged.go  |   6 +-
 .../model/BACnetLifeSafetyOperationTagged.go       |   6 +-
 .../readwrite/model/BACnetLifeSafetyStateTagged.go |   6 +-
 .../readwrite/model/BACnetLiftCarCallList.go       |   2 +-
 .../model/BACnetLiftCarCallListFloorList.go        |   6 +-
 .../model/BACnetLiftCarDirectionTagged.go          |   6 +-
 .../model/BACnetLiftCarDoorCommandTagged.go        |   4 +-
 .../model/BACnetLiftCarDriveStatusTagged.go        |   6 +-
 .../readwrite/model/BACnetLiftCarModeTagged.go     |   6 +-
 .../readwrite/model/BACnetLiftFaultTagged.go       |   6 +-
 .../readwrite/model/BACnetLiftGroupModeTagged.go   |   4 +-
 .../readwrite/model/BACnetLightingCommand.go       |  12 +-
 .../model/BACnetLightingCommandEnclosed.go         |   6 +-
 .../model/BACnetLightingInProgressTagged.go        |   4 +-
 .../model/BACnetLightingOperationTagged.go         |   6 +-
 .../model/BACnetLightingTransitionTagged.go        |   6 +-
 .../readwrite/model/BACnetLimitEnableTagged.go     |   4 +-
 .../readwrite/model/BACnetLockStatusTagged.go      |   4 +-
 .../bacnetip/readwrite/model/BACnetLogData.go      |   9 +-
 .../readwrite/model/BACnetLogDataLogData.go        |   6 +-
 .../readwrite/model/BACnetLogDataLogDataEntry.go   |   5 +-
 .../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     |   4 +-
 .../bacnetip/readwrite/model/BACnetLogRecord.go    |   6 +-
 .../readwrite/model/BACnetLogRecordLogDatum.go     |   9 +-
 .../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       |   4 +-
 .../readwrite/model/BACnetLoggingTypeTagged.go     |   6 +-
 .../readwrite/model/BACnetMaintenanceTagged.go     |   6 +-
 .../bacnetip/readwrite/model/BACnetNameValue.go    |   4 +-
 .../readwrite/model/BACnetNameValueCollection.go   |   6 +-
 .../model/BACnetNetworkNumberQualityTagged.go      |   4 +-
 .../model/BACnetNetworkPortCommandTagged.go        |   6 +-
 .../readwrite/model/BACnetNetworkSecurityPolicy.go |   4 +-
 .../readwrite/model/BACnetNetworkTypeTagged.go     |   6 +-
 .../readwrite/model/BACnetNodeTypeTagged.go        |   4 +-
 .../model/BACnetNotificationParameters.go          |   9 +-
 .../BACnetNotificationParametersAccessEvent.go     |  16 +-
 .../BACnetNotificationParametersBufferReady.go     |  10 +-
 ...ACnetNotificationParametersChangeOfBitString.go |   8 +-
 ...otificationParametersChangeOfCharacterString.go |  10 +-
 ...tNotificationParametersChangeOfDiscreteValue.go |   8 +-
 ...ationParametersChangeOfDiscreteValueNewValue.go |   9 +-
 ...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 |  12 +-
 ...netNotificationParametersChangeOfReliability.go |  10 +-
 .../BACnetNotificationParametersChangeOfState.go   |   8 +-
 ...netNotificationParametersChangeOfStatusFlags.go |   8 +-
 .../BACnetNotificationParametersChangeOfTimer.go   |  16 +-
 .../BACnetNotificationParametersChangeOfValue.go   |   8 +-
 ...tNotificationParametersChangeOfValueNewValue.go |   9 +-
 ...onParametersChangeOfValueNewValueChangedBits.go |   2 +-
 ...nParametersChangeOfValueNewValueChangedValue.go |   2 +-
 .../BACnetNotificationParametersCommandFailure.go  |  10 +-
 ...BACnetNotificationParametersComplexEventType.go |   2 +-
 ...BACnetNotificationParametersDoubleOutOfRange.go |  12 +-
 .../model/BACnetNotificationParametersExtended.go  |  10 +-
 ...CnetNotificationParametersExtendedParameters.go |  32 +--
 .../BACnetNotificationParametersFloatingLimit.go   |  12 +-
 .../BACnetNotificationParametersOutOfRange.go      |  12 +-
 ...BACnetNotificationParametersSignedOutOfRange.go |  12 +-
 ...CnetNotificationParametersUnsignedOutOfRange.go |  12 +-
 .../BACnetNotificationParametersUnsignedRange.go   |  10 +-
 .../readwrite/model/BACnetNotifyTypeTagged.go      |   4 +-
 .../model/BACnetObjectPropertyReference.go         |   6 +-
 .../model/BACnetObjectPropertyReferenceEnclosed.go |   6 +-
 .../readwrite/model/BACnetObjectTypeTagged.go      |   6 +-
 .../model/BACnetObjectTypesSupportedTagged.go      |   4 +-
 .../bacnetip/readwrite/model/BACnetOpeningTag.go   |   2 +-
 .../readwrite/model/BACnetOptionalBinaryPV.go      |   5 +-
 .../readwrite/model/BACnetOptionalBinaryPVNull.go  |   2 +-
 .../readwrite/model/BACnetOptionalBinaryPVValue.go |   2 +-
 .../model/BACnetOptionalCharacterString.go         |   5 +-
 .../model/BACnetOptionalCharacterStringNull.go     |   2 +-
 .../model/BACnetOptionalCharacterStringValue.go    |   2 +-
 .../bacnetip/readwrite/model/BACnetOptionalREAL.go |   5 +-
 .../readwrite/model/BACnetOptionalREALNull.go      |   2 +-
 .../readwrite/model/BACnetOptionalREALValue.go     |   2 +-
 .../readwrite/model/BACnetOptionalUnsigned.go      |   5 +-
 .../readwrite/model/BACnetOptionalUnsignedNull.go  |   2 +-
 .../readwrite/model/BACnetOptionalUnsignedValue.go |   2 +-
 .../readwrite/model/BACnetPolarityTagged.go        |   4 +-
 .../readwrite/model/BACnetPortPermission.go        |   4 +-
 .../bacnetip/readwrite/model/BACnetPrescale.go     |   4 +-
 .../readwrite/model/BACnetPriorityArray.go         |   4 +-
 .../readwrite/model/BACnetPriorityValue.go         |   5 +-
 .../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 +-
 .../readwrite/model/BACnetProcessIdSelection.go    |   5 +-
 .../model/BACnetProcessIdSelectionNull.go          |   2 +-
 .../model/BACnetProcessIdSelectionValue.go         |   2 +-
 .../readwrite/model/BACnetProgramErrorTagged.go    |   6 +-
 .../readwrite/model/BACnetProgramRequestTagged.go  |   4 +-
 .../readwrite/model/BACnetProgramStateTagged.go    |   4 +-
 .../readwrite/model/BACnetPropertyAccessResult.go  |  10 +-
 .../BACnetPropertyAccessResultAccessResult.go      |   5 +-
 ...yAccessResultAccessResultPropertyAccessError.go |   2 +-
 ...ropertyAccessResultAccessResultPropertyValue.go |   2 +-
 .../model/BACnetPropertyIdentifierTagged.go        |   6 +-
 .../readwrite/model/BACnetPropertyReference.go     |   4 +-
 .../model/BACnetPropertyReferenceEnclosed.go       |   6 +-
 .../model/BACnetPropertyStateActionUnknown.go      |   2 +-
 .../readwrite/model/BACnetPropertyStates.go        |   5 +-
 .../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          |   6 +-
 .../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         |   8 +-
 .../readwrite/model/BACnetPropertyValues.go        |   6 +-
 .../model/BACnetPropertyWriteDefinition.go         |   8 +-
 .../readwrite/model/BACnetProtocolLevelTagged.go   |   4 +-
 .../readwrite/model/BACnetReadAccessProperty.go    |   6 +-
 .../model/BACnetReadAccessPropertyReadResult.go    |   4 +-
 .../readwrite/model/BACnetReadAccessResult.go      |   4 +-
 .../model/BACnetReadAccessResultListOfResults.go   |   6 +-
 .../model/BACnetReadAccessSpecification.go         |   8 +-
 .../bacnetip/readwrite/model/BACnetRecipient.go    |   5 +-
 .../readwrite/model/BACnetRecipientAddress.go      |   2 +-
 .../readwrite/model/BACnetRecipientDevice.go       |   2 +-
 .../readwrite/model/BACnetRecipientEnclosed.go     |   6 +-
 .../readwrite/model/BACnetRecipientProcess.go      |   4 +-
 .../model/BACnetRecipientProcessEnclosed.go        |   6 +-
 .../readwrite/model/BACnetRejectReasonTagged.go    |   4 +-
 .../readwrite/model/BACnetRelationshipTagged.go    |   6 +-
 .../readwrite/model/BACnetReliabilityTagged.go     |   6 +-
 .../readwrite/model/BACnetRestartReasonTagged.go   |   6 +-
 .../readwrite/model/BACnetResultFlagsTagged.go     |   4 +-
 .../bacnetip/readwrite/model/BACnetRouterEntry.go  |   8 +-
 .../model/BACnetRouterEntryStatusTagged.go         |   4 +-
 .../bacnetip/readwrite/model/BACnetScale.go        |   5 +-
 .../readwrite/model/BACnetScaleFloatScale.go       |   2 +-
 .../readwrite/model/BACnetScaleIntegerScale.go     |   2 +-
 .../readwrite/model/BACnetSecurityKeySet.go        |   8 +-
 .../readwrite/model/BACnetSecurityKeySetKeyIds.go  |   6 +-
 .../readwrite/model/BACnetSecurityLevelTagged.go   |   4 +-
 .../readwrite/model/BACnetSecurityPolicyTagged.go  |   4 +-
 .../readwrite/model/BACnetSegmentationTagged.go    |   4 +-
 .../bacnetip/readwrite/model/BACnetServiceAck.go   |   7 +-
 .../model/BACnetServiceAckAtomicReadFile.go        |   4 +-
 .../model/BACnetServiceAckAtomicReadFileRecord.go  |   6 +-
 .../model/BACnetServiceAckAtomicReadFileStream.go  |   4 +-
 ...BACnetServiceAckAtomicReadFileStreamOrRecord.go |   9 +-
 .../model/BACnetServiceAckAtomicWriteFile.go       |   2 +-
 .../model/BACnetServiceAckAuthenticate.go          |   2 +-
 .../BACnetServiceAckConfirmedPrivateTransfer.go    |   6 +-
 .../model/BACnetServiceAckCreateObject.go          |   2 +-
 .../model/BACnetServiceAckGetAlarmSummary.go       |   6 +-
 .../model/BACnetServiceAckGetEnrollmentSummary.go  |  10 +-
 .../model/BACnetServiceAckGetEventInformation.go   |   4 +-
 .../model/BACnetServiceAckReadProperty.go          |   8 +-
 .../BACnetServiceAckReadPropertyConditional.go     |   2 +-
 .../model/BACnetServiceAckReadPropertyMultiple.go  |   2 +-
 .../readwrite/model/BACnetServiceAckReadRange.go   |  14 +-
 .../readwrite/model/BACnetServiceAckRequestKey.go  |   2 +-
 .../readwrite/model/BACnetServiceAckVTData.go      |   6 +-
 .../readwrite/model/BACnetServiceAckVTOpen.go      |   2 +-
 .../model/BACnetServicesSupportedTagged.go         |   4 +-
 .../readwrite/model/BACnetSetpointReference.go     |   2 +-
 .../bacnetip/readwrite/model/BACnetShedLevel.go    |   5 +-
 .../readwrite/model/BACnetShedLevelAmount.go       |   2 +-
 .../readwrite/model/BACnetShedLevelLevel.go        |   2 +-
 .../readwrite/model/BACnetShedLevelPercent.go      |   2 +-
 .../readwrite/model/BACnetShedStateTagged.go       |   4 +-
 .../readwrite/model/BACnetSilencedStateTagged.go   |   6 +-
 .../bacnetip/readwrite/model/BACnetSpecialEvent.go |   6 +-
 .../model/BACnetSpecialEventListOfTimeValues.go    |   6 +-
 .../readwrite/model/BACnetSpecialEventPeriod.go    |   5 +-
 .../model/BACnetSpecialEventPeriodCalendarEntry.go |   2 +-
 .../BACnetSpecialEventPeriodCalendarReference.go   |   2 +-
 .../readwrite/model/BACnetStatusFlagsTagged.go     |   4 +-
 .../bacnetip/readwrite/model/BACnetTagHeader.go    |  14 +-
 .../readwrite/model/BACnetTagPayloadBitString.go   |   6 +-
 .../model/BACnetTagPayloadCharacterString.go       |   4 +-
 .../readwrite/model/BACnetTagPayloadDate.go        |   8 +-
 .../readwrite/model/BACnetTagPayloadDouble.go      |   2 +-
 .../readwrite/model/BACnetTagPayloadEnumerated.go  |   2 +-
 .../model/BACnetTagPayloadObjectIdentifier.go      |   6 +-
 .../readwrite/model/BACnetTagPayloadOctetString.go |   2 +-
 .../readwrite/model/BACnetTagPayloadReal.go        |   2 +-
 .../model/BACnetTagPayloadSignedInteger.go         |  16 +-
 .../readwrite/model/BACnetTagPayloadTime.go        |   8 +-
 .../model/BACnetTagPayloadUnsignedInteger.go       |  16 +-
 .../bacnetip/readwrite/model/BACnetTimeStamp.go    |   5 +-
 .../readwrite/model/BACnetTimeStampDateTime.go     |   2 +-
 .../readwrite/model/BACnetTimeStampEnclosed.go     |   6 +-
 .../readwrite/model/BACnetTimeStampSequence.go     |   2 +-
 .../readwrite/model/BACnetTimeStampTime.go         |   2 +-
 .../readwrite/model/BACnetTimeStampsEnclosed.go    |   6 +-
 .../bacnetip/readwrite/model/BACnetTimeValue.go    |   4 +-
 .../readwrite/model/BACnetTimerStateChangeValue.go |   5 +-
 .../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      |   4 +-
 .../readwrite/model/BACnetTimerTransitionTagged.go |   4 +-
 .../model/BACnetUnconfirmedServiceChoiceTagged.go  |   4 +-
 .../model/BACnetUnconfirmedServiceRequest.go       |   7 +-
 .../model/BACnetUnconfirmedServiceRequestIAm.go    |   8 +-
 .../model/BACnetUnconfirmedServiceRequestIHave.go  |   6 +-
 ...UnconfirmedServiceRequestTimeSynchronization.go |   4 +-
 ...onfirmedServiceRequestUTCTimeSynchronization.go |   4 +-
 ...rmedServiceRequestUnconfirmedCOVNotification.go |  10 +-
 ...iceRequestUnconfirmedCOVNotificationMultiple.go |  10 +-
 ...edServiceRequestUnconfirmedEventNotification.go |  26 +-
 ...rmedServiceRequestUnconfirmedPrivateTransfer.go |   6 +-
 ...onfirmedServiceRequestUnconfirmedTextMessage.go |   8 +-
 .../BACnetUnconfirmedServiceRequestUnknown.go      |   2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoHas.go |   6 +-
 .../BACnetUnconfirmedServiceRequestWhoHasObject.go |   5 +-
 ...onfirmedServiceRequestWhoHasObjectIdentifier.go |   2 +-
 ...netUnconfirmedServiceRequestWhoHasObjectName.go |   2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoIs.go  |   4 +-
 .../BACnetUnconfirmedServiceRequestWriteGroup.go   |   8 +-
 .../bacnetip/readwrite/model/BACnetVMACEntry.go    |   4 +-
 .../readwrite/model/BACnetVTClassTagged.go         |   6 +-
 .../bacnetip/readwrite/model/BACnetVTSession.go    |   6 +-
 .../bacnetip/readwrite/model/BACnetValueSource.go  |   5 +-
 .../readwrite/model/BACnetValueSourceAddress.go    |   2 +-
 .../readwrite/model/BACnetValueSourceNone.go       |   2 +-
 .../readwrite/model/BACnetValueSourceObject.go     |   2 +-
 .../readwrite/model/BACnetVendorIdTagged.go        |   6 +-
 .../readwrite/model/BACnetWeekNDayTagged.go        |   8 +-
 .../model/BACnetWriteAccessSpecification.go        |   8 +-
 .../readwrite/model/BACnetWriteStatusTagged.go     |   4 +-
 plc4go/protocols/bacnetip/readwrite/model/BVLC.go  |  11 +-
 .../model/BVLCBroadcastDistributionTableEntry.go   |   6 +-
 .../model/BVLCDeleteForeignDeviceTableEntry.go     |   4 +-
 .../model/BVLCDistributeBroadcastToNetwork.go      |   2 +-
 .../readwrite/model/BVLCForeignDeviceTableEntry.go |   8 +-
 .../bacnetip/readwrite/model/BVLCForwardedNPDU.go  |   6 +-
 .../readwrite/model/BVLCOriginalBroadcastNPDU.go   |   2 +-
 .../readwrite/model/BVLCOriginalUnicastNPDU.go     |   2 +-
 .../model/BVLCReadBroadcastDistributionTableAck.go |   2 +-
 .../model/BVLCReadForeignDeviceTableAck.go         |   2 +-
 .../readwrite/model/BVLCRegisterForeignDevice.go   |   2 +-
 .../bacnetip/readwrite/model/BVLCResult.go         |   2 +-
 .../readwrite/model/BVLCResultCodeTagged.go        |   4 +-
 .../bacnetip/readwrite/model/BVLCSecureBVLL.go     |   2 +-
 .../model/BVLCWriteBroadcastDistributionTable.go   |   2 +-
 .../bacnetip/readwrite/model/ChangeListAddError.go |   4 +-
 .../readwrite/model/ChangeListRemoveError.go       |   4 +-
 .../model/ConfirmedEventNotificationRequest.go     |  26 +-
 .../model/ConfirmedPrivateTransferError.go         |   8 +-
 .../bacnetip/readwrite/model/CreateObjectError.go  |   4 +-
 plc4go/protocols/bacnetip/readwrite/model/Error.go |   4 +-
 .../bacnetip/readwrite/model/ErrorClassTagged.go   |   6 +-
 .../bacnetip/readwrite/model/ErrorCodeTagged.go    |   6 +-
 .../bacnetip/readwrite/model/ErrorEnclosed.go      |   6 +-
 .../readwrite/model/ListOfCovNotifications.go      |   8 +-
 .../readwrite/model/ListOfCovNotificationsList.go  |   6 +-
 .../readwrite/model/ListOfCovNotificationsValue.go |   8 +-
 .../readwrite/model/MaxApduLengthAcceptedTagged.go |   4 +-
 .../readwrite/model/MaxSegmentsAcceptedTagged.go   |   4 +-
 plc4go/protocols/bacnetip/readwrite/model/NLM.go   |   9 +-
 .../model/NLMDisconnectConnectionToNetwork.go      |   2 +-
 .../model/NLMEstablishConnectionToNetwork.go       |   4 +-
 .../readwrite/model/NLMIAmRouterToNetwork.go       |   2 +-
 .../readwrite/model/NLMICouldBeRouterToNetwork.go  |   4 +-
 .../readwrite/model/NLMInitalizeRoutingTable.go    |   4 +-
 .../readwrite/model/NLMInitalizeRoutingTableAck.go |   4 +-
 .../model/NLMInitalizeRoutingTablePortMapping.go   |   8 +-
 .../readwrite/model/NLMRejectRouterToNetwork.go    |   4 +-
 .../readwrite/model/NLMRouterAvailableToNetwork.go |   2 +-
 .../readwrite/model/NLMRouterBusyToNetwork.go      |   2 +-
 .../readwrite/model/NLMWhoIsRouterToNetwork.go     |   2 +-
 plc4go/protocols/bacnetip/readwrite/model/NPDU.go  |  22 +-
 .../bacnetip/readwrite/model/NPDUControl.go        |  14 +-
 .../readwrite/model/NPDUNetworkPriorityTagged.go   |   4 +-
 .../model/SubscribeCOVPropertyMultipleError.go     |   4 +-
 ...PropertyMultipleErrorFirstFailedSubscription.go |  10 +-
 .../bacnetip/readwrite/model/VTCloseError.go       |   4 +-
 .../VTCloseErrorListOfVTSessionIdentifiers.go      |   6 +-
 .../readwrite/model/WritePropertyMultipleError.go  |   4 +-
 plc4go/protocols/cbus/readwrite/ParserHelper.go    |  12 +-
 plc4go/protocols/cbus/readwrite/XmlParserHelper.go |   9 +-
 plc4go/protocols/cbus/readwrite/model/Alpha.go     |   7 +-
 .../cbus/readwrite/model/BridgeAddress.go          |   2 +-
 .../protocols/cbus/readwrite/model/BridgeCount.go  |   2 +-
 plc4go/protocols/cbus/readwrite/model/CALData.go   |   7 +-
 .../readwrite/model/CALDataReplyAcknowledge.go     |   4 +-
 .../cbus/readwrite/model/CALDataReplyReply.go      |   4 +-
 .../cbus/readwrite/model/CALDataReplyStatus.go     |   6 +-
 .../readwrite/model/CALDataReplyStatusExtended.go  |   8 +-
 .../readwrite/model/CALDataRequestGetStatus.go     |   4 +-
 .../cbus/readwrite/model/CALDataRequestIdentify.go |   2 +-
 .../cbus/readwrite/model/CALDataRequestRecall.go   |   4 +-
 plc4go/protocols/cbus/readwrite/model/CALReply.go  |  96 +++----
 .../protocols/cbus/readwrite/model/CALReplyLong.go |  21 +-
 .../cbus/readwrite/model/CALReplyReply.go          |  10 +-
 .../cbus/readwrite/model/CALReplyShort.go          |   7 +-
 .../protocols/cbus/readwrite/model/CBusCommand.go  |  61 ++++-
 .../readwrite/model/CBusCommandDeviceManagement.go | 253 +++++++++++++++++++
 .../model/CBusCommandPointToMultiPoint.go          |   2 +-
 .../readwrite/model/CBusCommandPointToPoint.go     |   2 +-
 .../model/CBusCommandPointToPointToMultiPoint.go   |   2 +-
 .../CBusCommandPointToPointToMultiPointNormal.go   |  70 +-----
 .../CBusCommandPointToPointToMultiPointStatus.go   |  70 +-----
 .../cbus/readwrite/model/CBusConstants.go          |   2 +-
 .../protocols/cbus/readwrite/model/CBusHeader.go   |  74 +++---
 .../protocols/cbus/readwrite/model/CBusMessage.go  |   5 +-
 .../cbus/readwrite/model/CBusMessageToClient.go    |  54 ++--
 .../cbus/readwrite/model/CBusMessageToServer.go    |  54 ++--
 .../protocols/cbus/readwrite/model/CBusOptions.go  |  16 +-
 .../model/CBusPointToMultiPointCommand.go          |  52 +++-
 .../model/CBusPointToMultiPointCommandNormal.go    |  72 +-----
 .../model/CBusPointToMultiPointCommandStatus.go    |  72 +-----
 .../readwrite/model/CBusPointToPointCommand.go     |  99 +++-----
 .../model/CBusPointToPointCommandDirect.go         |  12 +-
 .../model/CBusPointToPointCommandIndirect.go       |  14 +-
 .../model/CBusPointToPointToMultipointCommand.go   |  56 ++++-
 plc4go/protocols/cbus/readwrite/model/Checksum.go  |   2 +-
 .../cbus/readwrite/model/CommandHeader.go          |   2 +-
 .../protocols/cbus/readwrite/model/Confirmation.go |  11 +-
 .../cbus/readwrite/model/ConfirmationReply.go      |  10 +-
 ...rmationSuccessful.go => ConfirmationUnknown.go} |  72 +++---
 .../cbus/readwrite/model/ExclamationMarkReply.go   |   8 +-
 .../readwrite/model/ExtendedFormatStatusReply.go   |  91 +++----
 .../cbus/readwrite/model/ExtendedStatusHeader.go   |   4 +-
 .../cbus/readwrite/model/IdentifyReplyCommand.go   |   5 +-
 .../model/IdentifyReplyCommandDSIStatus.go         |  20 +-
 ...dentifyReplyCommandExtendedDiagnosticSummary.go |  44 ++--
 .../model/IdentifyReplyCommandFirmwareSummary.go   |   6 +-
 .../model/IdentifyReplyCommandFirmwareVersion.go   |   2 +-
 .../IdentifyReplyCommandGAVPhysicalAddresses.go    |   2 +-
 .../model/IdentifyReplyCommandGAVValuesCurrent.go  |   2 +-
 .../model/IdentifyReplyCommandGAVValuesStored.go   |   2 +-
 .../model/IdentifyReplyCommandManufacturer.go      |   2 +-
 .../model/IdentifyReplyCommandNetworkVoltage.go    |   8 +-
 .../readwrite/model/IdentifyReplyCommandType.go    |   2 +-
 .../protocols/cbus/readwrite/model/MonitoredSAL.go |  96 +++----
 .../model/MonitoredSALLongFormSmartMode.go         |  21 +-
 .../cbus/readwrite/model/MonitoredSALReply.go      |  10 +-
 .../model/MonitoredSALShortFormBasicMode.go        |  17 +-
 .../cbus/readwrite/model/NetworkNumber.go          |   2 +-
 .../model/NetworkProtocolControlInformation.go     |   6 +-
 .../protocols/cbus/readwrite/model/NetworkRoute.go |   8 +-
 .../cbus/readwrite/model/ParameterChange.go        |  84 +++----
 .../cbus/readwrite/model/ParameterChangeReply.go   |  10 +-
 plc4go/protocols/cbus/readwrite/model/PowerUp.go   | 129 ++++++----
 .../protocols/cbus/readwrite/model/PowerUpReply.go |  10 +-
 plc4go/protocols/cbus/readwrite/model/Reply.go     |  69 ++++--
 .../protocols/cbus/readwrite/model/ReplyNetwork.go |   6 +-
 plc4go/protocols/cbus/readwrite/model/Request.go   | 208 ++++++++++++++++
 .../cbus/readwrite/model/RequestCommand.go         | 203 +++++++++++++++
 .../readwrite/model/RequestDirectCommandAccess.go  | 275 +++++++++++++++++++++
 .../protocols/cbus/readwrite/model/RequestEmpty.go | 203 +++++++++++++++
 .../protocols/cbus/readwrite/model/RequestNull.go  | 238 ++++++++++++++++++
 .../protocols/cbus/readwrite/model/RequestReset.go | 238 ++++++++++++++++++
 .../readwrite/model/RequestSmartConnectShortcut.go | 238 ++++++++++++++++++
 .../cbus/readwrite/model/RequestTermination.go     | 159 ++++++++++++
 .../model/{PowerUp.go => ResponseTermination.go}   | 111 ++++-----
 plc4go/protocols/cbus/readwrite/model/SALData.go   |   7 +-
 .../protocols/cbus/readwrite/model/SALDataOff.go   |   2 +-
 plc4go/protocols/cbus/readwrite/model/SALDataOn.go |   2 +-
 .../cbus/readwrite/model/SALDataRampToLevel.go     |   4 +-
 .../cbus/readwrite/model/SALDataTerminateRamp.go   |   2 +-
 .../cbus/readwrite/model/SerialInterfaceAddress.go |   2 +-
 .../cbus/readwrite/model/ServerErrorReply.go       | 190 ++++++++++++++
 .../readwrite/model/StandardFormatStatusReply.go   |  89 +++----
 .../protocols/cbus/readwrite/model/StatusByte.go   |   8 +-
 .../protocols/cbus/readwrite/model/StatusHeader.go |   4 +-
 .../cbus/readwrite/model/StatusRequest.go          |   7 +-
 .../readwrite/model/StatusRequestBinaryState.go    |   6 +-
 .../cbus/readwrite/model/StatusRequestLevel.go     |   8 +-
 .../protocols/cbus/readwrite/model/UnitAddress.go  |   2 +-
 plc4go/protocols/df1/readwrite/model/DF1Command.go |  11 +-
 plc4go/protocols/df1/readwrite/model/DF1Symbol.go  |   9 +-
 .../df1/readwrite/model/DF1SymbolMessageFrame.go   |  12 +-
 .../readwrite/model/DF1UnprotectedReadRequest.go   |   4 +-
 .../protocols/eip/readwrite/model/CipExchange.go   |  10 +-
 plc4go/protocols/eip/readwrite/model/CipRRData.go  |   6 +-
 .../eip/readwrite/model/CipReadRequest.go          |   6 +-
 .../eip/readwrite/model/CipReadResponse.go         |  10 +-
 plc4go/protocols/eip/readwrite/model/CipService.go |   7 +-
 .../eip/readwrite/model/CipUnconnectedRequest.go   |  22 +-
 .../eip/readwrite/model/CipWriteRequest.go         |  10 +-
 .../eip/readwrite/model/CipWriteResponse.go        |   6 +-
 .../eip/readwrite/model/EipConnectionRequest.go    |   4 +-
 plc4go/protocols/eip/readwrite/model/EipPacket.go  |  17 +-
 .../eip/readwrite/model/MultipleServiceRequest.go  |   6 +-
 .../eip/readwrite/model/MultipleServiceResponse.go |  12 +-
 plc4go/protocols/eip/readwrite/model/Services.go   |   6 +-
 .../firmata/readwrite/model/FirmataCommand.go      |   7 +-
 .../model/FirmataCommandProtocolVersion.go         |   4 +-
 .../model/FirmataCommandSetDigitalPinValue.go      |   6 +-
 .../readwrite/model/FirmataCommandSetPinMode.go    |   4 +-
 .../firmata/readwrite/model/FirmataCommandSysex.go |   4 +-
 .../firmata/readwrite/model/FirmataMessage.go      |   7 +-
 .../readwrite/model/FirmataMessageAnalogIO.go      |   4 +-
 .../readwrite/model/FirmataMessageCommand.go       |   2 +-
 .../readwrite/model/FirmataMessageDigitalIO.go     |   4 +-
 .../model/FirmataMessageSubscribeAnalogPinValue.go |   6 +-
 .../FirmataMessageSubscribeDigitalPinValue.go      |   6 +-
 .../firmata/readwrite/model/SysexCommand.go        |   7 +-
 .../SysexCommandAnalogMappingQueryResponse.go      |   2 +-
 .../readwrite/model/SysexCommandExtendedId.go      |   2 +-
 .../readwrite/model/SysexCommandPinStateQuery.go   |   2 +-
 .../model/SysexCommandPinStateResponse.go          |   6 +-
 .../model/SysexCommandReportFirmwareResponse.go    |   4 +-
 plc4go/protocols/knxnetip/readwrite/model/Apdu.go  |  11 +-
 .../knxnetip/readwrite/model/ApduControl.go        |   7 +-
 .../readwrite/model/ApduControlContainer.go        |   2 +-
 .../protocols/knxnetip/readwrite/model/ApduData.go |   7 +-
 .../knxnetip/readwrite/model/ApduDataContainer.go  |   2 +-
 .../model/ApduDataDeviceDescriptorRead.go          |   2 +-
 .../model/ApduDataDeviceDescriptorResponse.go      |   4 +-
 .../knxnetip/readwrite/model/ApduDataExt.go        |   7 +-
 .../readwrite/model/ApduDataExtAuthorizeRequest.go |   4 +-
 .../model/ApduDataExtAuthorizeResponse.go          |   2 +-
 .../model/ApduDataExtPropertyDescriptionRead.go    |   6 +-
 .../ApduDataExtPropertyDescriptionResponse.go      |  20 +-
 .../model/ApduDataExtPropertyValueRead.go          |   8 +-
 .../model/ApduDataExtPropertyValueResponse.go      |  10 +-
 .../model/ApduDataExtPropertyValueWrite.go         |  10 +-
 .../readwrite/model/ApduDataGroupValueRead.go      |   2 +-
 .../readwrite/model/ApduDataGroupValueResponse.go  |   4 +-
 .../readwrite/model/ApduDataGroupValueWrite.go     |   4 +-
 .../knxnetip/readwrite/model/ApduDataMemoryRead.go |   4 +-
 .../readwrite/model/ApduDataMemoryResponse.go      |   6 +-
 .../knxnetip/readwrite/model/ApduDataOther.go      |   2 +-
 plc4go/protocols/knxnetip/readwrite/model/CEMI.go  |   7 +-
 .../readwrite/model/CEMIAdditionalInformation.go   |   7 +-
 .../CEMIAdditionalInformationBusmonitorInfo.go     |  14 +-
 .../CEMIAdditionalInformationRelativeTimestamp.go  |   4 +-
 .../knxnetip/readwrite/model/ChannelInformation.go |   4 +-
 .../knxnetip/readwrite/model/ComObjectTable.go     |   5 +-
 .../model/ComObjectTableRealisationType1.go        |   6 +-
 .../model/ComObjectTableRealisationType2.go        |   6 +-
 .../model/ComObjectTableRealisationType6.go        |   2 +-
 .../knxnetip/readwrite/model/ConnectionRequest.go  |   6 +-
 .../model/ConnectionRequestInformation.go          |   9 +-
 ...ConnectionRequestInformationTunnelConnection.go |   4 +-
 .../knxnetip/readwrite/model/ConnectionResponse.go |   8 +-
 .../readwrite/model/ConnectionResponseDataBlock.go |   9 +-
 .../ConnectionResponseDataBlockTunnelConnection.go |   2 +-
 .../readwrite/model/ConnectionStateRequest.go      |   6 +-
 .../readwrite/model/ConnectionStateResponse.go     |   4 +-
 .../knxnetip/readwrite/model/DIBDeviceInfo.go      |  20 +-
 .../knxnetip/readwrite/model/DIBSuppSvcFamilies.go |   6 +-
 .../knxnetip/readwrite/model/DescriptionRequest.go |   2 +-
 .../readwrite/model/DescriptionResponse.go         |   4 +-
 .../readwrite/model/DeviceConfigurationAck.go      |   2 +-
 .../model/DeviceConfigurationAckDataBlock.go       |   8 +-
 .../readwrite/model/DeviceConfigurationRequest.go  |   4 +-
 .../model/DeviceConfigurationRequestDataBlock.go   |   8 +-
 .../readwrite/model/DeviceDescriptorType2.go       |  20 +-
 .../knxnetip/readwrite/model/DeviceStatus.go       |   4 +-
 .../knxnetip/readwrite/model/DisconnectRequest.go  |   6 +-
 .../knxnetip/readwrite/model/DisconnectResponse.go |   4 +-
 .../model/GroupObjectDescriptorRealisationType1.go |  18 +-
 .../model/GroupObjectDescriptorRealisationType2.go |  18 +-
 .../model/GroupObjectDescriptorRealisationType7.go |  18 +-
 .../model/GroupObjectDescriptorRealisationTypeB.go |  16 +-
 .../readwrite/model/HPAIControlEndpoint.go         |   8 +-
 .../knxnetip/readwrite/model/HPAIDataEndpoint.go   |   8 +-
 .../readwrite/model/HPAIDiscoveryEndpoint.go       |   8 +-
 .../knxnetip/readwrite/model/IPAddress.go          |   2 +-
 .../knxnetip/readwrite/model/KnxAddress.go         |   6 +-
 .../knxnetip/readwrite/model/KnxGroupAddress.go    |   5 +-
 .../readwrite/model/KnxGroupAddress2Level.go       |   4 +-
 .../readwrite/model/KnxGroupAddress3Level.go       |   6 +-
 .../readwrite/model/KnxGroupAddressFreeLevel.go    |   2 +-
 .../knxnetip/readwrite/model/KnxNetIpCore.go       |   2 +-
 .../readwrite/model/KnxNetIpDeviceManagement.go    |   2 +-
 .../knxnetip/readwrite/model/KnxNetIpMessage.go    |  13 +-
 .../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         |   8 +-
 .../protocols/knxnetip/readwrite/model/LDataCon.go |   6 +-
 .../knxnetip/readwrite/model/LDataExtended.go      |  14 +-
 .../knxnetip/readwrite/model/LDataFrame.go         |  19 +-
 .../protocols/knxnetip/readwrite/model/LDataInd.go |   6 +-
 .../protocols/knxnetip/readwrite/model/LDataReq.go |   6 +-
 .../knxnetip/readwrite/model/LPollData.go          |   8 +-
 .../knxnetip/readwrite/model/MACAddress.go         |   2 +-
 .../knxnetip/readwrite/model/MPropReadCon.go       |  12 +-
 .../knxnetip/readwrite/model/MPropReadReq.go       |  10 +-
 .../model/ProjectInstallationIdentifier.go         |   4 +-
 .../knxnetip/readwrite/model/RelativeTimestamp.go  |   2 +-
 .../knxnetip/readwrite/model/SearchRequest.go      |   2 +-
 .../knxnetip/readwrite/model/SearchResponse.go     |   6 +-
 .../knxnetip/readwrite/model/ServiceId.go          |   7 +-
 .../knxnetip/readwrite/model/TunnelingRequest.go   |   4 +-
 .../readwrite/model/TunnelingRequestDataBlock.go   |   8 +-
 .../knxnetip/readwrite/model/TunnelingResponse.go  |   2 +-
 .../readwrite/model/TunnelingResponseDataBlock.go  |   8 +-
 .../knxnetip/readwrite/model/UnknownMessage.go     |   2 +-
 .../protocols/modbus/readwrite/model/ModbusADU.go  |   5 +-
 .../modbus/readwrite/model/ModbusAsciiADU.go       |   6 +-
 .../modbus/readwrite/model/ModbusConstants.go      |   2 +-
 .../model/ModbusDeviceInformationObject.go         |   6 +-
 .../protocols/modbus/readwrite/model/ModbusPDU.go  |   9 +-
 .../readwrite/model/ModbusPDUDiagnosticRequest.go  |   4 +-
 .../readwrite/model/ModbusPDUDiagnosticResponse.go |   4 +-
 .../modbus/readwrite/model/ModbusPDUError.go       |   2 +-
 .../model/ModbusPDUGetComEventCounterResponse.go   |   4 +-
 .../model/ModbusPDUGetComEventLogResponse.go       |  10 +-
 .../ModbusPDUMaskWriteHoldingRegisterRequest.go    |   6 +-
 .../ModbusPDUMaskWriteHoldingRegisterResponse.go   |   6 +-
 .../readwrite/model/ModbusPDUReadCoilsRequest.go   |   4 +-
 .../readwrite/model/ModbusPDUReadCoilsResponse.go  |   4 +-
 .../ModbusPDUReadDeviceIdentificationRequest.go    |   6 +-
 .../ModbusPDUReadDeviceIdentificationResponse.go   |  16 +-
 .../model/ModbusPDUReadDiscreteInputsRequest.go    |   4 +-
 .../model/ModbusPDUReadDiscreteInputsResponse.go   |   4 +-
 .../model/ModbusPDUReadExceptionStatusResponse.go  |   2 +-
 .../model/ModbusPDUReadFifoQueueRequest.go         |   2 +-
 .../model/ModbusPDUReadFifoQueueResponse.go        |   6 +-
 .../model/ModbusPDUReadFileRecordRequest.go        |   4 +-
 .../model/ModbusPDUReadFileRecordRequestItem.go    |   8 +-
 .../model/ModbusPDUReadFileRecordResponse.go       |   4 +-
 .../model/ModbusPDUReadFileRecordResponseItem.go   |   6 +-
 .../model/ModbusPDUReadHoldingRegistersRequest.go  |   4 +-
 .../model/ModbusPDUReadHoldingRegistersResponse.go |   4 +-
 .../model/ModbusPDUReadInputRegistersRequest.go    |   4 +-
 .../model/ModbusPDUReadInputRegistersResponse.go   |   4 +-
 ...sPDUReadWriteMultipleHoldingRegistersRequest.go |  12 +-
 ...PDUReadWriteMultipleHoldingRegistersResponse.go |   4 +-
 .../model/ModbusPDUReportServerIdResponse.go       |   4 +-
 .../model/ModbusPDUWriteFileRecordRequest.go       |   4 +-
 .../model/ModbusPDUWriteFileRecordRequestItem.go   |  10 +-
 .../model/ModbusPDUWriteFileRecordResponse.go      |   4 +-
 .../model/ModbusPDUWriteFileRecordResponseItem.go  |  10 +-
 .../model/ModbusPDUWriteMultipleCoilsRequest.go    |   8 +-
 .../model/ModbusPDUWriteMultipleCoilsResponse.go   |   4 +-
 ...odbusPDUWriteMultipleHoldingRegistersRequest.go |   8 +-
 ...dbusPDUWriteMultipleHoldingRegistersResponse.go |   4 +-
 .../model/ModbusPDUWriteSingleCoilRequest.go       |   4 +-
 .../model/ModbusPDUWriteSingleCoilResponse.go      |   4 +-
 .../model/ModbusPDUWriteSingleRegisterRequest.go   |   4 +-
 .../model/ModbusPDUWriteSingleRegisterResponse.go  |   4 +-
 .../modbus/readwrite/model/ModbusRtuADU.go         |   6 +-
 .../modbus/readwrite/model/ModbusTcpADU.go         |  10 +-
 .../model/AlarmMessageAckObjectPushType.go         |  14 +-
 .../s7/readwrite/model/AlarmMessageAckPushType.go  |   8 +-
 .../readwrite/model/AlarmMessageAckResponseType.go |   6 +-
 .../s7/readwrite/model/AlarmMessageAckType.go      |   6 +-
 .../readwrite/model/AlarmMessageObjectAckType.go   |  14 +-
 .../readwrite/model/AlarmMessageObjectPushType.go  |  20 +-
 .../readwrite/model/AlarmMessageObjectQueryType.go |  20 +-
 .../s7/readwrite/model/AlarmMessagePushType.go     |   8 +-
 .../s7/readwrite/model/AlarmMessageQueryType.go    |  12 +-
 .../s7/readwrite/model/AssociatedValueType.go      |   8 +-
 plc4go/protocols/s7/readwrite/model/COTPPacket.go  |  13 +-
 .../readwrite/model/COTPPacketConnectionRequest.go |   6 +-
 .../model/COTPPacketConnectionResponse.go          |   6 +-
 .../protocols/s7/readwrite/model/COTPPacketData.go |   4 +-
 .../readwrite/model/COTPPacketDisconnectRequest.go |   6 +-
 .../model/COTPPacketDisconnectResponse.go          |   4 +-
 .../s7/readwrite/model/COTPPacketTpduError.go      |   4 +-
 .../protocols/s7/readwrite/model/COTPParameter.go  |   9 +-
 .../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 |  16 +-
 plc4go/protocols/s7/readwrite/model/S7Address.go   |   7 +-
 .../protocols/s7/readwrite/model/S7AddressAny.go   |  12 +-
 .../s7/readwrite/model/S7DataAlarmMessage.go       |   9 +-
 plc4go/protocols/s7/readwrite/model/S7Message.go   |  21 +-
 .../s7/readwrite/model/S7MessageObjectRequest.go   |  14 +-
 .../s7/readwrite/model/S7MessageObjectResponse.go  |   6 +-
 .../s7/readwrite/model/S7MessageResponse.go        |   4 +-
 .../s7/readwrite/model/S7MessageResponseData.go    |   4 +-
 plc4go/protocols/s7/readwrite/model/S7Parameter.go |   7 +-
 .../readwrite/model/S7ParameterModeTransition.go   |  14 +-
 .../readwrite/model/S7ParameterReadVarRequest.go   |   4 +-
 .../readwrite/model/S7ParameterReadVarResponse.go  |   2 +-
 .../model/S7ParameterSetupCommunication.go         |   8 +-
 .../s7/readwrite/model/S7ParameterUserData.go      |   4 +-
 .../s7/readwrite/model/S7ParameterUserDataItem.go  |   7 +-
 .../model/S7ParameterUserDataItemCPUFunctions.go   |  18 +-
 .../readwrite/model/S7ParameterWriteVarRequest.go  |   4 +-
 .../readwrite/model/S7ParameterWriteVarResponse.go |   2 +-
 plc4go/protocols/s7/readwrite/model/S7Payload.go   |   5 +-
 .../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  |  14 +-
 .../s7/readwrite/model/S7PayloadNotify.go          |   2 +-
 .../s7/readwrite/model/S7PayloadNotify8.go         |   2 +-
 .../s7/readwrite/model/S7PayloadReadVarResponse.go |   2 +-
 .../s7/readwrite/model/S7PayloadUserData.go        |   2 +-
 .../s7/readwrite/model/S7PayloadUserDataItem.go    |  11 +-
 .../S7PayloadUserDataItemCpuFunctionAlarmAck.go    |   6 +-
 ...yloadUserDataItemCpuFunctionAlarmAckResponse.go |   6 +-
 .../S7PayloadUserDataItemCpuFunctionAlarmQuery.go  |  18 +-
 ...oadUserDataItemCpuFunctionAlarmQueryResponse.go |  10 +-
 ...ayloadUserDataItemCpuFunctionMsgSubscription.go |  10 +-
 ...aItemCpuFunctionMsgSubscriptionAlarmResponse.go |  10 +-
 ...ataItemCpuFunctionMsgSubscriptionSysResponse.go |   4 +-
 ...PayloadUserDataItemCpuFunctionReadSzlRequest.go |   4 +-
 ...ayloadUserDataItemCpuFunctionReadSzlResponse.go |  10 +-
 .../s7/readwrite/model/S7PayloadWriteVarRequest.go |   2 +-
 .../readwrite/model/S7PayloadWriteVarResponse.go   |   2 +-
 .../s7/readwrite/model/S7VarPayloadDataItem.go     |  10 +-
 .../s7/readwrite/model/S7VarPayloadStatusItem.go   |   2 +-
 .../readwrite/model/S7VarRequestParameterItem.go   |   7 +-
 .../model/S7VarRequestParameterItemAddress.go      |   4 +-
 plc4go/protocols/s7/readwrite/model/State.go       |  16 +-
 .../s7/readwrite/model/SzlDataTreeItem.go          |  10 +-
 plc4go/protocols/s7/readwrite/model/SzlId.go       |   6 +-
 plc4go/protocols/s7/readwrite/model/TPKTPacket.go  |   8 +-
 .../protocols/simulated/readwrite/model/Dummy.go   |   2 +-
 plc4go/tools/plc4xpcapanalyzer/cmd/analyze.go      |   7 +-
 plc4go/tools/plc4xpcapanalyzer/cmd/root.go         |  10 +-
 .../internal/analyzer/analyzer.go                  |  41 ++-
 .../internal/cbusanalyzer/analyzer.go              |  15 +-
 .../plc4xpcapanalyzer/internal/common/common.go    |  16 +-
 .../apache/plc4x/java/cbus/RandomPackagesTest.java | 101 +++++++-
 .../src/main/resources/protocols/cbus/c-bus.mspec  | 163 +++++++-----
 1649 files changed, 6646 insertions(+), 4501 deletions(-)
 create mode 100644 plc4go/protocols/cbus/readwrite/model/CBusCommandDeviceManagement.go
 copy plc4go/protocols/cbus/readwrite/model/{ConfirmationSuccessful.go => ConfirmationUnknown.go} (54%)
 create mode 100644 plc4go/protocols/cbus/readwrite/model/Request.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestCommand.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestDirectCommandAccess.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestEmpty.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestNull.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestReset.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestSmartConnectShortcut.go
 create mode 100644 plc4go/protocols/cbus/readwrite/model/RequestTermination.go
 copy plc4go/protocols/cbus/readwrite/model/{PowerUp.go => ResponseTermination.go} (52%)
 create mode 100644 plc4go/protocols/cbus/readwrite/model/ServerErrorReply.go


[plc4x] 05/06: feat(codegen/plc4go): add information of the type into the error message

Posted by sr...@apache.org.
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

commit 5dfee9081f763a5e262aa7ac1b78fb5b801089ee
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Jul 1 15:51:15 2022 +0200

    feat(codegen/plc4go): add information of the type into the error message
---
 .../templates/go/complex-type-template.go.ftlh     |  48 +++----
 .../readwrite/model/CIPEncapsulationPacket.go      |  16 +--
 .../readwrite/model/CIPEncapsulationReadRequest.go |   2 +-
 .../model/CIPEncapsulationReadResponse.go          |   2 +-
 .../readwrite/model/DF1CommandRequestMessage.go    |   2 +-
 ...mandResponseMessageProtectedTypedLogicalRead.go |   2 +-
 .../abeth/readwrite/model/DF1RequestCommand.go     |   4 +-
 .../abeth/readwrite/model/DF1RequestMessage.go     |  14 +-
 .../model/DF1RequestProtectedTypedLogicalRead.go   |  10 +-
 .../abeth/readwrite/model/DF1ResponseMessage.go    |  16 +--
 .../model/AdsAddDeviceNotificationRequest.go       |  16 +--
 .../model/AdsAddDeviceNotificationResponse.go      |   4 +-
 plc4go/protocols/ads/readwrite/model/AdsData.go    |   2 +-
 .../model/AdsDeleteDeviceNotificationRequest.go    |   2 +-
 .../model/AdsDeleteDeviceNotificationResponse.go   |   2 +-
 .../model/AdsDeviceNotificationRequest.go          |   6 +-
 .../ads/readwrite/model/AdsMultiRequestItem.go     |   2 +-
 .../ads/readwrite/model/AdsMultiRequestItemRead.go |   6 +-
 .../model/AdsMultiRequestItemReadWrite.go          |   8 +-
 .../readwrite/model/AdsMultiRequestItemWrite.go    |   6 +-
 .../ads/readwrite/model/AdsNotificationSample.go   |   6 +-
 .../readwrite/model/AdsReadDeviceInfoResponse.go   |  10 +-
 .../ads/readwrite/model/AdsReadRequest.go          |   6 +-
 .../ads/readwrite/model/AdsReadResponse.go         |   6 +-
 .../ads/readwrite/model/AdsReadStateResponse.go    |   6 +-
 .../ads/readwrite/model/AdsReadWriteRequest.go     |  12 +-
 .../ads/readwrite/model/AdsReadWriteResponse.go    |   6 +-
 .../ads/readwrite/model/AdsStampHeader.go          |   6 +-
 .../ads/readwrite/model/AdsWriteControlRequest.go  |   8 +-
 .../ads/readwrite/model/AdsWriteControlResponse.go |   2 +-
 .../ads/readwrite/model/AdsWriteRequest.go         |   8 +-
 .../ads/readwrite/model/AdsWriteResponse.go        |   2 +-
 plc4go/protocols/ads/readwrite/model/AmsNetId.go   |  12 +-
 plc4go/protocols/ads/readwrite/model/AmsPacket.go  |  20 +--
 .../readwrite/model/AmsSerialAcknowledgeFrame.go   |  12 +-
 .../ads/readwrite/model/AmsSerialFrame.go          |  14 +-
 .../ads/readwrite/model/AmsSerialResetFrame.go     |  12 +-
 .../protocols/ads/readwrite/model/AmsTCPPacket.go  |   6 +-
 plc4go/protocols/ads/readwrite/model/State.go      |  20 +--
 plc4go/protocols/bacnetip/readwrite/model/APDU.go  |   4 +-
 .../bacnetip/readwrite/model/APDUAbort.go          |   8 +-
 .../bacnetip/readwrite/model/APDUComplexAck.go     |  18 +--
 .../readwrite/model/APDUConfirmedRequest.go        |  24 ++--
 .../bacnetip/readwrite/model/APDUError.go          |   8 +-
 .../bacnetip/readwrite/model/APDUReject.go         |   6 +-
 .../bacnetip/readwrite/model/APDUSegmentAck.go     |  12 +-
 .../bacnetip/readwrite/model/APDUSimpleAck.go      |   6 +-
 .../readwrite/model/APDUUnconfirmedRequest.go      |   4 +-
 .../bacnetip/readwrite/model/APDUUnknown.go        |   4 +-
 .../readwrite/model/BACnetAbortReasonTagged.go     |   4 +-
 ...ACnetAccessAuthenticationFactorDisableTagged.go |   6 +-
 .../BACnetAccessCredentialDisableReasonTagged.go   |   6 +-
 .../model/BACnetAccessCredentialDisableTagged.go   |   6 +-
 .../readwrite/model/BACnetAccessEventTagged.go     |   6 +-
 .../model/BACnetAccessPassbackModeTagged.go        |   4 +-
 .../bacnetip/readwrite/model/BACnetAccessRule.go   |  10 +-
 .../BACnetAccessRuleLocationSpecifierTagged.go     |   4 +-
 .../BACnetAccessRuleTimeRangeSpecifierTagged.go    |   4 +-
 .../readwrite/model/BACnetAccessThreatLevel.go     |   2 +-
 .../readwrite/model/BACnetAccessUserTypeTagged.go  |   6 +-
 .../model/BACnetAccessZoneOccupancyStateTagged.go  |   6 +-
 .../readwrite/model/BACnetAccumulatorRecord.go     |   8 +-
 ...CnetAccumulatorRecordAccumulatorStatusTagged.go |   4 +-
 .../readwrite/model/BACnetActionCommand.go         |  18 +--
 .../bacnetip/readwrite/model/BACnetActionList.go   |   6 +-
 .../bacnetip/readwrite/model/BACnetActionTagged.go |   4 +-
 .../bacnetip/readwrite/model/BACnetAddress.go      |   4 +-
 .../readwrite/model/BACnetAddressBinding.go        |   4 +-
 .../readwrite/model/BACnetAddressEnclosed.go       |   6 +-
 .../readwrite/model/BACnetApplicationTag.go        |   4 +-
 .../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 +-
 .../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  |   4 +-
 .../readwrite/model/BACnetAssignedLandingCalls.go  |   2 +-
 .../BACnetAssignedLandingCallsLandingCallsList.go  |   6 +-
 ...netAssignedLandingCallsLandingCallsListEntry.go |   4 +-
 .../readwrite/model/BACnetAuthenticationFactor.go  |   6 +-
 .../model/BACnetAuthenticationFactorEnclosed.go    |   6 +-
 .../model/BACnetAuthenticationFactorFormat.go      |   6 +-
 .../model/BACnetAuthenticationFactorTypeTagged.go  |   4 +-
 .../readwrite/model/BACnetAuthenticationPolicy.go  |   6 +-
 .../model/BACnetAuthenticationPolicyList.go        |   6 +-
 .../model/BACnetAuthenticationPolicyListEntry.go   |   4 +-
 .../model/BACnetAuthenticationStatusTagged.go      |   4 +-
 .../model/BACnetAuthorizationExemptionTagged.go    |   6 +-
 .../model/BACnetAuthorizationModeTagged.go         |   6 +-
 .../bacnetip/readwrite/model/BACnetBDTEntry.go     |   4 +-
 .../readwrite/model/BACnetBackupStateTagged.go     |   4 +-
 .../model/BACnetBinaryLightingPVTagged.go          |   6 +-
 .../readwrite/model/BACnetBinaryPVTagged.go        |   4 +-
 .../model/BACnetCOVMultipleSubscription.go         |  10 +-
 ...bscriptionListOfCovSubscriptionSpecification.go |   6 +-
 ...ptionListOfCovSubscriptionSpecificationEntry.go |   4 +-
 ...riptionSpecificationEntryListOfCovReferences.go |   6 +-
 ...onSpecificationEntryListOfCovReferencesEntry.go |   6 +-
 .../readwrite/model/BACnetCOVSubscription.go       |  10 +-
 .../readwrite/model/BACnetCalendarEntry.go         |   2 +-
 .../readwrite/model/BACnetCalendarEntryDate.go     |   2 +-
 .../model/BACnetCalendarEntryDateRange.go          |   2 +-
 .../readwrite/model/BACnetCalendarEntryEnclosed.go |   6 +-
 .../readwrite/model/BACnetCalendarEntryWeekNDay.go |   2 +-
 .../bacnetip/readwrite/model/BACnetChannelValue.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 +-
 .../bacnetip/readwrite/model/BACnetClientCOV.go    |   2 +-
 .../readwrite/model/BACnetClientCOVNone.go         |   2 +-
 .../readwrite/model/BACnetClientCOVObject.go       |   2 +-
 .../bacnetip/readwrite/model/BACnetClosingTag.go   |   2 +-
 .../model/BACnetConfirmedServiceRequest.go         |   4 +-
 ...ACnetConfirmedServiceRequestAcknowledgeAlarm.go |  12 +-
 .../BACnetConfirmedServiceRequestAddListElement.go |   8 +-
 .../BACnetConfirmedServiceRequestAtomicReadFile.go |   4 +-
 ...tConfirmedServiceRequestAtomicReadFileRecord.go |   4 +-
 ...tConfirmedServiceRequestAtomicReadFileStream.go |   4 +-
 ...edServiceRequestAtomicReadFileStreamOrRecord.go |   6 +-
 ...BACnetConfirmedServiceRequestAtomicWriteFile.go |  10 +-
 .../BACnetConfirmedServiceRequestAuthenticate.go   |   2 +-
 ...firmedServiceRequestConfirmedCOVNotification.go |  10 +-
 ...rviceRequestConfirmedCOVNotificationMultiple.go |  10 +-
 ...rmedServiceRequestConfirmedEventNotification.go |  26 ++--
 ...firmedServiceRequestConfirmedPrivateTransfer.go |   6 +-
 ...tConfirmedServiceRequestConfirmedTextMessage.go |   8 +-
 ...rviceRequestConfirmedTextMessageMessageClass.go |   6 +-
 ...estConfirmedTextMessageMessageClassCharacter.go |   2 +-
 ...questConfirmedTextMessageMessageClassNumeric.go |   2 +-
 ...estConfirmedTextMessageMessagePriorityTagged.go |   4 +-
 .../BACnetConfirmedServiceRequestCreateObject.go   |   4 +-
 ...medServiceRequestCreateObjectObjectSpecifier.go |   8 +-
 .../BACnetConfirmedServiceRequestDeleteObject.go   |   2 +-
 ...rmedServiceRequestDeviceCommunicationControl.go |   6 +-
 ...eviceCommunicationControlEnableDisableTagged.go |   4 +-
 ...tConfirmedServiceRequestGetEnrollmentSummary.go |  12 +-
 ...EnrollmentSummaryAcknowledgementFilterTagged.go |   4 +-
 ...stGetEnrollmentSummaryEventStateFilterTagged.go |   4 +-
 ...iceRequestGetEnrollmentSummaryPriorityFilter.go |   8 +-
 ...etConfirmedServiceRequestGetEventInformation.go |   2 +-
 ...etConfirmedServiceRequestLifeSafetyOperation.go |   8 +-
 .../BACnetConfirmedServiceRequestReadProperty.go   |   6 +-
 ...nfirmedServiceRequestReadPropertyConditional.go |   2 +-
 ...tConfirmedServiceRequestReadPropertyMultiple.go |   2 +-
 .../BACnetConfirmedServiceRequestReadRange.go      |   8 +-
 .../BACnetConfirmedServiceRequestReadRangeRange.go |   6 +-
 ...firmedServiceRequestReadRangeRangeByPosition.go |   4 +-
 ...ServiceRequestReadRangeRangeBySequenceNumber.go |   4 +-
 ...tConfirmedServiceRequestReadRangeRangeByTime.go |   4 +-
 ...netConfirmedServiceRequestReinitializeDevice.go |   4 +-
 ...ializeDeviceReinitializedStateOfDeviceTagged.go |   4 +-
 ...CnetConfirmedServiceRequestRemoveListElement.go |   8 +-
 .../BACnetConfirmedServiceRequestRequestKey.go     |   2 +-
 .../BACnetConfirmedServiceRequestSubscribeCOV.go   |   8 +-
 ...tConfirmedServiceRequestSubscribeCOVProperty.go |  12 +-
 ...edServiceRequestSubscribeCOVPropertyMultiple.go |  10 +-
 ...yMultipleListOfCovSubscriptionSpecifications.go |   8 +-
 ...tipleListOfCovSubscriptionSpecificationsList.go |   6 +-
 ...ListOfCovSubscriptionSpecificationsReference.go |   6 +-
 .../model/BACnetConfirmedServiceRequestUnknown.go  |   2 +-
 .../model/BACnetConfirmedServiceRequestVTClose.go  |   2 +-
 .../model/BACnetConfirmedServiceRequestVTData.go   |   6 +-
 .../model/BACnetConfirmedServiceRequestVTOpen.go   |   4 +-
 .../BACnetConfirmedServiceRequestWriteProperty.go  |  10 +-
 ...ConfirmedServiceRequestWritePropertyMultiple.go |   2 +-
 .../readwrite/model/BACnetConstructedData.go       |   6 +-
 .../model/BACnetConstructedDataAPDULength.go       |   2 +-
 .../BACnetConstructedDataAPDUSegmentTimeout.go     |   2 +-
 .../model/BACnetConstructedDataAPDUTimeout.go      |   2 +-
 .../model/BACnetConstructedDataAbsenteeLimit.go    |   2 +-
 .../model/BACnetConstructedDataAcceptedModes.go    |   2 +-
 .../BACnetConstructedDataAccessAlarmEvents.go      |   2 +-
 .../BACnetConstructedDataAccessDoorAlarmValues.go  |   2 +-
 .../BACnetConstructedDataAccessDoorFaultValues.go  |   2 +-
 .../BACnetConstructedDataAccessDoorPresentValue.go |   2 +-
 ...etConstructedDataAccessDoorRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataAccessDoors.go      |   4 +-
 .../model/BACnetConstructedDataAccessEvent.go      |   2 +-
 ...nstructedDataAccessEventAuthenticationFactor.go |   2 +-
 .../BACnetConstructedDataAccessEventCredential.go  |   2 +-
 .../model/BACnetConstructedDataAccessEventTag.go   |   2 +-
 .../model/BACnetConstructedDataAccessEventTime.go  |   2 +-
 ...BACnetConstructedDataAccessTransactionEvents.go |   2 +-
 .../BACnetConstructedDataAccessZoneAdjustValue.go  |   2 +-
 .../BACnetConstructedDataAccessZoneAlarmValues.go  |   2 +-
 .../model/BACnetConstructedDataAccompaniment.go    |   2 +-
 .../BACnetConstructedDataAccompanimentTime.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 |   4 +-
 .../model/BACnetConstructedDataActionText.go       |   4 +-
 .../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      |   4 +-
 ...etConstructedDataAlertEnrollmentPresentValue.go |   2 +-
 .../model/BACnetConstructedDataAlignIntervals.go   |   2 +-
 .../BACnetConstructedDataAllWritesSuccessful.go    |   2 +-
 .../BACnetConstructedDataAllowGroupDelayInhibit.go |   2 +-
 ...CnetConstructedDataAnalogInputFaultHighLimit.go |   2 +-
 ...ACnetConstructedDataAnalogInputFaultLowLimit.go |   2 +-
 ...CnetConstructedDataAnalogInputInterfaceValue.go |   2 +-
 ...BACnetConstructedDataAnalogInputMaxPresValue.go |   2 +-
 ...BACnetConstructedDataAnalogInputPresentValue.go |   2 +-
 ...netConstructedDataAnalogOutputInterfaceValue.go |   2 +-
 ...ACnetConstructedDataAnalogOutputMaxPresValue.go |   2 +-
 ...ACnetConstructedDataAnalogOutputPresentValue.go |   2 +-
 ...ConstructedDataAnalogOutputRelinquishDefault.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   |   4 +-
 .../BACnetConstructedDataAssignedLandingCalls.go   |   4 +-
 .../model/BACnetConstructedDataAttemptedSamples.go |   2 +-
 .../BACnetConstructedDataAuthenticationFactors.go  |   4 +-
 ...ACnetConstructedDataAuthenticationPolicyList.go |   4 +-
 ...CnetConstructedDataAuthenticationPolicyNames.go |   4 +-
 .../BACnetConstructedDataAuthenticationStatus.go   |   2 +-
 ...BACnetConstructedDataAuthorizationExemptions.go |   2 +-
 .../BACnetConstructedDataAuthorizationMode.go      |   2 +-
 .../BACnetConstructedDataAutoSlaveDiscovery.go     |   2 +-
 .../model/BACnetConstructedDataAverageValue.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 +-
 ...CnetConstructedDataBinaryInputInterfaceValue.go |   2 +-
 ...BACnetConstructedDataBinaryInputPresentValue.go |   2 +-
 ...tructedDataBinaryLightingOutputFeedbackValue.go |   2 +-
 ...structedDataBinaryLightingOutputPresentValue.go |   2 +-
 ...tedDataBinaryLightingOutputRelinquishDefault.go |   2 +-
 ...CnetConstructedDataBinaryOutputFeedbackValue.go |   2 +-
 ...netConstructedDataBinaryOutputInterfaceValue.go |   2 +-
 ...ACnetConstructedDataBinaryOutputPresentValue.go |   2 +-
 ...ConstructedDataBinaryOutputRelinquishDefault.go |   2 +-
 ...BACnetConstructedDataBinaryValuePresentValue.go |   2 +-
 ...tConstructedDataBinaryValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataBitMask.go          |   2 +-
 ...CnetConstructedDataBitStringValueAlarmValues.go |   4 +-
 ...netConstructedDataBitStringValuePresentValue.go |   2 +-
 ...nstructedDataBitStringValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataBitText.go          |   4 +-
 .../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 +-
 .../BACnetConstructedDataCalendarPresentValue.go   |   2 +-
 .../BACnetConstructedDataCarAssignedDirection.go   |   2 +-
 .../model/BACnetConstructedDataCarDoorCommand.go   |   4 +-
 .../model/BACnetConstructedDataCarDoorStatus.go    |   4 +-
 .../model/BACnetConstructedDataCarDoorText.go      |   4 +-
 .../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 +-
 ...tedDataChannelListOfObjectPropertyReferences.go |   4 +-
 .../model/BACnetConstructedDataChannelNumber.go    |   2 +-
 .../BACnetConstructedDataChannelPresentValue.go    |   2 +-
 ...nstructedDataCharacterStringValueAlarmValues.go |   4 +-
 ...nstructedDataCharacterStringValueFaultValues.go |   4 +-
 ...structedDataCharacterStringValuePresentValue.go |   2 +-
 ...tedDataCharacterStringValueRelinquishDefault.go |   2 +-
 .../BACnetConstructedDataClientCOVIncrement.go     |   2 +-
 .../model/BACnetConstructedDataCommand.go          |   2 +-
 .../model/BACnetConstructedDataCommandAction.go    |   4 +-
 .../model/BACnetConstructedDataCommandTimeArray.go |   4 +-
 .../BACnetConstructedDataConfigurationFiles.go     |   4 +-
 .../model/BACnetConstructedDataControlGroups.go    |   4 +-
 ...etConstructedDataControlledVariableReference.go |   2 +-
 ...BACnetConstructedDataControlledVariableUnits.go |   2 +-
 ...BACnetConstructedDataControlledVariableValue.go |   2 +-
 .../readwrite/model/BACnetConstructedDataCount.go  |   2 +-
 .../BACnetConstructedDataCountBeforeChange.go      |   2 +-
 .../model/BACnetConstructedDataCountChangeTime.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 +-
 .../BACnetConstructedDataDateValuePresentValue.go  |   2 +-
 ...netConstructedDataDateValueRelinquishDefault.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 +-
 .../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      |   4 +-
 .../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          |   6 +-
 .../model/BACnetConstructedDataElevatorGroup.go    |   2 +-
 ...CnetConstructedDataElevatorGroupGroupMembers.go |   4 +-
 .../readwrite/model/BACnetConstructedDataEnable.go |   2 +-
 .../model/BACnetConstructedDataEnergyMeter.go      |   2 +-
 .../model/BACnetConstructedDataEnergyMeterRef.go   |   2 +-
 .../model/BACnetConstructedDataEntryPoints.go      |   2 +-
 .../model/BACnetConstructedDataErrorLimit.go       |   2 +-
 .../BACnetConstructedDataEscalatorFaultSignals.go  |   2 +-
 .../model/BACnetConstructedDataEscalatorMode.go    |   2 +-
 .../BACnetConstructedDataEventAlgorithmInhibit.go  |   2 +-
 ...ACnetConstructedDataEventAlgorithmInhibitRef.go |   2 +-
 .../BACnetConstructedDataEventDetectionEnable.go   |   2 +-
 .../model/BACnetConstructedDataEventEnable.go      |   2 +-
 .../BACnetConstructedDataEventLogLogBuffer.go      |   2 +-
 .../BACnetConstructedDataEventMessageTexts.go      |   4 +-
 ...BACnetConstructedDataEventMessageTextsConfig.go |   4 +-
 .../model/BACnetConstructedDataEventParameters.go  |   2 +-
 .../model/BACnetConstructedDataEventState.go       |   2 +-
 .../model/BACnetConstructedDataEventTimeStamps.go  |   4 +-
 .../model/BACnetConstructedDataEventType.go        |   2 +-
 .../BACnetConstructedDataExceptionSchedule.go      |   4 +-
 .../model/BACnetConstructedDataExecutionDelay.go   |   4 +-
 .../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      |   4 +-
 .../model/BACnetConstructedDataFileAccessMethod.go |   2 +-
 .../model/BACnetConstructedDataFileRecordCount.go  |   2 +-
 .../model/BACnetConstructedDataFileSize.go         |   2 +-
 .../model/BACnetConstructedDataFileType.go         |   2 +-
 .../model/BACnetConstructedDataFirmwareRevision.go |   2 +-
 .../model/BACnetConstructedDataFloorText.go        |   4 +-
 .../model/BACnetConstructedDataFullDutyBaseline.go |   2 +-
 ...BACnetConstructedDataGlobalGroupGroupMembers.go |   4 +-
 ...BACnetConstructedDataGlobalGroupPresentValue.go |   4 +-
 .../model/BACnetConstructedDataGlobalIdentifier.go |   2 +-
 .../model/BACnetConstructedDataGroupID.go          |   2 +-
 .../model/BACnetConstructedDataGroupMemberNames.go |   4 +-
 .../model/BACnetConstructedDataGroupMembers.go     |   4 +-
 .../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      |   4 +-
 .../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    |   4 +-
 .../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 +-
 ...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          |   4 +-
 .../BACnetConstructedDataLandingCallControl.go     |   2 +-
 .../model/BACnetConstructedDataLandingCalls.go     |   2 +-
 .../BACnetConstructedDataLandingDoorStatus.go      |   4 +-
 ...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 +-
 ...netConstructedDataLifeSafetyPointFaultValues.go |   2 +-
 ...etConstructedDataLifeSafetyPointPresentValue.go |   2 +-
 ...CnetConstructedDataLifeSafetyZoneAlarmValues.go |   2 +-
 ...CnetConstructedDataLifeSafetyZoneFaultValues.go |   2 +-
 ...tructedDataLifeSafetyZoneMaintenanceRequired.go |   2 +-
 ...netConstructedDataLifeSafetyZonePresentValue.go |   2 +-
 .../model/BACnetConstructedDataLiftFaultSignals.go |   2 +-
 .../model/BACnetConstructedDataLightingCommand.go  |   2 +-
 ...onstructedDataLightingCommandDefaultPriority.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       |   4 +-
 .../BACnetConstructedDataListOfGroupMembers.go     |   2 +-
 ...onstructedDataListOfObjectPropertyReferences.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        |   4 +-
 ...BACnetConstructedDataLogDeviceObjectProperty.go |   2 +-
 .../model/BACnetConstructedDataLogInterval.go      |   2 +-
 .../model/BACnetConstructedDataLoggingObject.go    |   2 +-
 .../model/BACnetConstructedDataLoggingRecord.go    |   2 +-
 .../model/BACnetConstructedDataLoggingType.go      |   2 +-
 .../model/BACnetConstructedDataLoopAction.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    |   4 +-
 ...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 +-
 ...netConstructedDataMultiStateInputFaultValues.go |   2 +-
 ...ConstructedDataMultiStateInputInterfaceValue.go |   2 +-
 ...ConstructedDataMultiStateOutputFeedbackValue.go |   2 +-
 ...onstructedDataMultiStateOutputInterfaceValue.go |   2 +-
 ...tructedDataMultiStateOutputRelinquishDefault.go |   2 +-
 ...netConstructedDataMultiStateValueAlarmValues.go |   2 +-
 ...netConstructedDataMultiStateValueFaultValues.go |   2 +-
 ...structedDataMultiStateValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataMusterPoint.go      |   2 +-
 .../BACnetConstructedDataNegativeAccessRules.go    |   4 +-
 ...ConstructedDataNetworkAccessSecurityPolicies.go |   4 +-
 .../BACnetConstructedDataNetworkInterfaceName.go   |   2 +-
 .../model/BACnetConstructedDataNetworkNumber.go    |   2 +-
 .../BACnetConstructedDataNetworkNumberQuality.go   |   2 +-
 ...ACnetConstructedDataNetworkPortMaxInfoFrames.go |   2 +-
 .../BACnetConstructedDataNetworkPortMaxMaster.go   |   2 +-
 .../model/BACnetConstructedDataNetworkType.go      |   2 +-
 .../BACnetConstructedDataNextStoppingFloor.go      |   2 +-
 .../model/BACnetConstructedDataNodeSubtype.go      |   2 +-
 .../model/BACnetConstructedDataNodeType.go         |   2 +-
 .../BACnetConstructedDataNotificationClass.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       |   4 +-
 .../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 +-
 .../BACnetConstructedDataOperationDirection.go     |   2 +-
 .../BACnetConstructedDataOperationExpected.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       |   4 +-
 .../BACnetConstructedDataPositiveAccessRules.go    |   4 +-
 ...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         |   4 +-
 .../model/BACnetConstructedDataPriorityArray.go    |   2 +-
 .../BACnetConstructedDataPriorityForWriting.go     |   2 +-
 .../BACnetConstructedDataProcessIdentifier.go      |   2 +-
 ...BACnetConstructedDataProcessIdentifierFilter.go |   2 +-
 .../model/BACnetConstructedDataProfileLocation.go  |   2 +-
 .../model/BACnetConstructedDataProfileName.go      |   2 +-
 .../model/BACnetConstructedDataProgramChange.go    |   2 +-
 .../model/BACnetConstructedDataProgramLocation.go  |   2 +-
 .../model/BACnetConstructedDataProgramState.go     |   2 +-
 .../model/BACnetConstructedDataPropertyList.go     |   4 +-
 .../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 +-
 ...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      |   4 +-
 .../model/BACnetConstructedDataReliability.go      |   2 +-
 ...tConstructedDataReliabilityEvaluationInhibit.go |   2 +-
 .../BACnetConstructedDataRelinquishDefault.go      |   2 +-
 .../model/BACnetConstructedDataRepresents.go       |   2 +-
 .../BACnetConstructedDataRequestedShedLevel.go     |   2 +-
 ...BACnetConstructedDataRequestedUpdateInterval.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/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  |   4 +-
 .../model/BACnetConstructedDataShedLevels.go       |   4 +-
 .../model/BACnetConstructedDataSilenced.go         |   2 +-
 .../BACnetConstructedDataSlaveAddressBinding.go    |   2 +-
 .../model/BACnetConstructedDataSlaveProxyEnable.go |   2 +-
 .../model/BACnetConstructedDataStartTime.go        |   2 +-
 .../BACnetConstructedDataStateChangeValues.go      |   4 +-
 .../model/BACnetConstructedDataStateDescription.go |   2 +-
 .../model/BACnetConstructedDataStateText.go        |   4 +-
 .../model/BACnetConstructedDataStatusFlags.go      |   2 +-
 .../model/BACnetConstructedDataStopTime.go         |   2 +-
 .../model/BACnetConstructedDataStopWhenFull.go     |   2 +-
 .../model/BACnetConstructedDataStrikeCount.go      |   2 +-
 .../BACnetConstructedDataStructuredObjectList.go   |   4 +-
 .../BACnetConstructedDataSubordinateAnnotations.go |   4 +-
 .../model/BACnetConstructedDataSubordinateList.go  |   4 +-
 .../BACnetConstructedDataSubordinateNodeTypes.go   |   4 +-
 ...ACnetConstructedDataSubordinateRelationships.go |   4 +-
 .../model/BACnetConstructedDataSubordinateTags.go  |   4 +-
 .../BACnetConstructedDataSubscribedRecipients.go   |   2 +-
 .../BACnetConstructedDataSupportedFormatClasses.go |   4 +-
 .../model/BACnetConstructedDataSupportedFormats.go |   4 +-
 ...etConstructedDataSupportedSecurityAlgorithms.go |   2 +-
 .../model/BACnetConstructedDataSystemStatus.go     |   2 +-
 .../readwrite/model/BACnetConstructedDataTags.go   |   4 +-
 .../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 +-
 .../BACnetConstructedDataTimeValuePresentValue.go  |   2 +-
 ...netConstructedDataTimeValueRelinquishDefault.go |   2 +-
 .../model/BACnetConstructedDataTimerAlarmValues.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 +-
 .../BACnetConstructedDataTrendLogLogBuffer.go      |   2 +-
 ...nstructedDataTrendLogLogDeviceObjectProperty.go |   2 +-
 ...CnetConstructedDataTrendLogMultipleLogBuffer.go |   2 +-
 ...dDataTrendLogMultipleLogDeviceObjectProperty.go |   4 +-
 .../model/BACnetConstructedDataTrigger.go          |   2 +-
 .../model/BACnetConstructedDataUTCOffset.go        |   2 +-
 ...structedDataUTCTimeSynchronizationRecipients.go |   2 +-
 .../readwrite/model/BACnetConstructedDataUnits.go  |   2 +-
 .../model/BACnetConstructedDataUnspecified.go      |   4 +-
 .../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 |   4 +-
 .../model/BACnetConstructedDataVarianceValue.go    |   2 +-
 .../model/BACnetConstructedDataVendorIdentifier.go |   2 +-
 .../model/BACnetConstructedDataVendorName.go       |   2 +-
 .../model/BACnetConstructedDataVerificationTime.go |   2 +-
 .../BACnetConstructedDataVirtualMACAddressTable.go |   2 +-
 .../model/BACnetConstructedDataWeeklySchedule.go   |   4 +-
 .../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 +-
 .../bacnetip/readwrite/model/BACnetContextTag.go   |   4 +-
 .../readwrite/model/BACnetContextTagBitString.go   |   2 +-
 .../readwrite/model/BACnetContextTagBoolean.go     |   4 +-
 .../model/BACnetContextTagCharacterString.go       |   2 +-
 .../readwrite/model/BACnetContextTagDate.go        |   2 +-
 .../readwrite/model/BACnetContextTagDouble.go      |   2 +-
 .../readwrite/model/BACnetContextTagEnumerated.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  |   4 +-
 .../readwrite/model/BACnetDailySchedule.go         |   6 +-
 .../bacnetip/readwrite/model/BACnetDateRange.go    |   4 +-
 .../readwrite/model/BACnetDateRangeEnclosed.go     |   6 +-
 .../bacnetip/readwrite/model/BACnetDateTime.go     |   4 +-
 .../readwrite/model/BACnetDateTimeEnclosed.go      |   6 +-
 .../readwrite/model/BACnetDaysOfWeekTagged.go      |   4 +-
 .../bacnetip/readwrite/model/BACnetDestination.go  |  14 +-
 .../model/BACnetDeviceObjectPropertyReference.go   |   8 +-
 .../BACnetDeviceObjectPropertyReferenceEnclosed.go |   6 +-
 .../readwrite/model/BACnetDeviceObjectReference.go |   4 +-
 .../model/BACnetDeviceObjectReferenceEnclosed.go   |   6 +-
 .../readwrite/model/BACnetDeviceStatusTagged.go    |   6 +-
 .../readwrite/model/BACnetDoorAlarmStateTagged.go  |   6 +-
 .../model/BACnetDoorSecuredStatusTagged.go         |   4 +-
 .../readwrite/model/BACnetDoorStatusTagged.go      |   6 +-
 .../readwrite/model/BACnetDoorValueTagged.go       |   4 +-
 .../model/BACnetEngineeringUnitsTagged.go          |   6 +-
 .../bacnetip/readwrite/model/BACnetError.go        |   2 +-
 .../bacnetip/readwrite/model/BACnetErrorGeneral.go |   2 +-
 .../readwrite/model/BACnetEscalatorFaultTagged.go  |   6 +-
 .../readwrite/model/BACnetEscalatorModeTagged.go   |   6 +-
 .../BACnetEscalatorOperationDirectionTagged.go     |   6 +-
 .../readwrite/model/BACnetEventLogRecord.go        |   4 +-
 .../model/BACnetEventLogRecordLogDatum.go          |   6 +-
 .../model/BACnetEventLogRecordLogDatumLogStatus.go |   2 +-
 .../BACnetEventLogRecordLogDatumNotification.go    |   6 +-
 .../BACnetEventLogRecordLogDatumTimeChange.go      |   2 +-
 .../model/BACnetEventNotificationSubscription.go   |   8 +-
 .../readwrite/model/BACnetEventParameter.go        |   2 +-
 .../model/BACnetEventParameterAccessEvent.go       |   8 +-
 ...tEventParameterAccessEventListOfAccessEvents.go |   6 +-
 .../model/BACnetEventParameterBufferReady.go       |   8 +-
 .../model/BACnetEventParameterChangeOfBitstring.go |  10 +-
 ...ameterChangeOfBitstringListOfBitstringValues.go |   6 +-
 .../BACnetEventParameterChangeOfCharacterString.go |   8 +-
 ...eterChangeOfCharacterStringListOfAlarmValues.go |   6 +-
 .../BACnetEventParameterChangeOfDiscreteValue.go   |   6 +-
 .../BACnetEventParameterChangeOfLifeSavety.go      |  12 +-
 ...ParameterChangeOfLifeSavetyListOfAlarmValues.go |   6 +-
 ...hangeOfLifeSavetyListOfLifeSavetyAlarmValues.go |   6 +-
 .../model/BACnetEventParameterChangeOfState.go     |   8 +-
 ...ACnetEventParameterChangeOfStateListOfValues.go |   6 +-
 .../BACnetEventParameterChangeOfStatusFlags.go     |   8 +-
 .../model/BACnetEventParameterChangeOfTimer.go     |  10 +-
 .../BACnetEventParameterChangeOfTimerAlarmValue.go |   6 +-
 .../model/BACnetEventParameterChangeOfValue.go     |   8 +-
 ...BACnetEventParameterChangeOfValueCivCriteria.go |   6 +-
 ...ventParameterChangeOfValueCivCriteriaBitmask.go |   2 +-
 ...fValueCivCriteriaReferencedPropertyIncrement.go |   2 +-
 .../model/BACnetEventParameterCommandFailure.go    |   8 +-
 .../model/BACnetEventParameterDoubleOutOfRange.go  |  12 +-
 .../model/BACnetEventParameterExtended.go          |  10 +-
 .../BACnetEventParameterExtendedParameters.go      |  32 ++---
 .../model/BACnetEventParameterFloatingLimit.go     |  14 +-
 .../readwrite/model/BACnetEventParameterNone.go    |   2 +-
 .../model/BACnetEventParameterOutOfRange.go        |  12 +-
 .../model/BACnetEventParameterSignedOutOfRange.go  |  12 +-
 .../BACnetEventParameterUnsignedOutOfRange.go      |  12 +-
 .../model/BACnetEventParameterUnsignedRange.go     |  10 +-
 .../readwrite/model/BACnetEventPriorities.go       |  10 +-
 .../readwrite/model/BACnetEventStateTagged.go      |   6 +-
 .../readwrite/model/BACnetEventSummariesList.go    |   6 +-
 .../bacnetip/readwrite/model/BACnetEventSummary.go |  14 +-
 .../readwrite/model/BACnetEventTimestamps.go       |   6 +-
 .../model/BACnetEventTimestampsEnclosed.go         |   6 +-
 .../model/BACnetEventTransitionBitsTagged.go       |   4 +-
 .../readwrite/model/BACnetEventTypeTagged.go       |   6 +-
 .../readwrite/model/BACnetFaultParameter.go        |   2 +-
 .../BACnetFaultParameterFaultCharacterString.go    |   6 +-
 ...rameterFaultCharacterStringListOfFaultValues.go |   6 +-
 .../model/BACnetFaultParameterFaultExtended.go     |  10 +-
 .../BACnetFaultParameterFaultExtendedParameters.go |   6 +-
 ...etFaultParameterFaultExtendedParametersEntry.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   |   8 +-
 ...ultParameterFaultLifeSafetyListOfFaultValues.go |   6 +-
 .../model/BACnetFaultParameterFaultListed.go       |   6 +-
 .../model/BACnetFaultParameterFaultOutOfRange.go   |   8 +-
 ...tFaultParameterFaultOutOfRangeMaxNormalValue.go |   6 +-
 ...ParameterFaultOutOfRangeMaxNormalValueDouble.go |   2 +-
 ...arameterFaultOutOfRangeMaxNormalValueInteger.go |   2 +-
 ...ltParameterFaultOutOfRangeMaxNormalValueReal.go |   2 +-
 ...rameterFaultOutOfRangeMaxNormalValueUnsigned.go |   2 +-
 ...tFaultParameterFaultOutOfRangeMinNormalValue.go |   6 +-
 ...ParameterFaultOutOfRangeMinNormalValueDouble.go |   2 +-
 ...arameterFaultOutOfRangeMinNormalValueInteger.go |   2 +-
 ...ltParameterFaultOutOfRangeMinNormalValueReal.go |   2 +-
 ...rameterFaultOutOfRangeMinNormalValueUnsigned.go |   2 +-
 .../model/BACnetFaultParameterFaultState.go        |   6 +-
 ...netFaultParameterFaultStateListOfFaultValues.go |   6 +-
 .../model/BACnetFaultParameterFaultStatusFlags.go  |   6 +-
 .../readwrite/model/BACnetFaultParameterNone.go    |   2 +-
 .../readwrite/model/BACnetFaultTypeTagged.go       |   4 +-
 .../model/BACnetFileAccessMethodTagged.go          |   4 +-
 .../readwrite/model/BACnetGroupChannelValue.go     |   6 +-
 .../readwrite/model/BACnetGroupChannelValueList.go |   6 +-
 .../bacnetip/readwrite/model/BACnetHostAddress.go  |   2 +-
 .../readwrite/model/BACnetHostAddressEnclosed.go   |   6 +-
 .../readwrite/model/BACnetHostAddressIpAddress.go  |   2 +-
 .../readwrite/model/BACnetHostAddressName.go       |   2 +-
 .../readwrite/model/BACnetHostAddressNull.go       |   2 +-
 .../bacnetip/readwrite/model/BACnetHostNPort.go    |   4 +-
 .../readwrite/model/BACnetHostNPortEnclosed.go     |   6 +-
 .../bacnetip/readwrite/model/BACnetIPModeTagged.go |   4 +-
 .../readwrite/model/BACnetKeyIdentifier.go         |   4 +-
 .../readwrite/model/BACnetLandingCallStatus.go     |   6 +-
 .../model/BACnetLandingCallStatusCommand.go        |   2 +-
 .../BACnetLandingCallStatusCommandDestination.go   |   2 +-
 .../BACnetLandingCallStatusCommandDirection.go     |   2 +-
 .../readwrite/model/BACnetLandingDoorStatus.go     |   2 +-
 .../BACnetLandingDoorStatusLandingDoorsList.go     |   6 +-
 ...BACnetLandingDoorStatusLandingDoorsListEntry.go |   4 +-
 .../readwrite/model/BACnetLifeSafetyModeTagged.go  |   6 +-
 .../model/BACnetLifeSafetyOperationTagged.go       |   6 +-
 .../readwrite/model/BACnetLifeSafetyStateTagged.go |   6 +-
 .../readwrite/model/BACnetLiftCarCallList.go       |   2 +-
 .../model/BACnetLiftCarCallListFloorList.go        |   6 +-
 .../model/BACnetLiftCarDirectionTagged.go          |   6 +-
 .../model/BACnetLiftCarDoorCommandTagged.go        |   4 +-
 .../model/BACnetLiftCarDriveStatusTagged.go        |   6 +-
 .../readwrite/model/BACnetLiftCarModeTagged.go     |   6 +-
 .../readwrite/model/BACnetLiftFaultTagged.go       |   6 +-
 .../readwrite/model/BACnetLiftGroupModeTagged.go   |   4 +-
 .../readwrite/model/BACnetLightingCommand.go       |  12 +-
 .../model/BACnetLightingCommandEnclosed.go         |   6 +-
 .../model/BACnetLightingInProgressTagged.go        |   4 +-
 .../model/BACnetLightingOperationTagged.go         |   6 +-
 .../model/BACnetLightingTransitionTagged.go        |   6 +-
 .../readwrite/model/BACnetLimitEnableTagged.go     |   4 +-
 .../readwrite/model/BACnetLockStatusTagged.go      |   4 +-
 .../bacnetip/readwrite/model/BACnetLogData.go      |   6 +-
 .../readwrite/model/BACnetLogDataLogData.go        |   6 +-
 .../readwrite/model/BACnetLogDataLogDataEntry.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     |   4 +-
 .../bacnetip/readwrite/model/BACnetLogRecord.go    |   6 +-
 .../readwrite/model/BACnetLogRecordLogDatum.go     |   6 +-
 .../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       |   4 +-
 .../readwrite/model/BACnetLoggingTypeTagged.go     |   6 +-
 .../readwrite/model/BACnetMaintenanceTagged.go     |   6 +-
 .../bacnetip/readwrite/model/BACnetNameValue.go    |   4 +-
 .../readwrite/model/BACnetNameValueCollection.go   |   6 +-
 .../model/BACnetNetworkNumberQualityTagged.go      |   4 +-
 .../model/BACnetNetworkPortCommandTagged.go        |   6 +-
 .../readwrite/model/BACnetNetworkSecurityPolicy.go |   4 +-
 .../readwrite/model/BACnetNetworkTypeTagged.go     |   6 +-
 .../readwrite/model/BACnetNodeTypeTagged.go        |   4 +-
 .../model/BACnetNotificationParameters.go          |   6 +-
 .../BACnetNotificationParametersAccessEvent.go     |  16 +--
 .../BACnetNotificationParametersBufferReady.go     |  10 +-
 ...ACnetNotificationParametersChangeOfBitString.go |   8 +-
 ...otificationParametersChangeOfCharacterString.go |  10 +-
 ...tNotificationParametersChangeOfDiscreteValue.go |   8 +-
 ...ationParametersChangeOfDiscreteValueNewValue.go |   6 +-
 ...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 |  12 +-
 ...netNotificationParametersChangeOfReliability.go |  10 +-
 .../BACnetNotificationParametersChangeOfState.go   |   8 +-
 ...netNotificationParametersChangeOfStatusFlags.go |   8 +-
 .../BACnetNotificationParametersChangeOfTimer.go   |  16 +--
 .../BACnetNotificationParametersChangeOfValue.go   |   8 +-
 ...tNotificationParametersChangeOfValueNewValue.go |   6 +-
 ...onParametersChangeOfValueNewValueChangedBits.go |   2 +-
 ...nParametersChangeOfValueNewValueChangedValue.go |   2 +-
 .../BACnetNotificationParametersCommandFailure.go  |  10 +-
 ...BACnetNotificationParametersComplexEventType.go |   2 +-
 ...BACnetNotificationParametersDoubleOutOfRange.go |  12 +-
 .../model/BACnetNotificationParametersExtended.go  |  10 +-
 ...CnetNotificationParametersExtendedParameters.go |  32 ++---
 .../BACnetNotificationParametersFloatingLimit.go   |  12 +-
 .../BACnetNotificationParametersOutOfRange.go      |  12 +-
 ...BACnetNotificationParametersSignedOutOfRange.go |  12 +-
 ...CnetNotificationParametersUnsignedOutOfRange.go |  12 +-
 .../BACnetNotificationParametersUnsignedRange.go   |  10 +-
 .../readwrite/model/BACnetNotifyTypeTagged.go      |   4 +-
 .../model/BACnetObjectPropertyReference.go         |   6 +-
 .../model/BACnetObjectPropertyReferenceEnclosed.go |   6 +-
 .../readwrite/model/BACnetObjectTypeTagged.go      |   6 +-
 .../model/BACnetObjectTypesSupportedTagged.go      |   4 +-
 .../bacnetip/readwrite/model/BACnetOpeningTag.go   |   2 +-
 .../readwrite/model/BACnetOptionalBinaryPV.go      |   2 +-
 .../readwrite/model/BACnetOptionalBinaryPVNull.go  |   2 +-
 .../readwrite/model/BACnetOptionalBinaryPVValue.go |   2 +-
 .../model/BACnetOptionalCharacterString.go         |   2 +-
 .../model/BACnetOptionalCharacterStringNull.go     |   2 +-
 .../model/BACnetOptionalCharacterStringValue.go    |   2 +-
 .../bacnetip/readwrite/model/BACnetOptionalREAL.go |   2 +-
 .../readwrite/model/BACnetOptionalREALNull.go      |   2 +-
 .../readwrite/model/BACnetOptionalREALValue.go     |   2 +-
 .../readwrite/model/BACnetOptionalUnsigned.go      |   2 +-
 .../readwrite/model/BACnetOptionalUnsignedNull.go  |   2 +-
 .../readwrite/model/BACnetOptionalUnsignedValue.go |   2 +-
 .../readwrite/model/BACnetPolarityTagged.go        |   4 +-
 .../readwrite/model/BACnetPortPermission.go        |   4 +-
 .../bacnetip/readwrite/model/BACnetPrescale.go     |   4 +-
 .../readwrite/model/BACnetPriorityArray.go         |   4 +-
 .../readwrite/model/BACnetPriorityValue.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 +-
 .../readwrite/model/BACnetProcessIdSelection.go    |   2 +-
 .../model/BACnetProcessIdSelectionNull.go          |   2 +-
 .../model/BACnetProcessIdSelectionValue.go         |   2 +-
 .../readwrite/model/BACnetProgramErrorTagged.go    |   6 +-
 .../readwrite/model/BACnetProgramRequestTagged.go  |   4 +-
 .../readwrite/model/BACnetProgramStateTagged.go    |   4 +-
 .../readwrite/model/BACnetPropertyAccessResult.go  |  10 +-
 .../BACnetPropertyAccessResultAccessResult.go      |   2 +-
 ...yAccessResultAccessResultPropertyAccessError.go |   2 +-
 ...ropertyAccessResultAccessResultPropertyValue.go |   2 +-
 .../model/BACnetPropertyIdentifierTagged.go        |   6 +-
 .../readwrite/model/BACnetPropertyReference.go     |   4 +-
 .../model/BACnetPropertyReferenceEnclosed.go       |   6 +-
 .../model/BACnetPropertyStateActionUnknown.go      |   2 +-
 .../readwrite/model/BACnetPropertyStates.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          |   6 +-
 .../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         |   8 +-
 .../readwrite/model/BACnetPropertyValues.go        |   6 +-
 .../model/BACnetPropertyWriteDefinition.go         |   8 +-
 .../readwrite/model/BACnetProtocolLevelTagged.go   |   4 +-
 .../readwrite/model/BACnetReadAccessProperty.go    |   6 +-
 .../model/BACnetReadAccessPropertyReadResult.go    |   4 +-
 .../readwrite/model/BACnetReadAccessResult.go      |   4 +-
 .../model/BACnetReadAccessResultListOfResults.go   |   6 +-
 .../model/BACnetReadAccessSpecification.go         |   8 +-
 .../bacnetip/readwrite/model/BACnetRecipient.go    |   2 +-
 .../readwrite/model/BACnetRecipientAddress.go      |   2 +-
 .../readwrite/model/BACnetRecipientDevice.go       |   2 +-
 .../readwrite/model/BACnetRecipientEnclosed.go     |   6 +-
 .../readwrite/model/BACnetRecipientProcess.go      |   4 +-
 .../model/BACnetRecipientProcessEnclosed.go        |   6 +-
 .../readwrite/model/BACnetRejectReasonTagged.go    |   4 +-
 .../readwrite/model/BACnetRelationshipTagged.go    |   6 +-
 .../readwrite/model/BACnetReliabilityTagged.go     |   6 +-
 .../readwrite/model/BACnetRestartReasonTagged.go   |   6 +-
 .../readwrite/model/BACnetResultFlagsTagged.go     |   4 +-
 .../bacnetip/readwrite/model/BACnetRouterEntry.go  |   8 +-
 .../model/BACnetRouterEntryStatusTagged.go         |   4 +-
 .../bacnetip/readwrite/model/BACnetScale.go        |   2 +-
 .../readwrite/model/BACnetScaleFloatScale.go       |   2 +-
 .../readwrite/model/BACnetScaleIntegerScale.go     |   2 +-
 .../readwrite/model/BACnetSecurityKeySet.go        |   8 +-
 .../readwrite/model/BACnetSecurityKeySetKeyIds.go  |   6 +-
 .../readwrite/model/BACnetSecurityLevelTagged.go   |   4 +-
 .../readwrite/model/BACnetSecurityPolicyTagged.go  |   4 +-
 .../readwrite/model/BACnetSegmentationTagged.go    |   4 +-
 .../bacnetip/readwrite/model/BACnetServiceAck.go   |   4 +-
 .../model/BACnetServiceAckAtomicReadFile.go        |   4 +-
 .../model/BACnetServiceAckAtomicReadFileRecord.go  |   6 +-
 .../model/BACnetServiceAckAtomicReadFileStream.go  |   4 +-
 ...BACnetServiceAckAtomicReadFileStreamOrRecord.go |   6 +-
 .../model/BACnetServiceAckAtomicWriteFile.go       |   2 +-
 .../model/BACnetServiceAckAuthenticate.go          |   2 +-
 .../BACnetServiceAckConfirmedPrivateTransfer.go    |   6 +-
 .../model/BACnetServiceAckCreateObject.go          |   2 +-
 .../model/BACnetServiceAckGetAlarmSummary.go       |   6 +-
 .../model/BACnetServiceAckGetEnrollmentSummary.go  |  10 +-
 .../model/BACnetServiceAckGetEventInformation.go   |   4 +-
 .../model/BACnetServiceAckReadProperty.go          |   8 +-
 .../BACnetServiceAckReadPropertyConditional.go     |   2 +-
 .../model/BACnetServiceAckReadPropertyMultiple.go  |   2 +-
 .../readwrite/model/BACnetServiceAckReadRange.go   |  14 +-
 .../readwrite/model/BACnetServiceAckRequestKey.go  |   2 +-
 .../readwrite/model/BACnetServiceAckVTData.go      |   6 +-
 .../readwrite/model/BACnetServiceAckVTOpen.go      |   2 +-
 .../model/BACnetServicesSupportedTagged.go         |   4 +-
 .../readwrite/model/BACnetSetpointReference.go     |   2 +-
 .../bacnetip/readwrite/model/BACnetShedLevel.go    |   2 +-
 .../readwrite/model/BACnetShedLevelAmount.go       |   2 +-
 .../readwrite/model/BACnetShedLevelLevel.go        |   2 +-
 .../readwrite/model/BACnetShedLevelPercent.go      |   2 +-
 .../readwrite/model/BACnetShedStateTagged.go       |   4 +-
 .../readwrite/model/BACnetSilencedStateTagged.go   |   6 +-
 .../bacnetip/readwrite/model/BACnetSpecialEvent.go |   6 +-
 .../model/BACnetSpecialEventListOfTimeValues.go    |   6 +-
 .../readwrite/model/BACnetSpecialEventPeriod.go    |   2 +-
 .../model/BACnetSpecialEventPeriodCalendarEntry.go |   2 +-
 .../BACnetSpecialEventPeriodCalendarReference.go   |   2 +-
 .../readwrite/model/BACnetStatusFlagsTagged.go     |   4 +-
 .../bacnetip/readwrite/model/BACnetTagHeader.go    |  14 +-
 .../readwrite/model/BACnetTagPayloadBitString.go   |   6 +-
 .../model/BACnetTagPayloadCharacterString.go       |   4 +-
 .../readwrite/model/BACnetTagPayloadDate.go        |   8 +-
 .../readwrite/model/BACnetTagPayloadDouble.go      |   2 +-
 .../readwrite/model/BACnetTagPayloadEnumerated.go  |   2 +-
 .../model/BACnetTagPayloadObjectIdentifier.go      |   6 +-
 .../readwrite/model/BACnetTagPayloadOctetString.go |   2 +-
 .../readwrite/model/BACnetTagPayloadReal.go        |   2 +-
 .../model/BACnetTagPayloadSignedInteger.go         |  16 +--
 .../readwrite/model/BACnetTagPayloadTime.go        |   8 +-
 .../model/BACnetTagPayloadUnsignedInteger.go       |  16 +--
 .../bacnetip/readwrite/model/BACnetTimeStamp.go    |   2 +-
 .../readwrite/model/BACnetTimeStampDateTime.go     |   2 +-
 .../readwrite/model/BACnetTimeStampEnclosed.go     |   6 +-
 .../readwrite/model/BACnetTimeStampSequence.go     |   2 +-
 .../readwrite/model/BACnetTimeStampTime.go         |   2 +-
 .../readwrite/model/BACnetTimeStampsEnclosed.go    |   6 +-
 .../bacnetip/readwrite/model/BACnetTimeValue.go    |   4 +-
 .../readwrite/model/BACnetTimerStateChangeValue.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      |   4 +-
 .../readwrite/model/BACnetTimerTransitionTagged.go |   4 +-
 .../model/BACnetUnconfirmedServiceChoiceTagged.go  |   4 +-
 .../model/BACnetUnconfirmedServiceRequest.go       |   4 +-
 .../model/BACnetUnconfirmedServiceRequestIAm.go    |   8 +-
 .../model/BACnetUnconfirmedServiceRequestIHave.go  |   6 +-
 ...UnconfirmedServiceRequestTimeSynchronization.go |   4 +-
 ...onfirmedServiceRequestUTCTimeSynchronization.go |   4 +-
 ...rmedServiceRequestUnconfirmedCOVNotification.go |  10 +-
 ...iceRequestUnconfirmedCOVNotificationMultiple.go |  10 +-
 ...edServiceRequestUnconfirmedEventNotification.go |  26 ++--
 ...rmedServiceRequestUnconfirmedPrivateTransfer.go |   6 +-
 ...onfirmedServiceRequestUnconfirmedTextMessage.go |   8 +-
 .../BACnetUnconfirmedServiceRequestUnknown.go      |   2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoHas.go |   6 +-
 .../BACnetUnconfirmedServiceRequestWhoHasObject.go |   2 +-
 ...onfirmedServiceRequestWhoHasObjectIdentifier.go |   2 +-
 ...netUnconfirmedServiceRequestWhoHasObjectName.go |   2 +-
 .../model/BACnetUnconfirmedServiceRequestWhoIs.go  |   4 +-
 .../BACnetUnconfirmedServiceRequestWriteGroup.go   |   8 +-
 .../bacnetip/readwrite/model/BACnetVMACEntry.go    |   4 +-
 .../readwrite/model/BACnetVTClassTagged.go         |   6 +-
 .../bacnetip/readwrite/model/BACnetVTSession.go    |   6 +-
 .../bacnetip/readwrite/model/BACnetValueSource.go  |   2 +-
 .../readwrite/model/BACnetValueSourceAddress.go    |   2 +-
 .../readwrite/model/BACnetValueSourceNone.go       |   2 +-
 .../readwrite/model/BACnetValueSourceObject.go     |   2 +-
 .../readwrite/model/BACnetVendorIdTagged.go        |   6 +-
 .../readwrite/model/BACnetWeekNDayTagged.go        |   8 +-
 .../model/BACnetWriteAccessSpecification.go        |   8 +-
 .../readwrite/model/BACnetWriteStatusTagged.go     |   4 +-
 plc4go/protocols/bacnetip/readwrite/model/BVLC.go  |   8 +-
 .../model/BVLCBroadcastDistributionTableEntry.go   |   6 +-
 .../model/BVLCDeleteForeignDeviceTableEntry.go     |   4 +-
 .../model/BVLCDistributeBroadcastToNetwork.go      |   2 +-
 .../readwrite/model/BVLCForeignDeviceTableEntry.go |   8 +-
 .../bacnetip/readwrite/model/BVLCForwardedNPDU.go  |   6 +-
 .../readwrite/model/BVLCOriginalBroadcastNPDU.go   |   2 +-
 .../readwrite/model/BVLCOriginalUnicastNPDU.go     |   2 +-
 .../model/BVLCReadBroadcastDistributionTableAck.go |   2 +-
 .../model/BVLCReadForeignDeviceTableAck.go         |   2 +-
 .../readwrite/model/BVLCRegisterForeignDevice.go   |   2 +-
 .../bacnetip/readwrite/model/BVLCResult.go         |   2 +-
 .../readwrite/model/BVLCResultCodeTagged.go        |   4 +-
 .../bacnetip/readwrite/model/BVLCSecureBVLL.go     |   2 +-
 .../model/BVLCWriteBroadcastDistributionTable.go   |   2 +-
 .../bacnetip/readwrite/model/ChangeListAddError.go |   4 +-
 .../readwrite/model/ChangeListRemoveError.go       |   4 +-
 .../model/ConfirmedEventNotificationRequest.go     |  26 ++--
 .../model/ConfirmedPrivateTransferError.go         |   8 +-
 .../bacnetip/readwrite/model/CreateObjectError.go  |   4 +-
 plc4go/protocols/bacnetip/readwrite/model/Error.go |   4 +-
 .../bacnetip/readwrite/model/ErrorClassTagged.go   |   6 +-
 .../bacnetip/readwrite/model/ErrorCodeTagged.go    |   6 +-
 .../bacnetip/readwrite/model/ErrorEnclosed.go      |   6 +-
 .../readwrite/model/ListOfCovNotifications.go      |   8 +-
 .../readwrite/model/ListOfCovNotificationsList.go  |   6 +-
 .../readwrite/model/ListOfCovNotificationsValue.go |   8 +-
 .../readwrite/model/MaxApduLengthAcceptedTagged.go |   4 +-
 .../readwrite/model/MaxSegmentsAcceptedTagged.go   |   4 +-
 plc4go/protocols/bacnetip/readwrite/model/NLM.go   |   6 +-
 .../model/NLMDisconnectConnectionToNetwork.go      |   2 +-
 .../model/NLMEstablishConnectionToNetwork.go       |   4 +-
 .../readwrite/model/NLMIAmRouterToNetwork.go       |   2 +-
 .../readwrite/model/NLMICouldBeRouterToNetwork.go  |   4 +-
 .../readwrite/model/NLMInitalizeRoutingTable.go    |   4 +-
 .../readwrite/model/NLMInitalizeRoutingTableAck.go |   4 +-
 .../model/NLMInitalizeRoutingTablePortMapping.go   |   8 +-
 .../readwrite/model/NLMRejectRouterToNetwork.go    |   4 +-
 .../readwrite/model/NLMRouterAvailableToNetwork.go |   2 +-
 .../readwrite/model/NLMRouterBusyToNetwork.go      |   2 +-
 .../readwrite/model/NLMWhoIsRouterToNetwork.go     |   2 +-
 plc4go/protocols/bacnetip/readwrite/model/NPDU.go  |  22 +--
 .../bacnetip/readwrite/model/NPDUControl.go        |  14 +-
 .../readwrite/model/NPDUNetworkPriorityTagged.go   |   4 +-
 .../model/SubscribeCOVPropertyMultipleError.go     |   4 +-
 ...PropertyMultipleErrorFirstFailedSubscription.go |  10 +-
 .../bacnetip/readwrite/model/VTCloseError.go       |   4 +-
 .../VTCloseErrorListOfVTSessionIdentifiers.go      |   6 +-
 .../readwrite/model/WritePropertyMultipleError.go  |   4 +-
 plc4go/protocols/cbus/readwrite/ParserHelper.go    |   2 -
 plc4go/protocols/cbus/readwrite/XmlParserHelper.go |   2 -
 plc4go/protocols/cbus/readwrite/model/Alpha.go     |   7 +-
 .../cbus/readwrite/model/BridgeAddress.go          |   2 +-
 .../protocols/cbus/readwrite/model/BridgeCount.go  |   2 +-
 plc4go/protocols/cbus/readwrite/model/CALData.go   |   4 +-
 .../readwrite/model/CALDataReplyAcknowledge.go     |   4 +-
 .../cbus/readwrite/model/CALDataReplyReply.go      |   4 +-
 .../cbus/readwrite/model/CALDataReplyStatus.go     |   6 +-
 .../readwrite/model/CALDataReplyStatusExtended.go  |   8 +-
 .../readwrite/model/CALDataRequestGetStatus.go     |   4 +-
 .../cbus/readwrite/model/CALDataRequestIdentify.go |   2 +-
 .../cbus/readwrite/model/CALDataRequestRecall.go   |   4 +-
 plc4go/protocols/cbus/readwrite/model/CALReply.go  |   8 +-
 .../protocols/cbus/readwrite/model/CALReplyLong.go |  14 +-
 .../cbus/readwrite/model/CALReplyReply.go          |   2 +-
 .../protocols/cbus/readwrite/model/CBusCommand.go  |   6 +-
 .../readwrite/model/CBusCommandDeviceManagement.go |   6 +-
 .../model/CBusCommandPointToMultiPoint.go          |   2 +-
 .../readwrite/model/CBusCommandPointToPoint.go     |   2 +-
 .../model/CBusCommandPointToPointToMultiPoint.go   |   2 +-
 .../CBusCommandPointToPointToMultiPointNormal.go   |  30 +---
 .../CBusCommandPointToPointToMultiPointStatus.go   |  30 +---
 .../cbus/readwrite/model/CBusConstants.go          |   2 +-
 .../protocols/cbus/readwrite/model/CBusHeader.go   |   8 +-
 .../protocols/cbus/readwrite/model/CBusMessage.go  |   2 +-
 .../cbus/readwrite/model/CBusMessageToClient.go    |   2 +-
 .../cbus/readwrite/model/CBusMessageToServer.go    |   2 +-
 .../protocols/cbus/readwrite/model/CBusOptions.go  |  16 +--
 .../model/CBusPointToMultiPointCommand.go          |   6 +-
 .../model/CBusPointToMultiPointCommandNormal.go    |  32 +----
 .../model/CBusPointToMultiPointCommandStatus.go    |  32 +----
 .../readwrite/model/CBusPointToPointCommand.go     |  40 ++----
 .../model/CBusPointToPointCommandDirect.go         |  11 +-
 .../model/CBusPointToPointCommandIndirect.go       |  13 +-
 .../model/CBusPointToPointToMultipointCommand.go   |  10 +-
 plc4go/protocols/cbus/readwrite/model/Checksum.go  |   2 +-
 .../cbus/readwrite/model/CommandHeader.go          |   2 +-
 .../protocols/cbus/readwrite/model/Confirmation.go |   8 +-
 .../cbus/readwrite/model/ConfirmationReply.go      |   2 +-
 .../cbus/readwrite/model/ConfirmationUnknown.go    | 158 +++++++++++++++++++++
 .../readwrite/model/ExtendedFormatStatusReply.go   |  14 +-
 .../cbus/readwrite/model/ExtendedStatusHeader.go   |   4 +-
 .../cbus/readwrite/model/IdentifyReplyCommand.go   |   2 +-
 .../model/IdentifyReplyCommandDSIStatus.go         |  20 +--
 ...dentifyReplyCommandExtendedDiagnosticSummary.go |  44 +++---
 .../model/IdentifyReplyCommandFirmwareSummary.go   |   6 +-
 .../model/IdentifyReplyCommandFirmwareVersion.go   |   2 +-
 .../IdentifyReplyCommandGAVPhysicalAddresses.go    |   2 +-
 .../model/IdentifyReplyCommandGAVValuesCurrent.go  |   2 +-
 .../model/IdentifyReplyCommandGAVValuesStored.go   |   2 +-
 .../model/IdentifyReplyCommandManufacturer.go      |   2 +-
 .../model/IdentifyReplyCommandNetworkVoltage.go    |   8 +-
 .../readwrite/model/IdentifyReplyCommandType.go    |   2 +-
 .../protocols/cbus/readwrite/model/MonitoredSAL.go |   8 +-
 .../model/MonitoredSALLongFormSmartMode.go         |  14 +-
 .../cbus/readwrite/model/MonitoredSALReply.go      |   2 +-
 .../model/MonitoredSALShortFormBasicMode.go        |  10 +-
 .../cbus/readwrite/model/NetworkNumber.go          |   2 +-
 .../model/NetworkProtocolControlInformation.go     |   6 +-
 .../protocols/cbus/readwrite/model/NetworkRoute.go |   8 +-
 .../cbus/readwrite/model/ParameterChange.go        |   6 +-
 .../cbus/readwrite/model/ParameterChangeReply.go   |   2 +-
 plc4go/protocols/cbus/readwrite/model/PowerUp.go   |  36 +----
 .../protocols/cbus/readwrite/model/PowerUpReply.go |   2 +-
 plc4go/protocols/cbus/readwrite/model/Reply.go     |   8 +-
 .../protocols/cbus/readwrite/model/ReplyNetwork.go |   6 +-
 plc4go/protocols/cbus/readwrite/model/Request.go   |   8 +-
 .../cbus/readwrite/model/RequestCommand.go         |   2 +-
 .../readwrite/model/RequestDirectCommandAccess.go  |  43 +++++-
 .../model/{RequestReset.go => RequestEmpty.go}     | 107 +++++---------
 .../model/{RequestReset.go => RequestNull.go}      | 102 ++++++-------
 .../protocols/cbus/readwrite/model/RequestReset.go |   4 +-
 .../readwrite/model/RequestSmartConnectShortcut.go |   4 +-
 .../cbus/readwrite/model/RequestTermination.go     |   2 +-
 .../cbus/readwrite/model/ResponseTermination.go    |   4 +-
 plc4go/protocols/cbus/readwrite/model/SALData.go   |   4 +-
 .../protocols/cbus/readwrite/model/SALDataOff.go   |   2 +-
 plc4go/protocols/cbus/readwrite/model/SALDataOn.go |   2 +-
 .../cbus/readwrite/model/SALDataRampToLevel.go     |   4 +-
 .../cbus/readwrite/model/SALDataTerminateRamp.go   |   2 +-
 .../cbus/readwrite/model/SerialInterfaceAddress.go |   2 +-
 .../model/{PowerUpReply.go => ServerErrorReply.go} | 117 +++++++--------
 .../readwrite/model/StandardFormatStatusReply.go   |  12 +-
 .../protocols/cbus/readwrite/model/StatusByte.go   |   8 +-
 .../protocols/cbus/readwrite/model/StatusHeader.go |   4 +-
 .../cbus/readwrite/model/StatusRequest.go          |   4 +-
 .../readwrite/model/StatusRequestBinaryState.go    |   6 +-
 .../cbus/readwrite/model/StatusRequestLevel.go     |   8 +-
 .../protocols/cbus/readwrite/model/UnitAddress.go  |   2 +-
 plc4go/protocols/df1/readwrite/model/DF1Command.go |   8 +-
 plc4go/protocols/df1/readwrite/model/DF1Symbol.go  |   6 +-
 .../df1/readwrite/model/DF1SymbolMessageFrame.go   |  12 +-
 .../readwrite/model/DF1UnprotectedReadRequest.go   |   4 +-
 .../protocols/eip/readwrite/model/CipExchange.go   |  10 +-
 plc4go/protocols/eip/readwrite/model/CipRRData.go  |   6 +-
 .../eip/readwrite/model/CipReadRequest.go          |   6 +-
 .../eip/readwrite/model/CipReadResponse.go         |  10 +-
 plc4go/protocols/eip/readwrite/model/CipService.go |   4 +-
 .../eip/readwrite/model/CipUnconnectedRequest.go   |  22 +--
 .../eip/readwrite/model/CipWriteRequest.go         |  10 +-
 .../eip/readwrite/model/CipWriteResponse.go        |   6 +-
 .../eip/readwrite/model/EipConnectionRequest.go    |   4 +-
 plc4go/protocols/eip/readwrite/model/EipPacket.go  |  14 +-
 .../eip/readwrite/model/MultipleServiceRequest.go  |   6 +-
 .../eip/readwrite/model/MultipleServiceResponse.go |  12 +-
 plc4go/protocols/eip/readwrite/model/Services.go   |   6 +-
 .../firmata/readwrite/model/FirmataCommand.go      |   4 +-
 .../model/FirmataCommandProtocolVersion.go         |   4 +-
 .../model/FirmataCommandSetDigitalPinValue.go      |   6 +-
 .../readwrite/model/FirmataCommandSetPinMode.go    |   4 +-
 .../firmata/readwrite/model/FirmataCommandSysex.go |   4 +-
 .../firmata/readwrite/model/FirmataMessage.go      |   4 +-
 .../readwrite/model/FirmataMessageAnalogIO.go      |   4 +-
 .../readwrite/model/FirmataMessageCommand.go       |   2 +-
 .../readwrite/model/FirmataMessageDigitalIO.go     |   4 +-
 .../model/FirmataMessageSubscribeAnalogPinValue.go |   6 +-
 .../FirmataMessageSubscribeDigitalPinValue.go      |   6 +-
 .../firmata/readwrite/model/SysexCommand.go        |   4 +-
 .../SysexCommandAnalogMappingQueryResponse.go      |   2 +-
 .../readwrite/model/SysexCommandExtendedId.go      |   2 +-
 .../readwrite/model/SysexCommandPinStateQuery.go   |   2 +-
 .../model/SysexCommandPinStateResponse.go          |   6 +-
 .../model/SysexCommandReportFirmwareResponse.go    |   4 +-
 plc4go/protocols/knxnetip/readwrite/model/Apdu.go  |   8 +-
 .../knxnetip/readwrite/model/ApduControl.go        |   4 +-
 .../readwrite/model/ApduControlContainer.go        |   2 +-
 .../protocols/knxnetip/readwrite/model/ApduData.go |   4 +-
 .../knxnetip/readwrite/model/ApduDataContainer.go  |   2 +-
 .../model/ApduDataDeviceDescriptorRead.go          |   2 +-
 .../model/ApduDataDeviceDescriptorResponse.go      |   4 +-
 .../knxnetip/readwrite/model/ApduDataExt.go        |   4 +-
 .../readwrite/model/ApduDataExtAuthorizeRequest.go |   4 +-
 .../model/ApduDataExtAuthorizeResponse.go          |   2 +-
 .../model/ApduDataExtPropertyDescriptionRead.go    |   6 +-
 .../ApduDataExtPropertyDescriptionResponse.go      |  20 +--
 .../model/ApduDataExtPropertyValueRead.go          |   8 +-
 .../model/ApduDataExtPropertyValueResponse.go      |  10 +-
 .../model/ApduDataExtPropertyValueWrite.go         |  10 +-
 .../readwrite/model/ApduDataGroupValueRead.go      |   2 +-
 .../readwrite/model/ApduDataGroupValueResponse.go  |   4 +-
 .../readwrite/model/ApduDataGroupValueWrite.go     |   4 +-
 .../knxnetip/readwrite/model/ApduDataMemoryRead.go |   4 +-
 .../readwrite/model/ApduDataMemoryResponse.go      |   6 +-
 .../knxnetip/readwrite/model/ApduDataOther.go      |   2 +-
 plc4go/protocols/knxnetip/readwrite/model/CEMI.go  |   4 +-
 .../readwrite/model/CEMIAdditionalInformation.go   |   4 +-
 .../CEMIAdditionalInformationBusmonitorInfo.go     |  14 +-
 .../CEMIAdditionalInformationRelativeTimestamp.go  |   4 +-
 .../knxnetip/readwrite/model/ChannelInformation.go |   4 +-
 .../knxnetip/readwrite/model/ComObjectTable.go     |   2 +-
 .../model/ComObjectTableRealisationType1.go        |   6 +-
 .../model/ComObjectTableRealisationType2.go        |   6 +-
 .../model/ComObjectTableRealisationType6.go        |   2 +-
 .../knxnetip/readwrite/model/ConnectionRequest.go  |   6 +-
 .../model/ConnectionRequestInformation.go          |   6 +-
 ...ConnectionRequestInformationTunnelConnection.go |   4 +-
 .../knxnetip/readwrite/model/ConnectionResponse.go |   8 +-
 .../readwrite/model/ConnectionResponseDataBlock.go |   6 +-
 .../ConnectionResponseDataBlockTunnelConnection.go |   2 +-
 .../readwrite/model/ConnectionStateRequest.go      |   6 +-
 .../readwrite/model/ConnectionStateResponse.go     |   4 +-
 .../knxnetip/readwrite/model/DIBDeviceInfo.go      |  20 +--
 .../knxnetip/readwrite/model/DIBSuppSvcFamilies.go |   6 +-
 .../knxnetip/readwrite/model/DescriptionRequest.go |   2 +-
 .../readwrite/model/DescriptionResponse.go         |   4 +-
 .../readwrite/model/DeviceConfigurationAck.go      |   2 +-
 .../model/DeviceConfigurationAckDataBlock.go       |   8 +-
 .../readwrite/model/DeviceConfigurationRequest.go  |   4 +-
 .../model/DeviceConfigurationRequestDataBlock.go   |   8 +-
 .../readwrite/model/DeviceDescriptorType2.go       |  20 +--
 .../knxnetip/readwrite/model/DeviceStatus.go       |   4 +-
 .../knxnetip/readwrite/model/DisconnectRequest.go  |   6 +-
 .../knxnetip/readwrite/model/DisconnectResponse.go |   4 +-
 .../model/GroupObjectDescriptorRealisationType1.go |  18 +--
 .../model/GroupObjectDescriptorRealisationType2.go |  18 +--
 .../model/GroupObjectDescriptorRealisationType7.go |  18 +--
 .../model/GroupObjectDescriptorRealisationTypeB.go |  16 +--
 .../readwrite/model/HPAIControlEndpoint.go         |   8 +-
 .../knxnetip/readwrite/model/HPAIDataEndpoint.go   |   8 +-
 .../readwrite/model/HPAIDiscoveryEndpoint.go       |   8 +-
 .../knxnetip/readwrite/model/IPAddress.go          |   2 +-
 .../knxnetip/readwrite/model/KnxAddress.go         |   6 +-
 .../knxnetip/readwrite/model/KnxGroupAddress.go    |   2 +-
 .../readwrite/model/KnxGroupAddress2Level.go       |   4 +-
 .../readwrite/model/KnxGroupAddress3Level.go       |   6 +-
 .../readwrite/model/KnxGroupAddressFreeLevel.go    |   2 +-
 .../knxnetip/readwrite/model/KnxNetIpCore.go       |   2 +-
 .../readwrite/model/KnxNetIpDeviceManagement.go    |   2 +-
 .../knxnetip/readwrite/model/KnxNetIpMessage.go    |  10 +-
 .../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         |   8 +-
 .../protocols/knxnetip/readwrite/model/LDataCon.go |   6 +-
 .../knxnetip/readwrite/model/LDataExtended.go      |  14 +-
 .../knxnetip/readwrite/model/LDataFrame.go         |  16 +--
 .../protocols/knxnetip/readwrite/model/LDataInd.go |   6 +-
 .../protocols/knxnetip/readwrite/model/LDataReq.go |   6 +-
 .../knxnetip/readwrite/model/LPollData.go          |   8 +-
 .../knxnetip/readwrite/model/MACAddress.go         |   2 +-
 .../knxnetip/readwrite/model/MPropReadCon.go       |  12 +-
 .../knxnetip/readwrite/model/MPropReadReq.go       |  10 +-
 .../model/ProjectInstallationIdentifier.go         |   4 +-
 .../knxnetip/readwrite/model/RelativeTimestamp.go  |   2 +-
 .../knxnetip/readwrite/model/SearchRequest.go      |   2 +-
 .../knxnetip/readwrite/model/SearchResponse.go     |   6 +-
 .../knxnetip/readwrite/model/ServiceId.go          |   4 +-
 .../knxnetip/readwrite/model/TunnelingRequest.go   |   4 +-
 .../readwrite/model/TunnelingRequestDataBlock.go   |   8 +-
 .../knxnetip/readwrite/model/TunnelingResponse.go  |   2 +-
 .../readwrite/model/TunnelingResponseDataBlock.go  |   8 +-
 .../knxnetip/readwrite/model/UnknownMessage.go     |   2 +-
 .../protocols/modbus/readwrite/model/ModbusADU.go  |   2 +-
 .../modbus/readwrite/model/ModbusAsciiADU.go       |   6 +-
 .../modbus/readwrite/model/ModbusConstants.go      |   2 +-
 .../model/ModbusDeviceInformationObject.go         |   6 +-
 .../protocols/modbus/readwrite/model/ModbusPDU.go  |   6 +-
 .../readwrite/model/ModbusPDUDiagnosticRequest.go  |   4 +-
 .../readwrite/model/ModbusPDUDiagnosticResponse.go |   4 +-
 .../modbus/readwrite/model/ModbusPDUError.go       |   2 +-
 .../model/ModbusPDUGetComEventCounterResponse.go   |   4 +-
 .../model/ModbusPDUGetComEventLogResponse.go       |  10 +-
 .../ModbusPDUMaskWriteHoldingRegisterRequest.go    |   6 +-
 .../ModbusPDUMaskWriteHoldingRegisterResponse.go   |   6 +-
 .../readwrite/model/ModbusPDUReadCoilsRequest.go   |   4 +-
 .../readwrite/model/ModbusPDUReadCoilsResponse.go  |   4 +-
 .../ModbusPDUReadDeviceIdentificationRequest.go    |   6 +-
 .../ModbusPDUReadDeviceIdentificationResponse.go   |  16 +--
 .../model/ModbusPDUReadDiscreteInputsRequest.go    |   4 +-
 .../model/ModbusPDUReadDiscreteInputsResponse.go   |   4 +-
 .../model/ModbusPDUReadExceptionStatusResponse.go  |   2 +-
 .../model/ModbusPDUReadFifoQueueRequest.go         |   2 +-
 .../model/ModbusPDUReadFifoQueueResponse.go        |   6 +-
 .../model/ModbusPDUReadFileRecordRequest.go        |   4 +-
 .../model/ModbusPDUReadFileRecordRequestItem.go    |   8 +-
 .../model/ModbusPDUReadFileRecordResponse.go       |   4 +-
 .../model/ModbusPDUReadFileRecordResponseItem.go   |   6 +-
 .../model/ModbusPDUReadHoldingRegistersRequest.go  |   4 +-
 .../model/ModbusPDUReadHoldingRegistersResponse.go |   4 +-
 .../model/ModbusPDUReadInputRegistersRequest.go    |   4 +-
 .../model/ModbusPDUReadInputRegistersResponse.go   |   4 +-
 ...sPDUReadWriteMultipleHoldingRegistersRequest.go |  12 +-
 ...PDUReadWriteMultipleHoldingRegistersResponse.go |   4 +-
 .../model/ModbusPDUReportServerIdResponse.go       |   4 +-
 .../model/ModbusPDUWriteFileRecordRequest.go       |   4 +-
 .../model/ModbusPDUWriteFileRecordRequestItem.go   |  10 +-
 .../model/ModbusPDUWriteFileRecordResponse.go      |   4 +-
 .../model/ModbusPDUWriteFileRecordResponseItem.go  |  10 +-
 .../model/ModbusPDUWriteMultipleCoilsRequest.go    |   8 +-
 .../model/ModbusPDUWriteMultipleCoilsResponse.go   |   4 +-
 ...odbusPDUWriteMultipleHoldingRegistersRequest.go |   8 +-
 ...dbusPDUWriteMultipleHoldingRegistersResponse.go |   4 +-
 .../model/ModbusPDUWriteSingleCoilRequest.go       |   4 +-
 .../model/ModbusPDUWriteSingleCoilResponse.go      |   4 +-
 .../model/ModbusPDUWriteSingleRegisterRequest.go   |   4 +-
 .../model/ModbusPDUWriteSingleRegisterResponse.go  |   4 +-
 .../modbus/readwrite/model/ModbusRtuADU.go         |   6 +-
 .../modbus/readwrite/model/ModbusTcpADU.go         |  10 +-
 .../model/AlarmMessageAckObjectPushType.go         |  14 +-
 .../s7/readwrite/model/AlarmMessageAckPushType.go  |   8 +-
 .../readwrite/model/AlarmMessageAckResponseType.go |   6 +-
 .../s7/readwrite/model/AlarmMessageAckType.go      |   6 +-
 .../readwrite/model/AlarmMessageObjectAckType.go   |  14 +-
 .../readwrite/model/AlarmMessageObjectPushType.go  |  20 +--
 .../readwrite/model/AlarmMessageObjectQueryType.go |  20 +--
 .../s7/readwrite/model/AlarmMessagePushType.go     |   8 +-
 .../s7/readwrite/model/AlarmMessageQueryType.go    |  12 +-
 .../s7/readwrite/model/AssociatedValueType.go      |   8 +-
 plc4go/protocols/s7/readwrite/model/COTPPacket.go  |  10 +-
 .../readwrite/model/COTPPacketConnectionRequest.go |   6 +-
 .../model/COTPPacketConnectionResponse.go          |   6 +-
 .../protocols/s7/readwrite/model/COTPPacketData.go |   4 +-
 .../readwrite/model/COTPPacketDisconnectRequest.go |   6 +-
 .../model/COTPPacketDisconnectResponse.go          |   4 +-
 .../s7/readwrite/model/COTPPacketTpduError.go      |   4 +-
 .../protocols/s7/readwrite/model/COTPParameter.go  |   6 +-
 .../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 |  16 +--
 plc4go/protocols/s7/readwrite/model/S7Address.go   |   4 +-
 .../protocols/s7/readwrite/model/S7AddressAny.go   |  12 +-
 .../s7/readwrite/model/S7DataAlarmMessage.go       |   6 +-
 plc4go/protocols/s7/readwrite/model/S7Message.go   |  18 +--
 .../s7/readwrite/model/S7MessageObjectRequest.go   |  14 +-
 .../s7/readwrite/model/S7MessageObjectResponse.go  |   6 +-
 .../s7/readwrite/model/S7MessageResponse.go        |   4 +-
 .../s7/readwrite/model/S7MessageResponseData.go    |   4 +-
 plc4go/protocols/s7/readwrite/model/S7Parameter.go |   4 +-
 .../readwrite/model/S7ParameterModeTransition.go   |  14 +-
 .../readwrite/model/S7ParameterReadVarRequest.go   |   4 +-
 .../readwrite/model/S7ParameterReadVarResponse.go  |   2 +-
 .../model/S7ParameterSetupCommunication.go         |   8 +-
 .../s7/readwrite/model/S7ParameterUserData.go      |   4 +-
 .../s7/readwrite/model/S7ParameterUserDataItem.go  |   4 +-
 .../model/S7ParameterUserDataItemCPUFunctions.go   |  18 +--
 .../readwrite/model/S7ParameterWriteVarRequest.go  |   4 +-
 .../readwrite/model/S7ParameterWriteVarResponse.go |   2 +-
 plc4go/protocols/s7/readwrite/model/S7Payload.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  |  14 +-
 .../s7/readwrite/model/S7PayloadNotify.go          |   2 +-
 .../s7/readwrite/model/S7PayloadNotify8.go         |   2 +-
 .../s7/readwrite/model/S7PayloadReadVarResponse.go |   2 +-
 .../s7/readwrite/model/S7PayloadUserData.go        |   2 +-
 .../s7/readwrite/model/S7PayloadUserDataItem.go    |   8 +-
 .../S7PayloadUserDataItemCpuFunctionAlarmAck.go    |   6 +-
 ...yloadUserDataItemCpuFunctionAlarmAckResponse.go |   6 +-
 .../S7PayloadUserDataItemCpuFunctionAlarmQuery.go  |  18 +--
 ...oadUserDataItemCpuFunctionAlarmQueryResponse.go |  10 +-
 ...ayloadUserDataItemCpuFunctionMsgSubscription.go |  10 +-
 ...aItemCpuFunctionMsgSubscriptionAlarmResponse.go |  10 +-
 ...ataItemCpuFunctionMsgSubscriptionSysResponse.go |   4 +-
 ...PayloadUserDataItemCpuFunctionReadSzlRequest.go |   4 +-
 ...ayloadUserDataItemCpuFunctionReadSzlResponse.go |  10 +-
 .../s7/readwrite/model/S7PayloadWriteVarRequest.go |   2 +-
 .../readwrite/model/S7PayloadWriteVarResponse.go   |   2 +-
 .../s7/readwrite/model/S7VarPayloadDataItem.go     |  10 +-
 .../s7/readwrite/model/S7VarPayloadStatusItem.go   |   2 +-
 .../readwrite/model/S7VarRequestParameterItem.go   |   4 +-
 .../model/S7VarRequestParameterItemAddress.go      |   4 +-
 plc4go/protocols/s7/readwrite/model/State.go       |  16 +--
 .../s7/readwrite/model/SzlDataTreeItem.go          |  10 +-
 plc4go/protocols/s7/readwrite/model/SzlId.go       |   6 +-
 plc4go/protocols/s7/readwrite/model/TPKTPacket.go  |   8 +-
 .../protocols/simulated/readwrite/model/Dummy.go   |   2 +-
 plc4go/tools/plc4xpcapanalyzer/cmd/analyze.go      |   7 +-
 plc4go/tools/plc4xpcapanalyzer/cmd/root.go         |  10 +-
 .../internal/analyzer/analyzer.go                  |  41 ++++--
 .../internal/cbusanalyzer/analyzer.go              |  15 +-
 .../plc4xpcapanalyzer/internal/common/common.go    |  16 ++-
 1642 files changed, 3830 insertions(+), 3745 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 907acdf89..8fa8dae80 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
@@ -775,7 +775,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	${numberOfBytesExpression}
 	${arrayField.name}, _readArrayErr := readBuffer.ReadByteArray("${arrayField.name}", numberOfBytes${arrayField.name})
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing '${arrayField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_readArrayErr, "Error parsing '${arrayField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 				<#else>
 
@@ -829,7 +829,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
                         </...@compress>
 
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing '${arrayField.name}' field")<@emitImport import="github.com/pkg/errors" />
+				return nil, errors.Wrap(_err, "Error parsing '${arrayField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 			}
                         <#if arrayElementType.isSimpleTypeReference()>
 			${arrayField.name}[curItem] = _item
@@ -874,7 +874,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
                         </...@compress>
 
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing '${arrayField.name}' field")<@emitImport import="github.com/pkg/errors" />
+				return nil, errors.Wrap(_err, "Error parsing '${arrayField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 			}
                         <#if arrayElementType.isSimpleTypeReference()>
 			${arrayField.name} = append(${arrayField.name}, _item)
@@ -920,7 +920,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 						</...@compress>
 
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing '${arrayField.name}' field")<@emitImport import="github.com/pkg/errors" />
+				return nil, errors.Wrap(_err, "Error parsing '${arrayField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 			}
 						<#if arrayElementType.isSimpleTypeReference()>
 			${arrayField.name} = append(${arrayField.name}, _item)
@@ -948,7 +948,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	{
 		checksumRef, _checksumRefErr := ${helper.getReadBufferReadMethodCall("checksum", simpleTypeReference, checksumField)}
 		if _checksumRefErr != nil {
-			return nil, errors.Wrap(_checksumRefErr, "Error parsing 'checksum' field")<@emitImport import="github.com/pkg/errors" />
+			return nil, errors.Wrap(_checksumRefErr, "Error parsing 'checksum' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 		}
 		checksum, _checksumErr:= ${helper.toParseExpression(checksumField, checksumField.type, checksumField.checksumExpression, parserArguments)}
 		if _checksumErr != nil {
@@ -978,14 +978,14 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
                     <#else>
 	${constField.name}, _${constField.name}Err := ${helper.getLanguageTypeNameForField(field)}Parse(readBuffer)
 	if _${constField.name}Err != nil {
-		return nil, errors.Wrap(_${constField.name}Err, "Error parsing '${constField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${constField.name}Err, "Error parsing '${constField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
                     </#if> 
 				<#else>
 	${constField.name}, _${constField.name}Err := ${helper.getReadBufferReadMethodCall(constField.name, constField.type.asSimpleTypeReference().orElseThrow(), constField)}
 				</#if>
 	if _${constField.name}Err != nil {
-		return nil, errors.Wrap(_${constField.name}Err, "Error parsing '${constField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${constField.name}Err, "Error parsing '${constField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 	if ${constField.name} != ${type.name}_${constField.name?upper_case} {
 		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ${type.name}_${constField.name?upper_case}) + " but got " + fmt.Sprintf("%d", ${constField.name}))<@emitImport import="github.com/pkg/errors" /><@emitImport import="fmt" />
@@ -1010,7 +1010,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	${helper.getVariableName(field)}, _${discriminatorField.name}Err := ${helper.getReadBufferReadMethodCall(discriminatorField.name, simpleTypeReference, discriminatorField)}
 	</#if>
 	if _${discriminatorField.name}Err != nil {
-		return nil, errors.Wrap(_${discriminatorField.name}Err, "Error parsing '${discriminatorField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${discriminatorField.name}Err, "Error parsing '${discriminatorField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 				<#break>
 			<#case "enum">
@@ -1040,7 +1040,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	${implicitField.name}, _${implicitField.name}Err := ${helper.getReadBufferReadMethodCall(implicitField.name, simpleTypeReference, implicitField)}
 	_ = ${implicitField.name}
 	if _${implicitField.name}Err != nil {
-		return nil, errors.Wrap(_${implicitField.name}Err, "Error parsing '${implicitField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${implicitField.name}Err, "Error parsing '${implicitField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 				<#break>
 			<#case "manualArray">
@@ -1126,7 +1126,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	// Manual Field (${manualField.name})
 	_${manualField.name}, _${manualField.name}Err := ${helper.toParseExpression(manualField, manualField.type, manualField.parseExpression, parserArguments)}
 	if _${manualField.name}Err != nil {
-		return nil, errors.Wrap(_${manualField.name}Err, "Error parsing '${manualField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${manualField.name}Err, "Error parsing '${manualField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
     ${manualField.name} := _${manualField.name}.(${helper.getLanguageTypeNameForField(manualField)})
 			<#break>
@@ -1143,7 +1143,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 			<#if optionalField.type.isSimpleTypeReference()>
 		_val, _err := ${helper.getReadBufferReadMethodCall(optionalField.name, optionalField.type.asSimpleTypeReference().orElseThrow(), optionalField)}
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing '${optionalField.name}' field")<@emitImport import="github.com/pkg/errors" />
+			return nil, errors.Wrap(_err, "Error parsing '${optionalField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 		}
 		${optionalField.name} = &_val
 			<#elseif helper.isEnumField(field)>
@@ -1152,7 +1152,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 		}
 		_val, _err := ${helper.getLanguageTypeNameForField(field)}Parse(readBuffer)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing '${optionalField.name}' field")<@emitImport import="github.com/pkg/errors" />
+			return nil, errors.Wrap(_err, "Error parsing '${optionalField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 		}
 		${optionalField.name} = &_val
 		if closeErr := readBuffer.CloseContext("${optionalField.name}"); closeErr != nil {
@@ -1190,7 +1190,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")<@emitImport import="github.com/rs/zerolog/log" />
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing '${optionalField.name}' field")<@emitImport import="github.com/pkg/errors" />
+			return nil, errors.Wrap(_err, "Error parsing '${optionalField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 		default:
 			${optionalField.name} = _val.(${helper.getLanguageTypeNameForField(field)})
 			if closeErr := readBuffer.CloseContext("${optionalField.name}"); closeErr != nil {
@@ -1210,12 +1210,12 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 			<#if assertField.type.isSimpleTypeReference()>
 	${assertField.name}, _err := ${helper.getReadBufferReadMethodCall(assertField.name, assertField.type.asSimpleTypeReference().orElseThrow(), assertField)}
 	if _err != nil {
-		return nil, errors.Wrap(_err, "Error parsing '${assertField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_err, "Error parsing '${assertField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 			<#elseif helper.isEnumField(field)>
 	${assertField.name}, _err := ${helper.getLanguageTypeNameForField(field)}Parse(readBuffer)
 	if _err != nil {
-		return nil, errors.Wrap(_err, "Error parsing '${assertField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_err, "Error parsing '${assertField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 			<#else>
 				<@compress single_line=true>
@@ -1232,7 +1232,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
                 </...@compress>
 	_val, _err := ${helper.getLanguageTypeNameForField(field)}Parse(readBuffer${refParams})
 	if _err != nil {
-		return nil, errors.Wrap(_err, "Error parsing '${assertField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_err, "Error parsing '${assertField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 	${assertField.name} = _val
 			</#if>
@@ -1254,7 +1254,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 			// Just read the padding data and ignore it
 			_, _err := ${helper.getReadBufferReadMethodCall("", simpleTypeReference, paddingField)}
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'padding' field")<@emitImport import="github.com/pkg/errors" />
+				return nil, errors.Wrap(_err, "Error parsing 'padding' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 			}
 		}
 		if closeErr := readBuffer.CloseContext("padding", utils.WithRenderAsList(true)); closeErr != nil {
@@ -1270,7 +1270,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	{
 		reserved, _err := ${helper.getReadBufferReadMethodCall("reserved", simpleTypeReference, reservedField)}
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")<@emitImport import="github.com/pkg/errors" />
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 		}
 		if ${helper.toTypeSafeCompare(reservedField)} {
 			log.Info().Fields(map[string]interface{}{<@emitImport import="github.com/rs/zerolog/log" />
@@ -1322,9 +1322,9 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 
 	if _${simpleField.name}Err != nil {
 			<#if helper.isEnumField(field)>
-		return nil, errors.Wrap(_${simpleField.name}Err, "Error parsing '${simpleField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${simpleField.name}Err, "Error parsing '${simpleField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 			<#else>
-		return nil, errors.Wrap(_${simpleField.name}Err, "Error parsing '${simpleField.name}' field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_${simpleField.name}Err, "Error parsing '${simpleField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 			</#if>
 	}
 	${simpleField.name} := _${simpleField.name}<#if helper.isComplex(field) && !helper.isEnumField(field) && !field.isArrayField()>.(${helper.getLanguageTypeNameForField(field)})</#if>
@@ -1393,7 +1393,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 		typeSwitchError = errors.Errorf("Unmapped type for<#if switchField.getDiscriminatorExpressions()?has_content> parameters [<#list switchField.getDiscriminatorExpressions() as discriminatorExpression>${discriminatorExpression.stringRepresentation()}=%v<#sep>, </#sep></#list>]</#if>"<#if switchField.getDiscriminatorExpressions()?has_content>, <#list switchField.getDiscriminatorExpressions() as discriminatorExpression>${helper.toParseExpression(null, null, discriminatorExpression, parserAr [...]
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ${type.name}.")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 	_child = _childTemp.(${type.name}ChildSerializeRequirement)
 				<#break>
@@ -1404,7 +1404,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 	// Unknown field
 	_, _UnknownErr := ${helper.getReadBufferReadMethodCall("unknown", unknownField.type.asSimpleTypeReference().orElseThrow(), null, unknownField)}
 	if _UnknownErr != nil {
-		return nil, errors.Wrap(_UnknownErr, "Error parsing unknown field")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(_UnknownErr, "Error parsing unknown field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 	}
 				<#break>
 
@@ -1438,7 +1438,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 				currentPos = positionAware.GetPos()
 				${peekField.name}, _err := ${helper.getReadBufferReadMethodCall(peekField.name, peekField.type.asSimpleTypeReference().orElseThrow(), peekField)}
 				if _err != nil {
-					return nil, errors.Wrap(_err, "Error parsing '${peekField.name}' field")<@emitImport import="github.com/pkg/errors" />
+					return nil, errors.Wrap(_err, "Error parsing '${peekField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 				}
                 <#elseif helper.isEnumField(field)>
 				currentPos = positionAware.GetPos()
@@ -1447,7 +1447,7 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 				}
 				${peekField.name}, _err := ${helper.getLanguageTypeNameForField(field)}Parse(readBuffer)
 				if _err != nil {
-					return nil, errors.Wrap(_err, "Error parsing '${peekField.name}' field")<@emitImport import="github.com/pkg/errors" />
+					return nil, errors.Wrap(_err, "Error parsing '${peekField.name}' field of ${type.name}")<@emitImport import="github.com/pkg/errors" />
 				}
 				if closeErr := readBuffer.CloseContext("${peekField.name}"); closeErr != nil {
 					return nil, errors.Wrap(closeErr, "Error closing for ${peekField.name}")<@emitImport import="github.com/pkg/errors" />
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
index c76f81698..bc2b9c865 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
@@ -170,27 +170,27 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (CIPEncapsulationP
 	// Discriminator Field (commandType) (Used as input to a switch field)
 	commandType, _commandTypeErr := readBuffer.ReadUint16("commandType", 16)
 	if _commandTypeErr != nil {
-		return nil, errors.Wrap(_commandTypeErr, "Error parsing 'commandType' field")
+		return nil, errors.Wrap(_commandTypeErr, "Error parsing 'commandType' field of CIPEncapsulationPacket")
 	}
 
 	// Implicit Field (packetLen) (Used for parsing, but its value is not stored as it's implicitly given by the objects content)
 	packetLen, _packetLenErr := readBuffer.ReadUint16("packetLen", 16)
 	_ = packetLen
 	if _packetLenErr != nil {
-		return nil, errors.Wrap(_packetLenErr, "Error parsing 'packetLen' field")
+		return nil, errors.Wrap(_packetLenErr, "Error parsing 'packetLen' field of CIPEncapsulationPacket")
 	}
 
 	// Simple Field (sessionHandle)
 	_sessionHandle, _sessionHandleErr := readBuffer.ReadUint32("sessionHandle", 32)
 	if _sessionHandleErr != nil {
-		return nil, errors.Wrap(_sessionHandleErr, "Error parsing 'sessionHandle' field")
+		return nil, errors.Wrap(_sessionHandleErr, "Error parsing 'sessionHandle' field of CIPEncapsulationPacket")
 	}
 	sessionHandle := _sessionHandle
 
 	// Simple Field (status)
 	_status, _statusErr := readBuffer.ReadUint32("status", 32)
 	if _statusErr != nil {
-		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field")
+		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field of CIPEncapsulationPacket")
 	}
 	status := _status
 
@@ -208,7 +208,7 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (CIPEncapsulationP
 		for curItem := uint16(0); curItem < uint16(uint16(8)); curItem++ {
 			_item, _err := readBuffer.ReadUint8("", 8)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'senderContext' field")
+				return nil, errors.Wrap(_err, "Error parsing 'senderContext' field of CIPEncapsulationPacket")
 			}
 			senderContext[curItem] = _item
 		}
@@ -220,7 +220,7 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (CIPEncapsulationP
 	// Simple Field (options)
 	_options, _optionsErr := readBuffer.ReadUint32("options", 32)
 	if _optionsErr != nil {
-		return nil, errors.Wrap(_optionsErr, "Error parsing 'options' field")
+		return nil, errors.Wrap(_optionsErr, "Error parsing 'options' field of CIPEncapsulationPacket")
 	}
 	options := _options
 
@@ -228,7 +228,7 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (CIPEncapsulationP
 	{
 		reserved, _err := readBuffer.ReadUint32("reserved", 32)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of CIPEncapsulationPacket")
 		}
 		if reserved != uint32(0x00000000) {
 			log.Info().Fields(map[string]interface{}{
@@ -260,7 +260,7 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (CIPEncapsulationP
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandType=%v]", commandType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CIPEncapsulationPacket.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CIPEncapsulationPacket")
 	}
 	_child = _childTemp.(CIPEncapsulationPacketChildSerializeRequirement)
 
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go
index f4249eb5c..b191ff64c 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadRequest.go
@@ -144,7 +144,7 @@ func CIPEncapsulationReadRequestParse(readBuffer utils.ReadBuffer) (CIPEncapsula
 	}
 	_request, _requestErr := DF1RequestMessageParse(readBuffer)
 	if _requestErr != nil {
-		return nil, errors.Wrap(_requestErr, "Error parsing 'request' field")
+		return nil, errors.Wrap(_requestErr, "Error parsing 'request' field of CIPEncapsulationReadRequest")
 	}
 	request := _request.(DF1RequestMessage)
 	if closeErr := readBuffer.CloseContext("request"); closeErr != nil {
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go
index 87afb5147..3156f3474 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationReadResponse.go
@@ -147,7 +147,7 @@ func CIPEncapsulationReadResponseParse(readBuffer utils.ReadBuffer, packetLen ui
 	}
 	_response, _responseErr := DF1ResponseMessageParse(readBuffer, uint16(packetLen))
 	if _responseErr != nil {
-		return nil, errors.Wrap(_responseErr, "Error parsing 'response' field")
+		return nil, errors.Wrap(_responseErr, "Error parsing 'response' field of CIPEncapsulationReadResponse")
 	}
 	response := _response.(DF1ResponseMessage)
 	if closeErr := readBuffer.CloseContext("response"); closeErr != nil {
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go
index 9b4c280a7..6770fb137 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1CommandRequestMessage.go
@@ -144,7 +144,7 @@ func DF1CommandRequestMessageParse(readBuffer utils.ReadBuffer) (DF1CommandReque
 	}
 	_command, _commandErr := DF1RequestCommandParse(readBuffer)
 	if _commandErr != nil {
-		return nil, errors.Wrap(_commandErr, "Error parsing 'command' field")
+		return nil, errors.Wrap(_commandErr, "Error parsing 'command' field of DF1CommandRequestMessage")
 	}
 	command := _command.(DF1RequestCommand)
 	if closeErr := readBuffer.CloseContext("command"); closeErr != nil {
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go b/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
index 0970e0abd..062c3ac88 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1CommandResponseMessageProtectedTypedLogicalRead.go
@@ -152,7 +152,7 @@ func DF1CommandResponseMessageProtectedTypedLogicalReadParse(readBuffer utils.Re
 		for positionAware.GetPos() < _dataEndPos {
 			_item, _err := readBuffer.ReadUint8("", 8)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'data' field")
+				return nil, errors.Wrap(_err, "Error parsing 'data' field of DF1CommandResponseMessageProtectedTypedLogicalRead")
 			}
 			data = append(data, _item)
 		}
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
index bcefbc53a..a7b79c240 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
@@ -111,7 +111,7 @@ func DF1RequestCommandParse(readBuffer utils.ReadBuffer) (DF1RequestCommand, err
 	// Discriminator Field (functionCode) (Used as input to a switch field)
 	functionCode, _functionCodeErr := readBuffer.ReadUint8("functionCode", 8)
 	if _functionCodeErr != nil {
-		return nil, errors.Wrap(_functionCodeErr, "Error parsing 'functionCode' field")
+		return nil, errors.Wrap(_functionCodeErr, "Error parsing 'functionCode' field of DF1RequestCommand")
 	}
 
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
@@ -130,7 +130,7 @@ func DF1RequestCommandParse(readBuffer utils.ReadBuffer) (DF1RequestCommand, err
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [functionCode=%v]", functionCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1RequestCommand.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1RequestCommand")
 	}
 	_child = _childTemp.(DF1RequestCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
index a8dd032b8..640ecae91 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
@@ -165,14 +165,14 @@ func DF1RequestMessageParse(readBuffer utils.ReadBuffer) (DF1RequestMessage, err
 	// Simple Field (destinationAddress)
 	_destinationAddress, _destinationAddressErr := readBuffer.ReadUint8("destinationAddress", 8)
 	if _destinationAddressErr != nil {
-		return nil, errors.Wrap(_destinationAddressErr, "Error parsing 'destinationAddress' field")
+		return nil, errors.Wrap(_destinationAddressErr, "Error parsing 'destinationAddress' field of DF1RequestMessage")
 	}
 	destinationAddress := _destinationAddress
 
 	// Simple Field (sourceAddress)
 	_sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 	if _sourceAddressErr != nil {
-		return nil, errors.Wrap(_sourceAddressErr, "Error parsing 'sourceAddress' field")
+		return nil, errors.Wrap(_sourceAddressErr, "Error parsing 'sourceAddress' field of DF1RequestMessage")
 	}
 	sourceAddress := _sourceAddress
 
@@ -180,7 +180,7 @@ func DF1RequestMessageParse(readBuffer utils.ReadBuffer) (DF1RequestMessage, err
 	{
 		reserved, _err := readBuffer.ReadUint16("reserved", 16)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of DF1RequestMessage")
 		}
 		if reserved != uint16(0x0000) {
 			log.Info().Fields(map[string]interface{}{
@@ -193,20 +193,20 @@ func DF1RequestMessageParse(readBuffer utils.ReadBuffer) (DF1RequestMessage, err
 	// Discriminator Field (commandCode) (Used as input to a switch field)
 	commandCode, _commandCodeErr := readBuffer.ReadUint8("commandCode", 8)
 	if _commandCodeErr != nil {
-		return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field")
+		return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field of DF1RequestMessage")
 	}
 
 	// Simple Field (status)
 	_status, _statusErr := readBuffer.ReadUint8("status", 8)
 	if _statusErr != nil {
-		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field")
+		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field of DF1RequestMessage")
 	}
 	status := _status
 
 	// Simple Field (transactionCounter)
 	_transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transactionCounter", 16)
 	if _transactionCounterErr != nil {
-		return nil, errors.Wrap(_transactionCounterErr, "Error parsing 'transactionCounter' field")
+		return nil, errors.Wrap(_transactionCounterErr, "Error parsing 'transactionCounter' field of DF1RequestMessage")
 	}
 	transactionCounter := _transactionCounter
 
@@ -226,7 +226,7 @@ func DF1RequestMessageParse(readBuffer utils.ReadBuffer) (DF1RequestMessage, err
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandCode=%v]", commandCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1RequestMessage.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1RequestMessage")
 	}
 	_child = _childTemp.(DF1RequestMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
index 6da0653e4..2b97dd60f 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestProtectedTypedLogicalRead.go
@@ -180,35 +180,35 @@ func DF1RequestProtectedTypedLogicalReadParse(readBuffer utils.ReadBuffer) (DF1R
 	// Simple Field (byteSize)
 	_byteSize, _byteSizeErr := readBuffer.ReadUint8("byteSize", 8)
 	if _byteSizeErr != nil {
-		return nil, errors.Wrap(_byteSizeErr, "Error parsing 'byteSize' field")
+		return nil, errors.Wrap(_byteSizeErr, "Error parsing 'byteSize' field of DF1RequestProtectedTypedLogicalRead")
 	}
 	byteSize := _byteSize
 
 	// Simple Field (fileNumber)
 	_fileNumber, _fileNumberErr := readBuffer.ReadUint8("fileNumber", 8)
 	if _fileNumberErr != nil {
-		return nil, errors.Wrap(_fileNumberErr, "Error parsing 'fileNumber' field")
+		return nil, errors.Wrap(_fileNumberErr, "Error parsing 'fileNumber' field of DF1RequestProtectedTypedLogicalRead")
 	}
 	fileNumber := _fileNumber
 
 	// Simple Field (fileType)
 	_fileType, _fileTypeErr := readBuffer.ReadUint8("fileType", 8)
 	if _fileTypeErr != nil {
-		return nil, errors.Wrap(_fileTypeErr, "Error parsing 'fileType' field")
+		return nil, errors.Wrap(_fileTypeErr, "Error parsing 'fileType' field of DF1RequestProtectedTypedLogicalRead")
 	}
 	fileType := _fileType
 
 	// Simple Field (elementNumber)
 	_elementNumber, _elementNumberErr := readBuffer.ReadUint8("elementNumber", 8)
 	if _elementNumberErr != nil {
-		return nil, errors.Wrap(_elementNumberErr, "Error parsing 'elementNumber' field")
+		return nil, errors.Wrap(_elementNumberErr, "Error parsing 'elementNumber' field of DF1RequestProtectedTypedLogicalRead")
 	}
 	elementNumber := _elementNumber
 
 	// Simple Field (subElementNumber)
 	_subElementNumber, _subElementNumberErr := readBuffer.ReadUint8("subElementNumber", 8)
 	if _subElementNumberErr != nil {
-		return nil, errors.Wrap(_subElementNumberErr, "Error parsing 'subElementNumber' field")
+		return nil, errors.Wrap(_subElementNumberErr, "Error parsing 'subElementNumber' field of DF1RequestProtectedTypedLogicalRead")
 	}
 	subElementNumber := _subElementNumber
 
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
index 128cc12e9..b0b73af1f 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
@@ -172,7 +172,7 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of DF1ResponseMessage")
 		}
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
@@ -185,14 +185,14 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 	// Simple Field (destinationAddress)
 	_destinationAddress, _destinationAddressErr := readBuffer.ReadUint8("destinationAddress", 8)
 	if _destinationAddressErr != nil {
-		return nil, errors.Wrap(_destinationAddressErr, "Error parsing 'destinationAddress' field")
+		return nil, errors.Wrap(_destinationAddressErr, "Error parsing 'destinationAddress' field of DF1ResponseMessage")
 	}
 	destinationAddress := _destinationAddress
 
 	// Simple Field (sourceAddress)
 	_sourceAddress, _sourceAddressErr := readBuffer.ReadUint8("sourceAddress", 8)
 	if _sourceAddressErr != nil {
-		return nil, errors.Wrap(_sourceAddressErr, "Error parsing 'sourceAddress' field")
+		return nil, errors.Wrap(_sourceAddressErr, "Error parsing 'sourceAddress' field of DF1ResponseMessage")
 	}
 	sourceAddress := _sourceAddress
 
@@ -200,7 +200,7 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of DF1ResponseMessage")
 		}
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
@@ -213,20 +213,20 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 	// Discriminator Field (commandCode) (Used as input to a switch field)
 	commandCode, _commandCodeErr := readBuffer.ReadUint8("commandCode", 8)
 	if _commandCodeErr != nil {
-		return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field")
+		return nil, errors.Wrap(_commandCodeErr, "Error parsing 'commandCode' field of DF1ResponseMessage")
 	}
 
 	// Simple Field (status)
 	_status, _statusErr := readBuffer.ReadUint8("status", 8)
 	if _statusErr != nil {
-		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field")
+		return nil, errors.Wrap(_statusErr, "Error parsing 'status' field of DF1ResponseMessage")
 	}
 	status := _status
 
 	// Simple Field (transactionCounter)
 	_transactionCounter, _transactionCounterErr := readBuffer.ReadUint16("transactionCounter", 16)
 	if _transactionCounterErr != nil {
-		return nil, errors.Wrap(_transactionCounterErr, "Error parsing 'transactionCounter' field")
+		return nil, errors.Wrap(_transactionCounterErr, "Error parsing 'transactionCounter' field of DF1ResponseMessage")
 	}
 	transactionCounter := _transactionCounter
 
@@ -246,7 +246,7 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandCode=%v]", commandCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1ResponseMessage.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1ResponseMessage")
 	}
 	_child = _childTemp.(DF1ResponseMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
index 5a6178921..cf72ed99b 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationRequest.go
@@ -202,42 +202,42 @@ func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, commandId
 	// Simple Field (indexGroup)
 	_indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
-		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
+		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field of AdsAddDeviceNotificationRequest")
 	}
 	indexGroup := _indexGroup
 
 	// Simple Field (indexOffset)
 	_indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
-		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
+		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field of AdsAddDeviceNotificationRequest")
 	}
 	indexOffset := _indexOffset
 
 	// Simple Field (length)
 	_length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsAddDeviceNotificationRequest")
 	}
 	length := _length
 
 	// Simple Field (transmissionMode)
 	_transmissionMode, _transmissionModeErr := readBuffer.ReadUint32("transmissionMode", 32)
 	if _transmissionModeErr != nil {
-		return nil, errors.Wrap(_transmissionModeErr, "Error parsing 'transmissionMode' field")
+		return nil, errors.Wrap(_transmissionModeErr, "Error parsing 'transmissionMode' field of AdsAddDeviceNotificationRequest")
 	}
 	transmissionMode := _transmissionMode
 
 	// Simple Field (maxDelay)
 	_maxDelay, _maxDelayErr := readBuffer.ReadUint32("maxDelay", 32)
 	if _maxDelayErr != nil {
-		return nil, errors.Wrap(_maxDelayErr, "Error parsing 'maxDelay' field")
+		return nil, errors.Wrap(_maxDelayErr, "Error parsing 'maxDelay' field of AdsAddDeviceNotificationRequest")
 	}
 	maxDelay := _maxDelay
 
 	// Simple Field (cycleTime)
 	_cycleTime, _cycleTimeErr := readBuffer.ReadUint32("cycleTime", 32)
 	if _cycleTimeErr != nil {
-		return nil, errors.Wrap(_cycleTimeErr, "Error parsing 'cycleTime' field")
+		return nil, errors.Wrap(_cycleTimeErr, "Error parsing 'cycleTime' field of AdsAddDeviceNotificationRequest")
 	}
 	cycleTime := _cycleTime
 
@@ -245,7 +245,7 @@ func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, commandId
 	{
 		reserved, _err := readBuffer.ReadUint64("reserved", 64)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of AdsAddDeviceNotificationRequest")
 		}
 		if reserved != uint64(0x0000) {
 			log.Info().Fields(map[string]interface{}{
@@ -259,7 +259,7 @@ func AdsAddDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, commandId
 	{
 		reserved, _err := readBuffer.ReadUint64("reserved", 64)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of AdsAddDeviceNotificationRequest")
 		}
 		if reserved != uint64(0x0000) {
 			log.Info().Fields(map[string]interface{}{
diff --git a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
index 8d5739ab2..51ac1c513 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsAddDeviceNotificationResponse.go
@@ -154,7 +154,7 @@ func AdsAddDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, commandI
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsAddDeviceNotificationResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
@@ -164,7 +164,7 @@ func AdsAddDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, commandI
 	// Simple Field (notificationHandle)
 	_notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
 	if _notificationHandleErr != nil {
-		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field")
+		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field of AdsAddDeviceNotificationResponse")
 	}
 	notificationHandle := _notificationHandle
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsData.go b/plc4go/protocols/ads/readwrite/model/AdsData.go
index 7f83d2075..81d6567e6 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsData.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsData.go
@@ -163,7 +163,7 @@ func AdsDataParse(readBuffer utils.ReadBuffer, commandId CommandId, response boo
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandId=%v, response=%v]", commandId, response)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of AdsData.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of AdsData")
 	}
 	_child = _childTemp.(AdsDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
index 350ab62e6..4fb980621 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationRequest.go
@@ -140,7 +140,7 @@ func AdsDeleteDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, comman
 	// Simple Field (notificationHandle)
 	_notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
 	if _notificationHandleErr != nil {
-		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field")
+		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field of AdsDeleteDeviceNotificationRequest")
 	}
 	notificationHandle := _notificationHandle
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
index 81b2fbdc7..36fc6abb2 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeleteDeviceNotificationResponse.go
@@ -143,7 +143,7 @@ func AdsDeleteDeviceNotificationResponseParse(readBuffer utils.ReadBuffer, comma
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsDeleteDeviceNotificationResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go b/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go
index 3c8a78db5..afac91879 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsDeviceNotificationRequest.go
@@ -167,14 +167,14 @@ func AdsDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, commandId Co
 	// Simple Field (length)
 	_length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsDeviceNotificationRequest")
 	}
 	length := _length
 
 	// Simple Field (stamps)
 	_stamps, _stampsErr := readBuffer.ReadUint32("stamps", 32)
 	if _stampsErr != nil {
-		return nil, errors.Wrap(_stampsErr, "Error parsing 'stamps' field")
+		return nil, errors.Wrap(_stampsErr, "Error parsing 'stamps' field of AdsDeviceNotificationRequest")
 	}
 	stamps := _stamps
 
@@ -192,7 +192,7 @@ func AdsDeviceNotificationRequestParse(readBuffer utils.ReadBuffer, commandId Co
 		for curItem := uint16(0); curItem < uint16(stamps); curItem++ {
 			_item, _err := AdsStampHeaderParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'adsStampHeaders' field")
+				return nil, errors.Wrap(_err, "Error parsing 'adsStampHeaders' field of AdsDeviceNotificationRequest")
 			}
 			adsStampHeaders[curItem] = _item.(AdsStampHeader)
 		}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
index e7d5315d8..996fac631 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
@@ -126,7 +126,7 @@ func AdsMultiRequestItemParse(readBuffer utils.ReadBuffer, indexGroup uint32) (A
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [indexGroup=%v]", indexGroup)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of AdsMultiRequestItem.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of AdsMultiRequestItem")
 	}
 	_child = _childTemp.(AdsMultiRequestItemChildSerializeRequirement)
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go
index 6f5838de0..0a43bf698 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemRead.go
@@ -158,21 +158,21 @@ func AdsMultiRequestItemReadParse(readBuffer utils.ReadBuffer, indexGroup uint32
 	// Simple Field (itemIndexGroup)
 	_itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
 	if _itemIndexGroupErr != nil {
-		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field")
+		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field of AdsMultiRequestItemRead")
 	}
 	itemIndexGroup := _itemIndexGroup
 
 	// Simple Field (itemIndexOffset)
 	_itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
 	if _itemIndexOffsetErr != nil {
-		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field")
+		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field of AdsMultiRequestItemRead")
 	}
 	itemIndexOffset := _itemIndexOffset
 
 	// Simple Field (itemReadLength)
 	_itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32)
 	if _itemReadLengthErr != nil {
-		return nil, errors.Wrap(_itemReadLengthErr, "Error parsing 'itemReadLength' field")
+		return nil, errors.Wrap(_itemReadLengthErr, "Error parsing 'itemReadLength' field of AdsMultiRequestItemRead")
 	}
 	itemReadLength := _itemReadLength
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
index f5bcb5708..826cb06ca 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemReadWrite.go
@@ -169,28 +169,28 @@ func AdsMultiRequestItemReadWriteParse(readBuffer utils.ReadBuffer, indexGroup u
 	// Simple Field (itemIndexGroup)
 	_itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
 	if _itemIndexGroupErr != nil {
-		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field")
+		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field of AdsMultiRequestItemReadWrite")
 	}
 	itemIndexGroup := _itemIndexGroup
 
 	// Simple Field (itemIndexOffset)
 	_itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
 	if _itemIndexOffsetErr != nil {
-		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field")
+		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field of AdsMultiRequestItemReadWrite")
 	}
 	itemIndexOffset := _itemIndexOffset
 
 	// Simple Field (itemReadLength)
 	_itemReadLength, _itemReadLengthErr := readBuffer.ReadUint32("itemReadLength", 32)
 	if _itemReadLengthErr != nil {
-		return nil, errors.Wrap(_itemReadLengthErr, "Error parsing 'itemReadLength' field")
+		return nil, errors.Wrap(_itemReadLengthErr, "Error parsing 'itemReadLength' field of AdsMultiRequestItemReadWrite")
 	}
 	itemReadLength := _itemReadLength
 
 	// Simple Field (itemWriteLength)
 	_itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength", 32)
 	if _itemWriteLengthErr != nil {
-		return nil, errors.Wrap(_itemWriteLengthErr, "Error parsing 'itemWriteLength' field")
+		return nil, errors.Wrap(_itemWriteLengthErr, "Error parsing 'itemWriteLength' field of AdsMultiRequestItemReadWrite")
 	}
 	itemWriteLength := _itemWriteLength
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go
index 16dc78410..243e64086 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItemWrite.go
@@ -158,21 +158,21 @@ func AdsMultiRequestItemWriteParse(readBuffer utils.ReadBuffer, indexGroup uint3
 	// Simple Field (itemIndexGroup)
 	_itemIndexGroup, _itemIndexGroupErr := readBuffer.ReadUint32("itemIndexGroup", 32)
 	if _itemIndexGroupErr != nil {
-		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field")
+		return nil, errors.Wrap(_itemIndexGroupErr, "Error parsing 'itemIndexGroup' field of AdsMultiRequestItemWrite")
 	}
 	itemIndexGroup := _itemIndexGroup
 
 	// Simple Field (itemIndexOffset)
 	_itemIndexOffset, _itemIndexOffsetErr := readBuffer.ReadUint32("itemIndexOffset", 32)
 	if _itemIndexOffsetErr != nil {
-		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field")
+		return nil, errors.Wrap(_itemIndexOffsetErr, "Error parsing 'itemIndexOffset' field of AdsMultiRequestItemWrite")
 	}
 	itemIndexOffset := _itemIndexOffset
 
 	// Simple Field (itemWriteLength)
 	_itemWriteLength, _itemWriteLengthErr := readBuffer.ReadUint32("itemWriteLength", 32)
 	if _itemWriteLengthErr != nil {
-		return nil, errors.Wrap(_itemWriteLengthErr, "Error parsing 'itemWriteLength' field")
+		return nil, errors.Wrap(_itemWriteLengthErr, "Error parsing 'itemWriteLength' field of AdsMultiRequestItemWrite")
 	}
 	itemWriteLength := _itemWriteLength
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go b/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
index 2bb80b948..fd5011dc2 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsNotificationSample.go
@@ -131,21 +131,21 @@ func AdsNotificationSampleParse(readBuffer utils.ReadBuffer) (AdsNotificationSam
 	// Simple Field (notificationHandle)
 	_notificationHandle, _notificationHandleErr := readBuffer.ReadUint32("notificationHandle", 32)
 	if _notificationHandleErr != nil {
-		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field")
+		return nil, errors.Wrap(_notificationHandleErr, "Error parsing 'notificationHandle' field of AdsNotificationSample")
 	}
 	notificationHandle := _notificationHandle
 
 	// Simple Field (sampleSize)
 	_sampleSize, _sampleSizeErr := readBuffer.ReadUint32("sampleSize", 32)
 	if _sampleSizeErr != nil {
-		return nil, errors.Wrap(_sampleSizeErr, "Error parsing 'sampleSize' field")
+		return nil, errors.Wrap(_sampleSizeErr, "Error parsing 'sampleSize' field of AdsNotificationSample")
 	}
 	sampleSize := _sampleSize
 	// Byte Array field (data)
 	numberOfBytesdata := int(sampleSize)
 	data, _readArrayErr := readBuffer.ReadByteArray("data", numberOfBytesdata)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field of AdsNotificationSample")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsNotificationSample"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go
index d3c9fa341..f19f34882 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadDeviceInfoResponse.go
@@ -189,7 +189,7 @@ func AdsReadDeviceInfoResponseParse(readBuffer utils.ReadBuffer, commandId Comma
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsReadDeviceInfoResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
@@ -199,28 +199,28 @@ func AdsReadDeviceInfoResponseParse(readBuffer utils.ReadBuffer, commandId Comma
 	// Simple Field (majorVersion)
 	_majorVersion, _majorVersionErr := readBuffer.ReadUint8("majorVersion", 8)
 	if _majorVersionErr != nil {
-		return nil, errors.Wrap(_majorVersionErr, "Error parsing 'majorVersion' field")
+		return nil, errors.Wrap(_majorVersionErr, "Error parsing 'majorVersion' field of AdsReadDeviceInfoResponse")
 	}
 	majorVersion := _majorVersion
 
 	// Simple Field (minorVersion)
 	_minorVersion, _minorVersionErr := readBuffer.ReadUint8("minorVersion", 8)
 	if _minorVersionErr != nil {
-		return nil, errors.Wrap(_minorVersionErr, "Error parsing 'minorVersion' field")
+		return nil, errors.Wrap(_minorVersionErr, "Error parsing 'minorVersion' field of AdsReadDeviceInfoResponse")
 	}
 	minorVersion := _minorVersion
 
 	// Simple Field (version)
 	_version, _versionErr := readBuffer.ReadUint16("version", 16)
 	if _versionErr != nil {
-		return nil, errors.Wrap(_versionErr, "Error parsing 'version' field")
+		return nil, errors.Wrap(_versionErr, "Error parsing 'version' field of AdsReadDeviceInfoResponse")
 	}
 	version := _version
 	// Byte Array field (device)
 	numberOfBytesdevice := int(uint16(16))
 	device, _readArrayErr := readBuffer.ReadByteArray("device", numberOfBytesdevice)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'device' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'device' field of AdsReadDeviceInfoResponse")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsReadDeviceInfoResponse"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go b/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go
index 7b9fd7cfb..42ab465a6 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadRequest.go
@@ -162,21 +162,21 @@ func AdsReadRequestParse(readBuffer utils.ReadBuffer, commandId CommandId, respo
 	// Simple Field (indexGroup)
 	_indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
-		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
+		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field of AdsReadRequest")
 	}
 	indexGroup := _indexGroup
 
 	// Simple Field (indexOffset)
 	_indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
-		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
+		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field of AdsReadRequest")
 	}
 	indexOffset := _indexOffset
 
 	// Simple Field (length)
 	_length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsReadRequest")
 	}
 	length := _length
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go
index 2d8c26464..b390d3b67 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadResponse.go
@@ -159,7 +159,7 @@ func AdsReadResponseParse(readBuffer utils.ReadBuffer, commandId CommandId, resp
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsReadResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
@@ -170,13 +170,13 @@ func AdsReadResponseParse(readBuffer utils.ReadBuffer, commandId CommandId, resp
 	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	_ = length
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsReadResponse")
 	}
 	// Byte Array field (data)
 	numberOfBytesdata := int(length)
 	data, _readArrayErr := readBuffer.ReadByteArray("data", numberOfBytesdata)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field of AdsReadResponse")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsReadResponse"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go
index f328c91d5..8ab686d6b 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadStateResponse.go
@@ -165,7 +165,7 @@ func AdsReadStateResponseParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsReadStateResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
@@ -175,14 +175,14 @@ func AdsReadStateResponseParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	// Simple Field (adsState)
 	_adsState, _adsStateErr := readBuffer.ReadUint16("adsState", 16)
 	if _adsStateErr != nil {
-		return nil, errors.Wrap(_adsStateErr, "Error parsing 'adsState' field")
+		return nil, errors.Wrap(_adsStateErr, "Error parsing 'adsState' field of AdsReadStateResponse")
 	}
 	adsState := _adsState
 
 	// Simple Field (deviceState)
 	_deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
 	if _deviceStateErr != nil {
-		return nil, errors.Wrap(_deviceStateErr, "Error parsing 'deviceState' field")
+		return nil, errors.Wrap(_deviceStateErr, "Error parsing 'deviceState' field of AdsReadStateResponse")
 	}
 	deviceState := _deviceState
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go b/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go
index 9458276cf..2bf1ed152 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadWriteRequest.go
@@ -194,21 +194,21 @@ func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	// Simple Field (indexGroup)
 	_indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
-		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
+		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field of AdsReadWriteRequest")
 	}
 	indexGroup := _indexGroup
 
 	// Simple Field (indexOffset)
 	_indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
-		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
+		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field of AdsReadWriteRequest")
 	}
 	indexOffset := _indexOffset
 
 	// Simple Field (readLength)
 	_readLength, _readLengthErr := readBuffer.ReadUint32("readLength", 32)
 	if _readLengthErr != nil {
-		return nil, errors.Wrap(_readLengthErr, "Error parsing 'readLength' field")
+		return nil, errors.Wrap(_readLengthErr, "Error parsing 'readLength' field of AdsReadWriteRequest")
 	}
 	readLength := _readLength
 
@@ -216,7 +216,7 @@ func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	writeLength, _writeLengthErr := readBuffer.ReadUint32("writeLength", 32)
 	_ = writeLength
 	if _writeLengthErr != nil {
-		return nil, errors.Wrap(_writeLengthErr, "Error parsing 'writeLength' field")
+		return nil, errors.Wrap(_writeLengthErr, "Error parsing 'writeLength' field of AdsReadWriteRequest")
 	}
 
 	// Array field (items)
@@ -233,7 +233,7 @@ func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer, commandId CommandId,
 		for curItem := uint16(0); curItem < uint16(utils.InlineIf(bool(bool(bool(bool(bool((indexGroup) == (61568)))) || bool(bool(bool((indexGroup) == (61569))))) || bool(bool(bool((indexGroup) == (61570))))), func() interface{} { return uint16(indexOffset) }, func() interface{} { return uint16(uint16(0)) }).(uint16)); curItem++ {
 			_item, _err := AdsMultiRequestItemParse(readBuffer, indexGroup)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'items' field")
+				return nil, errors.Wrap(_err, "Error parsing 'items' field of AdsReadWriteRequest")
 			}
 			items[curItem] = _item.(AdsMultiRequestItem)
 		}
@@ -245,7 +245,7 @@ func AdsReadWriteRequestParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	numberOfBytesdata := int(uint16(writeLength) - uint16(uint16(uint16(uint16(len(items)))*uint16(uint16(12)))))
 	data, _readArrayErr := readBuffer.ReadByteArray("data", numberOfBytesdata)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field of AdsReadWriteRequest")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsReadWriteRequest"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go b/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go
index b7f709f34..d0cbe38e6 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsReadWriteResponse.go
@@ -159,7 +159,7 @@ func AdsReadWriteResponseParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsReadWriteResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
@@ -170,13 +170,13 @@ func AdsReadWriteResponseParse(readBuffer utils.ReadBuffer, commandId CommandId,
 	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	_ = length
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsReadWriteResponse")
 	}
 	// Byte Array field (data)
 	numberOfBytesdata := int(length)
 	data, _readArrayErr := readBuffer.ReadByteArray("data", numberOfBytesdata)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field of AdsReadWriteResponse")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsReadWriteResponse"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go b/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
index 3427bd9db..a107ae00d 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsStampHeader.go
@@ -134,14 +134,14 @@ func AdsStampHeaderParse(readBuffer utils.ReadBuffer) (AdsStampHeader, error) {
 	// Simple Field (timestamp)
 	_timestamp, _timestampErr := readBuffer.ReadUint64("timestamp", 64)
 	if _timestampErr != nil {
-		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field")
+		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field of AdsStampHeader")
 	}
 	timestamp := _timestamp
 
 	// Simple Field (samples)
 	_samples, _samplesErr := readBuffer.ReadUint32("samples", 32)
 	if _samplesErr != nil {
-		return nil, errors.Wrap(_samplesErr, "Error parsing 'samples' field")
+		return nil, errors.Wrap(_samplesErr, "Error parsing 'samples' field of AdsStampHeader")
 	}
 	samples := _samples
 
@@ -159,7 +159,7 @@ func AdsStampHeaderParse(readBuffer utils.ReadBuffer) (AdsStampHeader, error) {
 		for curItem := uint16(0); curItem < uint16(samples); curItem++ {
 			_item, _err := AdsNotificationSampleParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'adsNotificationSamples' field")
+				return nil, errors.Wrap(_err, "Error parsing 'adsNotificationSamples' field of AdsStampHeader")
 			}
 			adsNotificationSamples[curItem] = _item.(AdsNotificationSample)
 		}
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go b/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go
index 7c55b0717..e18fdd3f7 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteControlRequest.go
@@ -167,14 +167,14 @@ func AdsWriteControlRequestParse(readBuffer utils.ReadBuffer, commandId CommandI
 	// Simple Field (adsState)
 	_adsState, _adsStateErr := readBuffer.ReadUint16("adsState", 16)
 	if _adsStateErr != nil {
-		return nil, errors.Wrap(_adsStateErr, "Error parsing 'adsState' field")
+		return nil, errors.Wrap(_adsStateErr, "Error parsing 'adsState' field of AdsWriteControlRequest")
 	}
 	adsState := _adsState
 
 	// Simple Field (deviceState)
 	_deviceState, _deviceStateErr := readBuffer.ReadUint16("deviceState", 16)
 	if _deviceStateErr != nil {
-		return nil, errors.Wrap(_deviceStateErr, "Error parsing 'deviceState' field")
+		return nil, errors.Wrap(_deviceStateErr, "Error parsing 'deviceState' field of AdsWriteControlRequest")
 	}
 	deviceState := _deviceState
 
@@ -182,13 +182,13 @@ func AdsWriteControlRequestParse(readBuffer utils.ReadBuffer, commandId CommandI
 	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	_ = length
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsWriteControlRequest")
 	}
 	// Byte Array field (data)
 	numberOfBytesdata := int(length)
 	data, _readArrayErr := readBuffer.ReadByteArray("data", numberOfBytesdata)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field of AdsWriteControlRequest")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsWriteControlRequest"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go b/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go
index df8da7437..6f0b8a4f7 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteControlResponse.go
@@ -143,7 +143,7 @@ func AdsWriteControlResponseParse(readBuffer utils.ReadBuffer, commandId Command
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsWriteControlResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go b/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go
index 23cf217f6..9a4a48b86 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteRequest.go
@@ -167,14 +167,14 @@ func AdsWriteRequestParse(readBuffer utils.ReadBuffer, commandId CommandId, resp
 	// Simple Field (indexGroup)
 	_indexGroup, _indexGroupErr := readBuffer.ReadUint32("indexGroup", 32)
 	if _indexGroupErr != nil {
-		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field")
+		return nil, errors.Wrap(_indexGroupErr, "Error parsing 'indexGroup' field of AdsWriteRequest")
 	}
 	indexGroup := _indexGroup
 
 	// Simple Field (indexOffset)
 	_indexOffset, _indexOffsetErr := readBuffer.ReadUint32("indexOffset", 32)
 	if _indexOffsetErr != nil {
-		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field")
+		return nil, errors.Wrap(_indexOffsetErr, "Error parsing 'indexOffset' field of AdsWriteRequest")
 	}
 	indexOffset := _indexOffset
 
@@ -182,13 +182,13 @@ func AdsWriteRequestParse(readBuffer utils.ReadBuffer, commandId CommandId, resp
 	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	_ = length
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AdsWriteRequest")
 	}
 	// Byte Array field (data)
 	numberOfBytesdata := int(length)
 	data, _readArrayErr := readBuffer.ReadByteArray("data", numberOfBytesdata)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'data' field of AdsWriteRequest")
 	}
 
 	if closeErr := readBuffer.CloseContext("AdsWriteRequest"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go b/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go
index 3644101b4..42bb40e1a 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsWriteResponse.go
@@ -143,7 +143,7 @@ func AdsWriteResponseParse(readBuffer utils.ReadBuffer, commandId CommandId, res
 	}
 	_result, _resultErr := ReturnCodeParse(readBuffer)
 	if _resultErr != nil {
-		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field")
+		return nil, errors.Wrap(_resultErr, "Error parsing 'result' field of AdsWriteResponse")
 	}
 	result := _result
 	if closeErr := readBuffer.CloseContext("result"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AmsNetId.go b/plc4go/protocols/ads/readwrite/model/AmsNetId.go
index 8a9e27163..8a129ab59 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsNetId.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsNetId.go
@@ -159,42 +159,42 @@ func AmsNetIdParse(readBuffer utils.ReadBuffer) (AmsNetId, error) {
 	// Simple Field (octet1)
 	_octet1, _octet1Err := readBuffer.ReadUint8("octet1", 8)
 	if _octet1Err != nil {
-		return nil, errors.Wrap(_octet1Err, "Error parsing 'octet1' field")
+		return nil, errors.Wrap(_octet1Err, "Error parsing 'octet1' field of AmsNetId")
 	}
 	octet1 := _octet1
 
 	// Simple Field (octet2)
 	_octet2, _octet2Err := readBuffer.ReadUint8("octet2", 8)
 	if _octet2Err != nil {
-		return nil, errors.Wrap(_octet2Err, "Error parsing 'octet2' field")
+		return nil, errors.Wrap(_octet2Err, "Error parsing 'octet2' field of AmsNetId")
 	}
 	octet2 := _octet2
 
 	// Simple Field (octet3)
 	_octet3, _octet3Err := readBuffer.ReadUint8("octet3", 8)
 	if _octet3Err != nil {
-		return nil, errors.Wrap(_octet3Err, "Error parsing 'octet3' field")
+		return nil, errors.Wrap(_octet3Err, "Error parsing 'octet3' field of AmsNetId")
 	}
 	octet3 := _octet3
 
 	// Simple Field (octet4)
 	_octet4, _octet4Err := readBuffer.ReadUint8("octet4", 8)
 	if _octet4Err != nil {
-		return nil, errors.Wrap(_octet4Err, "Error parsing 'octet4' field")
+		return nil, errors.Wrap(_octet4Err, "Error parsing 'octet4' field of AmsNetId")
 	}
 	octet4 := _octet4
 
 	// Simple Field (octet5)
 	_octet5, _octet5Err := readBuffer.ReadUint8("octet5", 8)
 	if _octet5Err != nil {
-		return nil, errors.Wrap(_octet5Err, "Error parsing 'octet5' field")
+		return nil, errors.Wrap(_octet5Err, "Error parsing 'octet5' field of AmsNetId")
 	}
 	octet5 := _octet5
 
 	// Simple Field (octet6)
 	_octet6, _octet6Err := readBuffer.ReadUint8("octet6", 8)
 	if _octet6Err != nil {
-		return nil, errors.Wrap(_octet6Err, "Error parsing 'octet6' field")
+		return nil, errors.Wrap(_octet6Err, "Error parsing 'octet6' field of AmsNetId")
 	}
 	octet6 := _octet6
 
diff --git a/plc4go/protocols/ads/readwrite/model/AmsPacket.go b/plc4go/protocols/ads/readwrite/model/AmsPacket.go
index f6a96478f..a3e586688 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsPacket.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsPacket.go
@@ -195,7 +195,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	}
 	_targetAmsNetId, _targetAmsNetIdErr := AmsNetIdParse(readBuffer)
 	if _targetAmsNetIdErr != nil {
-		return nil, errors.Wrap(_targetAmsNetIdErr, "Error parsing 'targetAmsNetId' field")
+		return nil, errors.Wrap(_targetAmsNetIdErr, "Error parsing 'targetAmsNetId' field of AmsPacket")
 	}
 	targetAmsNetId := _targetAmsNetId.(AmsNetId)
 	if closeErr := readBuffer.CloseContext("targetAmsNetId"); closeErr != nil {
@@ -205,7 +205,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	// Simple Field (targetAmsPort)
 	_targetAmsPort, _targetAmsPortErr := readBuffer.ReadUint16("targetAmsPort", 16)
 	if _targetAmsPortErr != nil {
-		return nil, errors.Wrap(_targetAmsPortErr, "Error parsing 'targetAmsPort' field")
+		return nil, errors.Wrap(_targetAmsPortErr, "Error parsing 'targetAmsPort' field of AmsPacket")
 	}
 	targetAmsPort := _targetAmsPort
 
@@ -215,7 +215,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	}
 	_sourceAmsNetId, _sourceAmsNetIdErr := AmsNetIdParse(readBuffer)
 	if _sourceAmsNetIdErr != nil {
-		return nil, errors.Wrap(_sourceAmsNetIdErr, "Error parsing 'sourceAmsNetId' field")
+		return nil, errors.Wrap(_sourceAmsNetIdErr, "Error parsing 'sourceAmsNetId' field of AmsPacket")
 	}
 	sourceAmsNetId := _sourceAmsNetId.(AmsNetId)
 	if closeErr := readBuffer.CloseContext("sourceAmsNetId"); closeErr != nil {
@@ -225,7 +225,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	// Simple Field (sourceAmsPort)
 	_sourceAmsPort, _sourceAmsPortErr := readBuffer.ReadUint16("sourceAmsPort", 16)
 	if _sourceAmsPortErr != nil {
-		return nil, errors.Wrap(_sourceAmsPortErr, "Error parsing 'sourceAmsPort' field")
+		return nil, errors.Wrap(_sourceAmsPortErr, "Error parsing 'sourceAmsPort' field of AmsPacket")
 	}
 	sourceAmsPort := _sourceAmsPort
 
@@ -235,7 +235,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	}
 	_commandId, _commandIdErr := CommandIdParse(readBuffer)
 	if _commandIdErr != nil {
-		return nil, errors.Wrap(_commandIdErr, "Error parsing 'commandId' field")
+		return nil, errors.Wrap(_commandIdErr, "Error parsing 'commandId' field of AmsPacket")
 	}
 	commandId := _commandId
 	if closeErr := readBuffer.CloseContext("commandId"); closeErr != nil {
@@ -248,7 +248,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	}
 	_state, _stateErr := StateParse(readBuffer)
 	if _stateErr != nil {
-		return nil, errors.Wrap(_stateErr, "Error parsing 'state' field")
+		return nil, errors.Wrap(_stateErr, "Error parsing 'state' field of AmsPacket")
 	}
 	state := _state.(State)
 	if closeErr := readBuffer.CloseContext("state"); closeErr != nil {
@@ -259,20 +259,20 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	_ = length
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AmsPacket")
 	}
 
 	// Simple Field (errorCode)
 	_errorCode, _errorCodeErr := readBuffer.ReadUint32("errorCode", 32)
 	if _errorCodeErr != nil {
-		return nil, errors.Wrap(_errorCodeErr, "Error parsing 'errorCode' field")
+		return nil, errors.Wrap(_errorCodeErr, "Error parsing 'errorCode' field of AmsPacket")
 	}
 	errorCode := _errorCode
 
 	// Simple Field (invokeId)
 	_invokeId, _invokeIdErr := readBuffer.ReadUint32("invokeId", 32)
 	if _invokeIdErr != nil {
-		return nil, errors.Wrap(_invokeIdErr, "Error parsing 'invokeId' field")
+		return nil, errors.Wrap(_invokeIdErr, "Error parsing 'invokeId' field of AmsPacket")
 	}
 	invokeId := _invokeId
 
@@ -282,7 +282,7 @@ func AmsPacketParse(readBuffer utils.ReadBuffer) (AmsPacket, error) {
 	}
 	_data, _dataErr := AdsDataParse(readBuffer, CommandId(commandId), bool(state.GetResponse()))
 	if _dataErr != nil {
-		return nil, errors.Wrap(_dataErr, "Error parsing 'data' field")
+		return nil, errors.Wrap(_dataErr, "Error parsing 'data' field of AmsPacket")
 	}
 	data := _data.(AdsData)
 	if closeErr := readBuffer.CloseContext("data"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
index fafdb7fb2..2a9272ccf 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialAcknowledgeFrame.go
@@ -159,42 +159,42 @@ func AmsSerialAcknowledgeFrameParse(readBuffer utils.ReadBuffer) (AmsSerialAckno
 	// Simple Field (magicCookie)
 	_magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
 	if _magicCookieErr != nil {
-		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field")
+		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field of AmsSerialAcknowledgeFrame")
 	}
 	magicCookie := _magicCookie
 
 	// Simple Field (transmitterAddress)
 	_transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
 	if _transmitterAddressErr != nil {
-		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field")
+		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field of AmsSerialAcknowledgeFrame")
 	}
 	transmitterAddress := _transmitterAddress
 
 	// Simple Field (receiverAddress)
 	_receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
 	if _receiverAddressErr != nil {
-		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field")
+		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field of AmsSerialAcknowledgeFrame")
 	}
 	receiverAddress := _receiverAddress
 
 	// Simple Field (fragmentNumber)
 	_fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
 	if _fragmentNumberErr != nil {
-		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field")
+		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field of AmsSerialAcknowledgeFrame")
 	}
 	fragmentNumber := _fragmentNumber
 
 	// Simple Field (length)
 	_length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AmsSerialAcknowledgeFrame")
 	}
 	length := _length
 
 	// Simple Field (crc)
 	_crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 	if _crcErr != nil {
-		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field")
+		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field of AmsSerialAcknowledgeFrame")
 	}
 	crc := _crc
 
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
index d8978ae2f..eab04b273 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go
@@ -169,35 +169,35 @@ func AmsSerialFrameParse(readBuffer utils.ReadBuffer) (AmsSerialFrame, error) {
 	// Simple Field (magicCookie)
 	_magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
 	if _magicCookieErr != nil {
-		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field")
+		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field of AmsSerialFrame")
 	}
 	magicCookie := _magicCookie
 
 	// Simple Field (transmitterAddress)
 	_transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
 	if _transmitterAddressErr != nil {
-		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field")
+		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field of AmsSerialFrame")
 	}
 	transmitterAddress := _transmitterAddress
 
 	// Simple Field (receiverAddress)
 	_receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
 	if _receiverAddressErr != nil {
-		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field")
+		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field of AmsSerialFrame")
 	}
 	receiverAddress := _receiverAddress
 
 	// Simple Field (fragmentNumber)
 	_fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
 	if _fragmentNumberErr != nil {
-		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field")
+		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field of AmsSerialFrame")
 	}
 	fragmentNumber := _fragmentNumber
 
 	// Simple Field (length)
 	_length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AmsSerialFrame")
 	}
 	length := _length
 
@@ -207,7 +207,7 @@ func AmsSerialFrameParse(readBuffer utils.ReadBuffer) (AmsSerialFrame, error) {
 	}
 	_userdata, _userdataErr := AmsPacketParse(readBuffer)
 	if _userdataErr != nil {
-		return nil, errors.Wrap(_userdataErr, "Error parsing 'userdata' field")
+		return nil, errors.Wrap(_userdataErr, "Error parsing 'userdata' field of AmsSerialFrame")
 	}
 	userdata := _userdata.(AmsPacket)
 	if closeErr := readBuffer.CloseContext("userdata"); closeErr != nil {
@@ -217,7 +217,7 @@ func AmsSerialFrameParse(readBuffer utils.ReadBuffer) (AmsSerialFrame, error) {
 	// Simple Field (crc)
 	_crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 	if _crcErr != nil {
-		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field")
+		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field of AmsSerialFrame")
 	}
 	crc := _crc
 
diff --git a/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go b/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
index 05b8f4cbf..d4851c99c 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsSerialResetFrame.go
@@ -159,42 +159,42 @@ func AmsSerialResetFrameParse(readBuffer utils.ReadBuffer) (AmsSerialResetFrame,
 	// Simple Field (magicCookie)
 	_magicCookie, _magicCookieErr := readBuffer.ReadUint16("magicCookie", 16)
 	if _magicCookieErr != nil {
-		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field")
+		return nil, errors.Wrap(_magicCookieErr, "Error parsing 'magicCookie' field of AmsSerialResetFrame")
 	}
 	magicCookie := _magicCookie
 
 	// Simple Field (transmitterAddress)
 	_transmitterAddress, _transmitterAddressErr := readBuffer.ReadInt8("transmitterAddress", 8)
 	if _transmitterAddressErr != nil {
-		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field")
+		return nil, errors.Wrap(_transmitterAddressErr, "Error parsing 'transmitterAddress' field of AmsSerialResetFrame")
 	}
 	transmitterAddress := _transmitterAddress
 
 	// Simple Field (receiverAddress)
 	_receiverAddress, _receiverAddressErr := readBuffer.ReadInt8("receiverAddress", 8)
 	if _receiverAddressErr != nil {
-		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field")
+		return nil, errors.Wrap(_receiverAddressErr, "Error parsing 'receiverAddress' field of AmsSerialResetFrame")
 	}
 	receiverAddress := _receiverAddress
 
 	// Simple Field (fragmentNumber)
 	_fragmentNumber, _fragmentNumberErr := readBuffer.ReadInt8("fragmentNumber", 8)
 	if _fragmentNumberErr != nil {
-		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field")
+		return nil, errors.Wrap(_fragmentNumberErr, "Error parsing 'fragmentNumber' field of AmsSerialResetFrame")
 	}
 	fragmentNumber := _fragmentNumber
 
 	// Simple Field (length)
 	_length, _lengthErr := readBuffer.ReadInt8("length", 8)
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AmsSerialResetFrame")
 	}
 	length := _length
 
 	// Simple Field (crc)
 	_crc, _crcErr := readBuffer.ReadUint16("crc", 16)
 	if _crcErr != nil {
-		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field")
+		return nil, errors.Wrap(_crcErr, "Error parsing 'crc' field of AmsSerialResetFrame")
 	}
 	crc := _crc
 
diff --git a/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go b/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
index 711e34231..926984cbf 100644
--- a/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
+++ b/plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go
@@ -117,7 +117,7 @@ func AmsTCPPacketParse(readBuffer utils.ReadBuffer) (AmsTCPPacket, error) {
 	{
 		reserved, _err := readBuffer.ReadUint16("reserved", 16)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of AmsTCPPacket")
 		}
 		if reserved != uint16(0x0000) {
 			log.Info().Fields(map[string]interface{}{
@@ -131,7 +131,7 @@ func AmsTCPPacketParse(readBuffer utils.ReadBuffer) (AmsTCPPacket, error) {
 	length, _lengthErr := readBuffer.ReadUint32("length", 32)
 	_ = length
 	if _lengthErr != nil {
-		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field")
+		return nil, errors.Wrap(_lengthErr, "Error parsing 'length' field of AmsTCPPacket")
 	}
 
 	// Simple Field (userdata)
@@ -140,7 +140,7 @@ func AmsTCPPacketParse(readBuffer utils.ReadBuffer) (AmsTCPPacket, error) {
 	}
 	_userdata, _userdataErr := AmsPacketParse(readBuffer)
 	if _userdataErr != nil {
-		return nil, errors.Wrap(_userdataErr, "Error parsing 'userdata' field")
+		return nil, errors.Wrap(_userdataErr, "Error parsing 'userdata' field of AmsTCPPacket")
 	}
 	userdata := _userdata.(AmsPacket)
 	if closeErr := readBuffer.CloseContext("userdata"); closeErr != nil {
diff --git a/plc4go/protocols/ads/readwrite/model/State.go b/plc4go/protocols/ads/readwrite/model/State.go
index 8dd4dd8ce..4c75ef1b1 100644
--- a/plc4go/protocols/ads/readwrite/model/State.go
+++ b/plc4go/protocols/ads/readwrite/model/State.go
@@ -193,63 +193,63 @@ func StateParse(readBuffer utils.ReadBuffer) (State, error) {
 	// Simple Field (initCommand)
 	_initCommand, _initCommandErr := readBuffer.ReadBit("initCommand")
 	if _initCommandErr != nil {
-		return nil, errors.Wrap(_initCommandErr, "Error parsing 'initCommand' field")
+		return nil, errors.Wrap(_initCommandErr, "Error parsing 'initCommand' field of State")
 	}
 	initCommand := _initCommand
 
 	// Simple Field (updCommand)
 	_updCommand, _updCommandErr := readBuffer.ReadBit("updCommand")
 	if _updCommandErr != nil {
-		return nil, errors.Wrap(_updCommandErr, "Error parsing 'updCommand' field")
+		return nil, errors.Wrap(_updCommandErr, "Error parsing 'updCommand' field of State")
 	}
 	updCommand := _updCommand
 
 	// Simple Field (timestampAdded)
 	_timestampAdded, _timestampAddedErr := readBuffer.ReadBit("timestampAdded")
 	if _timestampAddedErr != nil {
-		return nil, errors.Wrap(_timestampAddedErr, "Error parsing 'timestampAdded' field")
+		return nil, errors.Wrap(_timestampAddedErr, "Error parsing 'timestampAdded' field of State")
 	}
 	timestampAdded := _timestampAdded
 
 	// Simple Field (highPriorityCommand)
 	_highPriorityCommand, _highPriorityCommandErr := readBuffer.ReadBit("highPriorityCommand")
 	if _highPriorityCommandErr != nil {
-		return nil, errors.Wrap(_highPriorityCommandErr, "Error parsing 'highPriorityCommand' field")
+		return nil, errors.Wrap(_highPriorityCommandErr, "Error parsing 'highPriorityCommand' field of State")
 	}
 	highPriorityCommand := _highPriorityCommand
 
 	// Simple Field (systemCommand)
 	_systemCommand, _systemCommandErr := readBuffer.ReadBit("systemCommand")
 	if _systemCommandErr != nil {
-		return nil, errors.Wrap(_systemCommandErr, "Error parsing 'systemCommand' field")
+		return nil, errors.Wrap(_systemCommandErr, "Error parsing 'systemCommand' field of State")
 	}
 	systemCommand := _systemCommand
 
 	// Simple Field (adsCommand)
 	_adsCommand, _adsCommandErr := readBuffer.ReadBit("adsCommand")
 	if _adsCommandErr != nil {
-		return nil, errors.Wrap(_adsCommandErr, "Error parsing 'adsCommand' field")
+		return nil, errors.Wrap(_adsCommandErr, "Error parsing 'adsCommand' field of State")
 	}
 	adsCommand := _adsCommand
 
 	// Simple Field (noReturn)
 	_noReturn, _noReturnErr := readBuffer.ReadBit("noReturn")
 	if _noReturnErr != nil {
-		return nil, errors.Wrap(_noReturnErr, "Error parsing 'noReturn' field")
+		return nil, errors.Wrap(_noReturnErr, "Error parsing 'noReturn' field of State")
 	}
 	noReturn := _noReturn
 
 	// Simple Field (response)
 	_response, _responseErr := readBuffer.ReadBit("response")
 	if _responseErr != nil {
-		return nil, errors.Wrap(_responseErr, "Error parsing 'response' field")
+		return nil, errors.Wrap(_responseErr, "Error parsing 'response' field of State")
 	}
 	response := _response
 
 	// Simple Field (broadcast)
 	_broadcast, _broadcastErr := readBuffer.ReadBit("broadcast")
 	if _broadcastErr != nil {
-		return nil, errors.Wrap(_broadcastErr, "Error parsing 'broadcast' field")
+		return nil, errors.Wrap(_broadcastErr, "Error parsing 'broadcast' field of State")
 	}
 	broadcast := _broadcast
 
@@ -257,7 +257,7 @@ func StateParse(readBuffer utils.ReadBuffer) (State, error) {
 	{
 		reserved, _err := readBuffer.ReadInt8("reserved", 7)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of State")
 		}
 		if reserved != int8(0x0) {
 			log.Info().Fields(map[string]interface{}{
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDU.go b/plc4go/protocols/bacnetip/readwrite/model/APDU.go
index 0f8cb201d..1b845c0b8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDU.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDU.go
@@ -121,7 +121,7 @@ func APDUParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDU, error) {
 		return nil, errors.Wrap(closeErr, "Error closing for apduType")
 	}
 	if _apduTypeErr != nil {
-		return nil, errors.Wrap(_apduTypeErr, "Error parsing 'apduType' field")
+		return nil, errors.Wrap(_apduTypeErr, "Error parsing 'apduType' field of APDU")
 	}
 
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
@@ -156,7 +156,7 @@ func APDUParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDU, error) {
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [apduType=%v]", apduType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of APDU.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of APDU")
 	}
 	_child = _childTemp.(APDUChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go b/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go
index 0c6414ca4..d8b8037e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUAbort.go
@@ -163,7 +163,7 @@ func APDUAbortParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUAbort,
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 3)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUAbort")
 		}
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
@@ -176,14 +176,14 @@ func APDUAbortParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUAbort,
 	// Simple Field (server)
 	_server, _serverErr := readBuffer.ReadBit("server")
 	if _serverErr != nil {
-		return nil, errors.Wrap(_serverErr, "Error parsing 'server' field")
+		return nil, errors.Wrap(_serverErr, "Error parsing 'server' field of APDUAbort")
 	}
 	server := _server
 
 	// Simple Field (originalInvokeId)
 	_originalInvokeId, _originalInvokeIdErr := readBuffer.ReadUint8("originalInvokeId", 8)
 	if _originalInvokeIdErr != nil {
-		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field")
+		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field of APDUAbort")
 	}
 	originalInvokeId := _originalInvokeId
 
@@ -193,7 +193,7 @@ func APDUAbortParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUAbort,
 	}
 	_abortReason, _abortReasonErr := BACnetAbortReasonTaggedParse(readBuffer, uint32(uint32(1)))
 	if _abortReasonErr != nil {
-		return nil, errors.Wrap(_abortReasonErr, "Error parsing 'abortReason' field")
+		return nil, errors.Wrap(_abortReasonErr, "Error parsing 'abortReason' field of APDUAbort")
 	}
 	abortReason := _abortReason.(BACnetAbortReasonTagged)
 	if closeErr := readBuffer.CloseContext("abortReason"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go b/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go
index 41dfd71e6..aafb09a1f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUComplexAck.go
@@ -269,14 +269,14 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	// Simple Field (segmentedMessage)
 	_segmentedMessage, _segmentedMessageErr := readBuffer.ReadBit("segmentedMessage")
 	if _segmentedMessageErr != nil {
-		return nil, errors.Wrap(_segmentedMessageErr, "Error parsing 'segmentedMessage' field")
+		return nil, errors.Wrap(_segmentedMessageErr, "Error parsing 'segmentedMessage' field of APDUComplexAck")
 	}
 	segmentedMessage := _segmentedMessage
 
 	// Simple Field (moreFollows)
 	_moreFollows, _moreFollowsErr := readBuffer.ReadBit("moreFollows")
 	if _moreFollowsErr != nil {
-		return nil, errors.Wrap(_moreFollowsErr, "Error parsing 'moreFollows' field")
+		return nil, errors.Wrap(_moreFollowsErr, "Error parsing 'moreFollows' field of APDUComplexAck")
 	}
 	moreFollows := _moreFollows
 
@@ -284,7 +284,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 2)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUComplexAck")
 		}
 		if reserved != uint8(0) {
 			log.Info().Fields(map[string]interface{}{
@@ -297,7 +297,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	// Simple Field (originalInvokeId)
 	_originalInvokeId, _originalInvokeIdErr := readBuffer.ReadUint8("originalInvokeId", 8)
 	if _originalInvokeIdErr != nil {
-		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field")
+		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field of APDUComplexAck")
 	}
 	originalInvokeId := _originalInvokeId
 
@@ -306,7 +306,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	if segmentedMessage {
 		_val, _err := readBuffer.ReadUint8("sequenceNumber", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'sequenceNumber' field")
+			return nil, errors.Wrap(_err, "Error parsing 'sequenceNumber' field of APDUComplexAck")
 		}
 		sequenceNumber = &_val
 	}
@@ -316,7 +316,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	if segmentedMessage {
 		_val, _err := readBuffer.ReadUint8("proposedWindowSize", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'proposedWindowSize' field")
+			return nil, errors.Wrap(_err, "Error parsing 'proposedWindowSize' field of APDUComplexAck")
 		}
 		proposedWindowSize = &_val
 	}
@@ -339,7 +339,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'serviceAck' field")
+			return nil, errors.Wrap(_err, "Error parsing 'serviceAck' field of APDUComplexAck")
 		default:
 			serviceAck = _val.(BACnetServiceAck)
 			if closeErr := readBuffer.CloseContext("serviceAck"); closeErr != nil {
@@ -358,7 +358,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	if bool(segmentedMessage) && bool(bool((*sequenceNumber) != (0))) {
 		_val, _err := readBuffer.ReadUint8("segmentServiceChoice", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'segmentServiceChoice' field")
+			return nil, errors.Wrap(_err, "Error parsing 'segmentServiceChoice' field of APDUComplexAck")
 		}
 		segmentServiceChoice = &_val
 	}
@@ -373,7 +373,7 @@ func APDUComplexAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUCo
 	}, func() interface{} { return uint16(uint16(0)) }).(uint16))
 	segment, _readArrayErr := readBuffer.ReadByteArray("segment", numberOfBytessegment)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'segment' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'segment' field of APDUComplexAck")
 	}
 
 	if closeErr := readBuffer.CloseContext("APDUComplexAck"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go b/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go
index 53bbe2cba..20e2e5af5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUConfirmedRequest.go
@@ -302,21 +302,21 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	// Simple Field (segmentedMessage)
 	_segmentedMessage, _segmentedMessageErr := readBuffer.ReadBit("segmentedMessage")
 	if _segmentedMessageErr != nil {
-		return nil, errors.Wrap(_segmentedMessageErr, "Error parsing 'segmentedMessage' field")
+		return nil, errors.Wrap(_segmentedMessageErr, "Error parsing 'segmentedMessage' field of APDUConfirmedRequest")
 	}
 	segmentedMessage := _segmentedMessage
 
 	// Simple Field (moreFollows)
 	_moreFollows, _moreFollowsErr := readBuffer.ReadBit("moreFollows")
 	if _moreFollowsErr != nil {
-		return nil, errors.Wrap(_moreFollowsErr, "Error parsing 'moreFollows' field")
+		return nil, errors.Wrap(_moreFollowsErr, "Error parsing 'moreFollows' field of APDUConfirmedRequest")
 	}
 	moreFollows := _moreFollows
 
 	// Simple Field (segmentedResponseAccepted)
 	_segmentedResponseAccepted, _segmentedResponseAcceptedErr := readBuffer.ReadBit("segmentedResponseAccepted")
 	if _segmentedResponseAcceptedErr != nil {
-		return nil, errors.Wrap(_segmentedResponseAcceptedErr, "Error parsing 'segmentedResponseAccepted' field")
+		return nil, errors.Wrap(_segmentedResponseAcceptedErr, "Error parsing 'segmentedResponseAccepted' field of APDUConfirmedRequest")
 	}
 	segmentedResponseAccepted := _segmentedResponseAccepted
 
@@ -324,7 +324,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 2)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUConfirmedRequest")
 		}
 		if reserved != uint8(0) {
 			log.Info().Fields(map[string]interface{}{
@@ -340,7 +340,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	}
 	_maxSegmentsAccepted, _maxSegmentsAcceptedErr := MaxSegmentsAcceptedParse(readBuffer)
 	if _maxSegmentsAcceptedErr != nil {
-		return nil, errors.Wrap(_maxSegmentsAcceptedErr, "Error parsing 'maxSegmentsAccepted' field")
+		return nil, errors.Wrap(_maxSegmentsAcceptedErr, "Error parsing 'maxSegmentsAccepted' field of APDUConfirmedRequest")
 	}
 	maxSegmentsAccepted := _maxSegmentsAccepted
 	if closeErr := readBuffer.CloseContext("maxSegmentsAccepted"); closeErr != nil {
@@ -353,7 +353,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	}
 	_maxApduLengthAccepted, _maxApduLengthAcceptedErr := MaxApduLengthAcceptedParse(readBuffer)
 	if _maxApduLengthAcceptedErr != nil {
-		return nil, errors.Wrap(_maxApduLengthAcceptedErr, "Error parsing 'maxApduLengthAccepted' field")
+		return nil, errors.Wrap(_maxApduLengthAcceptedErr, "Error parsing 'maxApduLengthAccepted' field of APDUConfirmedRequest")
 	}
 	maxApduLengthAccepted := _maxApduLengthAccepted
 	if closeErr := readBuffer.CloseContext("maxApduLengthAccepted"); closeErr != nil {
@@ -363,7 +363,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	// Simple Field (invokeId)
 	_invokeId, _invokeIdErr := readBuffer.ReadUint8("invokeId", 8)
 	if _invokeIdErr != nil {
-		return nil, errors.Wrap(_invokeIdErr, "Error parsing 'invokeId' field")
+		return nil, errors.Wrap(_invokeIdErr, "Error parsing 'invokeId' field of APDUConfirmedRequest")
 	}
 	invokeId := _invokeId
 
@@ -372,7 +372,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	if segmentedMessage {
 		_val, _err := readBuffer.ReadUint8("sequenceNumber", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'sequenceNumber' field")
+			return nil, errors.Wrap(_err, "Error parsing 'sequenceNumber' field of APDUConfirmedRequest")
 		}
 		sequenceNumber = &_val
 	}
@@ -382,7 +382,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	if segmentedMessage {
 		_val, _err := readBuffer.ReadUint8("proposedWindowSize", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'proposedWindowSize' field")
+			return nil, errors.Wrap(_err, "Error parsing 'proposedWindowSize' field of APDUConfirmedRequest")
 		}
 		proposedWindowSize = &_val
 	}
@@ -405,7 +405,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'serviceRequest' field")
+			return nil, errors.Wrap(_err, "Error parsing 'serviceRequest' field of APDUConfirmedRequest")
 		default:
 			serviceRequest = _val.(BACnetConfirmedServiceRequest)
 			if closeErr := readBuffer.CloseContext("serviceRequest"); closeErr != nil {
@@ -424,7 +424,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	if bool(segmentedMessage) && bool(bool((*sequenceNumber) != (0))) {
 		_val, _err := readBuffer.ReadUint8("segmentServiceChoice", 8)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'segmentServiceChoice' field")
+			return nil, errors.Wrap(_err, "Error parsing 'segmentServiceChoice' field of APDUConfirmedRequest")
 		}
 		segmentServiceChoice = &_val
 	}
@@ -439,7 +439,7 @@ func APDUConfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16) (
 	}, func() interface{} { return uint16(uint16(0)) }).(uint16))
 	segment, _readArrayErr := readBuffer.ReadByteArray("segment", numberOfBytessegment)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'segment' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'segment' field of APDUConfirmedRequest")
 	}
 
 	if closeErr := readBuffer.CloseContext("APDUConfirmedRequest"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUError.go b/plc4go/protocols/bacnetip/readwrite/model/APDUError.go
index 1cfbfee06..0a4d57093 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUError.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUError.go
@@ -163,7 +163,7 @@ func APDUErrorParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUError,
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 4)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUError")
 		}
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
@@ -176,7 +176,7 @@ func APDUErrorParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUError,
 	// Simple Field (originalInvokeId)
 	_originalInvokeId, _originalInvokeIdErr := readBuffer.ReadUint8("originalInvokeId", 8)
 	if _originalInvokeIdErr != nil {
-		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field")
+		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field of APDUError")
 	}
 	originalInvokeId := _originalInvokeId
 
@@ -186,7 +186,7 @@ func APDUErrorParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUError,
 	}
 	_errorChoice, _errorChoiceErr := BACnetConfirmedServiceChoiceParse(readBuffer)
 	if _errorChoiceErr != nil {
-		return nil, errors.Wrap(_errorChoiceErr, "Error parsing 'errorChoice' field")
+		return nil, errors.Wrap(_errorChoiceErr, "Error parsing 'errorChoice' field of APDUError")
 	}
 	errorChoice := _errorChoice
 	if closeErr := readBuffer.CloseContext("errorChoice"); closeErr != nil {
@@ -199,7 +199,7 @@ func APDUErrorParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUError,
 	}
 	_error, _errorErr := BACnetErrorParse(readBuffer, BACnetConfirmedServiceChoice(errorChoice))
 	if _errorErr != nil {
-		return nil, errors.Wrap(_errorErr, "Error parsing 'error' field")
+		return nil, errors.Wrap(_errorErr, "Error parsing 'error' field of APDUError")
 	}
 	error := _error.(BACnetError)
 	if closeErr := readBuffer.CloseContext("error"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go b/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go
index 220b5e93c..458bee3f3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUReject.go
@@ -152,7 +152,7 @@ func APDURejectParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUReject
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 4)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUReject")
 		}
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
@@ -165,7 +165,7 @@ func APDURejectParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUReject
 	// Simple Field (originalInvokeId)
 	_originalInvokeId, _originalInvokeIdErr := readBuffer.ReadUint8("originalInvokeId", 8)
 	if _originalInvokeIdErr != nil {
-		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field")
+		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field of APDUReject")
 	}
 	originalInvokeId := _originalInvokeId
 
@@ -175,7 +175,7 @@ func APDURejectParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUReject
 	}
 	_rejectReason, _rejectReasonErr := BACnetRejectReasonTaggedParse(readBuffer, uint32(uint32(1)))
 	if _rejectReasonErr != nil {
-		return nil, errors.Wrap(_rejectReasonErr, "Error parsing 'rejectReason' field")
+		return nil, errors.Wrap(_rejectReasonErr, "Error parsing 'rejectReason' field of APDUReject")
 	}
 	rejectReason := _rejectReason.(BACnetRejectReasonTagged)
 	if closeErr := readBuffer.CloseContext("rejectReason"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go b/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go
index d135e19b7..3f4112810 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUSegmentAck.go
@@ -185,7 +185,7 @@ func APDUSegmentAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUSe
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 2)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUSegmentAck")
 		}
 		if reserved != uint8(0x00) {
 			log.Info().Fields(map[string]interface{}{
@@ -198,35 +198,35 @@ func APDUSegmentAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUSe
 	// Simple Field (negativeAck)
 	_negativeAck, _negativeAckErr := readBuffer.ReadBit("negativeAck")
 	if _negativeAckErr != nil {
-		return nil, errors.Wrap(_negativeAckErr, "Error parsing 'negativeAck' field")
+		return nil, errors.Wrap(_negativeAckErr, "Error parsing 'negativeAck' field of APDUSegmentAck")
 	}
 	negativeAck := _negativeAck
 
 	// Simple Field (server)
 	_server, _serverErr := readBuffer.ReadBit("server")
 	if _serverErr != nil {
-		return nil, errors.Wrap(_serverErr, "Error parsing 'server' field")
+		return nil, errors.Wrap(_serverErr, "Error parsing 'server' field of APDUSegmentAck")
 	}
 	server := _server
 
 	// Simple Field (originalInvokeId)
 	_originalInvokeId, _originalInvokeIdErr := readBuffer.ReadUint8("originalInvokeId", 8)
 	if _originalInvokeIdErr != nil {
-		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field")
+		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field of APDUSegmentAck")
 	}
 	originalInvokeId := _originalInvokeId
 
 	// Simple Field (sequenceNumber)
 	_sequenceNumber, _sequenceNumberErr := readBuffer.ReadUint8("sequenceNumber", 8)
 	if _sequenceNumberErr != nil {
-		return nil, errors.Wrap(_sequenceNumberErr, "Error parsing 'sequenceNumber' field")
+		return nil, errors.Wrap(_sequenceNumberErr, "Error parsing 'sequenceNumber' field of APDUSegmentAck")
 	}
 	sequenceNumber := _sequenceNumber
 
 	// Simple Field (proposedWindowSize)
 	_proposedWindowSize, _proposedWindowSizeErr := readBuffer.ReadUint8("proposedWindowSize", 8)
 	if _proposedWindowSizeErr != nil {
-		return nil, errors.Wrap(_proposedWindowSizeErr, "Error parsing 'proposedWindowSize' field")
+		return nil, errors.Wrap(_proposedWindowSizeErr, "Error parsing 'proposedWindowSize' field of APDUSegmentAck")
 	}
 	proposedWindowSize := _proposedWindowSize
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go b/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go
index 67e6d0a83..5063e2d80 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUSimpleAck.go
@@ -152,7 +152,7 @@ func APDUSimpleAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUSim
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 4)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUSimpleAck")
 		}
 		if reserved != uint8(0) {
 			log.Info().Fields(map[string]interface{}{
@@ -165,14 +165,14 @@ func APDUSimpleAckParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUSim
 	// Simple Field (originalInvokeId)
 	_originalInvokeId, _originalInvokeIdErr := readBuffer.ReadUint8("originalInvokeId", 8)
 	if _originalInvokeIdErr != nil {
-		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field")
+		return nil, errors.Wrap(_originalInvokeIdErr, "Error parsing 'originalInvokeId' field of APDUSimpleAck")
 	}
 	originalInvokeId := _originalInvokeId
 
 	// Simple Field (serviceChoice)
 	_serviceChoice, _serviceChoiceErr := readBuffer.ReadUint8("serviceChoice", 8)
 	if _serviceChoiceErr != nil {
-		return nil, errors.Wrap(_serviceChoiceErr, "Error parsing 'serviceChoice' field")
+		return nil, errors.Wrap(_serviceChoiceErr, "Error parsing 'serviceChoice' field of APDUSimpleAck")
 	}
 	serviceChoice := _serviceChoice
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go b/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go
index d4156f7c1..6e804bf51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUUnconfirmedRequest.go
@@ -141,7 +141,7 @@ func APDUUnconfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16)
 	{
 		reserved, _err := readBuffer.ReadUint8("reserved", 4)
 		if _err != nil {
-			return nil, errors.Wrap(_err, "Error parsing 'reserved' field")
+			return nil, errors.Wrap(_err, "Error parsing 'reserved' field of APDUUnconfirmedRequest")
 		}
 		if reserved != uint8(0) {
 			log.Info().Fields(map[string]interface{}{
@@ -157,7 +157,7 @@ func APDUUnconfirmedRequestParse(readBuffer utils.ReadBuffer, apduLength uint16)
 	}
 	_serviceRequest, _serviceRequestErr := BACnetUnconfirmedServiceRequestParse(readBuffer, uint16(uint16(apduLength)-uint16(uint16(1))))
 	if _serviceRequestErr != nil {
-		return nil, errors.Wrap(_serviceRequestErr, "Error parsing 'serviceRequest' field")
+		return nil, errors.Wrap(_serviceRequestErr, "Error parsing 'serviceRequest' field of APDUUnconfirmedRequest")
 	}
 	serviceRequest := _serviceRequest.(BACnetUnconfirmedServiceRequest)
 	if closeErr := readBuffer.CloseContext("serviceRequest"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go b/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go
index feaf29f7c..bd231d843 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDUUnknown.go
@@ -149,14 +149,14 @@ func APDUUnknownParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDUUnkno
 	// Simple Field (unknownTypeRest)
 	_unknownTypeRest, _unknownTypeRestErr := readBuffer.ReadUint8("unknownTypeRest", 4)
 	if _unknownTypeRestErr != nil {
-		return nil, errors.Wrap(_unknownTypeRestErr, "Error parsing 'unknownTypeRest' field")
+		return nil, errors.Wrap(_unknownTypeRestErr, "Error parsing 'unknownTypeRest' field of APDUUnknown")
 	}
 	unknownTypeRest := _unknownTypeRest
 	// Byte Array field (unknownBytes)
 	numberOfBytesunknownBytes := int(utils.InlineIf(bool(bool((apduLength) > (0))), func() interface{} { return uint16(apduLength) }, func() interface{} { return uint16(uint16(0)) }).(uint16))
 	unknownBytes, _readArrayErr := readBuffer.ReadByteArray("unknownBytes", numberOfBytesunknownBytes)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'unknownBytes' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'unknownBytes' field of APDUUnknown")
 	}
 
 	if closeErr := readBuffer.CloseContext("APDUUnknown"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
index 3487ac078..7c301b5b9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAbortReasonTagged.go
@@ -139,7 +139,7 @@ func BACnetAbortReasonTaggedParse(readBuffer utils.ReadBuffer, actualLength uint
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, actualLength, BACnetAbortReason_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAbortReasonTagged")
 	}
 	value := _value.(BACnetAbortReason)
 
@@ -151,7 +151,7 @@ func BACnetAbortReasonTaggedParse(readBuffer utils.ReadBuffer, actualLength uint
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, actualLength, isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAbortReasonTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
index 34a995a04..51fa9e8a1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessAuthenticationFactorDisableTagged.go
@@ -153,7 +153,7 @@ func BACnetAccessAuthenticationFactorDisableTaggedParse(readBuffer utils.ReadBuf
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessAuthenticationFactorDisableTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAccessAuthenticationFactorDisableTaggedParse(readBuffer utils.ReadBuf
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAccessAuthenticationFactorDisable_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessAuthenticationFactorDisableTagged")
 	}
 	value := _value.(BACnetAccessAuthenticationFactorDisable)
 
@@ -185,7 +185,7 @@ func BACnetAccessAuthenticationFactorDisableTaggedParse(readBuffer utils.ReadBuf
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAccessAuthenticationFactorDisableTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
index ea108ee81..c0859f67c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableReasonTagged.go
@@ -153,7 +153,7 @@ func BACnetAccessCredentialDisableReasonTaggedParse(readBuffer utils.ReadBuffer,
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessCredentialDisableReasonTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAccessCredentialDisableReasonTaggedParse(readBuffer utils.ReadBuffer,
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAccessCredentialDisableReason_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessCredentialDisableReasonTagged")
 	}
 	value := _value.(BACnetAccessCredentialDisableReason)
 
@@ -185,7 +185,7 @@ func BACnetAccessCredentialDisableReasonTaggedParse(readBuffer utils.ReadBuffer,
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAccessCredentialDisableReasonTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
index 4846069d4..d45926530 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessCredentialDisableTagged.go
@@ -153,7 +153,7 @@ func BACnetAccessCredentialDisableTaggedParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessCredentialDisableTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAccessCredentialDisableTaggedParse(readBuffer utils.ReadBuffer, tagNu
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAccessCredentialDisable_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessCredentialDisableTagged")
 	}
 	value := _value.(BACnetAccessCredentialDisable)
 
@@ -185,7 +185,7 @@ func BACnetAccessCredentialDisableTaggedParse(readBuffer utils.ReadBuffer, tagNu
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAccessCredentialDisableTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
index 071922eee..f3f71f6ba 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessEventTagged.go
@@ -153,7 +153,7 @@ func BACnetAccessEventTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessEventTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAccessEventTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAccessEvent_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessEventTagged")
 	}
 	value := _value.(BACnetAccessEvent)
 
@@ -185,7 +185,7 @@ func BACnetAccessEventTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAccessEventTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
index 1091fc018..7a76a7d78 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessPassbackModeTagged.go
@@ -126,7 +126,7 @@ func BACnetAccessPassbackModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessPassbackModeTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetAccessPassbackModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAccessPassbackMode_PASSBACK_OFF)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessPassbackModeTagged")
 	}
 	value := _value.(BACnetAccessPassbackMode)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
index c469154d2..d05585c68 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRule.go
@@ -158,7 +158,7 @@ func BACnetAccessRuleParse(readBuffer utils.ReadBuffer) (BACnetAccessRule, error
 	}
 	_timeRangeSpecifier, _timeRangeSpecifierErr := BACnetAccessRuleTimeRangeSpecifierTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _timeRangeSpecifierErr != nil {
-		return nil, errors.Wrap(_timeRangeSpecifierErr, "Error parsing 'timeRangeSpecifier' field")
+		return nil, errors.Wrap(_timeRangeSpecifierErr, "Error parsing 'timeRangeSpecifier' field of BACnetAccessRule")
 	}
 	timeRangeSpecifier := _timeRangeSpecifier.(BACnetAccessRuleTimeRangeSpecifierTagged)
 	if closeErr := readBuffer.CloseContext("timeRangeSpecifier"); closeErr != nil {
@@ -178,7 +178,7 @@ func BACnetAccessRuleParse(readBuffer utils.ReadBuffer) (BACnetAccessRule, error
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'timeRange' field")
+			return nil, errors.Wrap(_err, "Error parsing 'timeRange' field of BACnetAccessRule")
 		default:
 			timeRange = _val.(BACnetDeviceObjectPropertyReferenceEnclosed)
 			if closeErr := readBuffer.CloseContext("timeRange"); closeErr != nil {
@@ -193,7 +193,7 @@ func BACnetAccessRuleParse(readBuffer utils.ReadBuffer) (BACnetAccessRule, error
 	}
 	_locationSpecifier, _locationSpecifierErr := BACnetAccessRuleLocationSpecifierTaggedParse(readBuffer, uint8(uint8(2)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _locationSpecifierErr != nil {
-		return nil, errors.Wrap(_locationSpecifierErr, "Error parsing 'locationSpecifier' field")
+		return nil, errors.Wrap(_locationSpecifierErr, "Error parsing 'locationSpecifier' field of BACnetAccessRule")
 	}
 	locationSpecifier := _locationSpecifier.(BACnetAccessRuleLocationSpecifierTagged)
 	if closeErr := readBuffer.CloseContext("locationSpecifier"); closeErr != nil {
@@ -213,7 +213,7 @@ func BACnetAccessRuleParse(readBuffer utils.ReadBuffer) (BACnetAccessRule, error
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'location' field")
+			return nil, errors.Wrap(_err, "Error parsing 'location' field of BACnetAccessRule")
 		default:
 			location = _val.(BACnetDeviceObjectReferenceEnclosed)
 			if closeErr := readBuffer.CloseContext("location"); closeErr != nil {
@@ -228,7 +228,7 @@ func BACnetAccessRuleParse(readBuffer utils.ReadBuffer) (BACnetAccessRule, error
 	}
 	_enable, _enableErr := BACnetContextTagParse(readBuffer, uint8(uint8(4)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _enableErr != nil {
-		return nil, errors.Wrap(_enableErr, "Error parsing 'enable' field")
+		return nil, errors.Wrap(_enableErr, "Error parsing 'enable' field of BACnetAccessRule")
 	}
 	enable := _enable.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("enable"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
index 2049d9ec2..9edb08bd4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleLocationSpecifierTagged.go
@@ -126,7 +126,7 @@ func BACnetAccessRuleLocationSpecifierTaggedParse(readBuffer utils.ReadBuffer, t
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessRuleLocationSpecifierTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetAccessRuleLocationSpecifierTaggedParse(readBuffer utils.ReadBuffer, t
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAccessRuleLocationSpecifier_SPECIFIED)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessRuleLocationSpecifierTagged")
 	}
 	value := _value.(BACnetAccessRuleLocationSpecifier)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
index 5b98d6984..d870da408 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessRuleTimeRangeSpecifierTagged.go
@@ -126,7 +126,7 @@ func BACnetAccessRuleTimeRangeSpecifierTaggedParse(readBuffer utils.ReadBuffer,
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessRuleTimeRangeSpecifierTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetAccessRuleTimeRangeSpecifierTaggedParse(readBuffer utils.ReadBuffer,
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAccessRuleTimeRangeSpecifier_SPECIFIED)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessRuleTimeRangeSpecifierTagged")
 	}
 	value := _value.(BACnetAccessRuleTimeRangeSpecifier)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
index eb84db780..384de695c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessThreatLevel.go
@@ -112,7 +112,7 @@ func BACnetAccessThreatLevelParse(readBuffer utils.ReadBuffer) (BACnetAccessThre
 	}
 	_threatLevel, _threatLevelErr := BACnetApplicationTagParse(readBuffer)
 	if _threatLevelErr != nil {
-		return nil, errors.Wrap(_threatLevelErr, "Error parsing 'threatLevel' field")
+		return nil, errors.Wrap(_threatLevelErr, "Error parsing 'threatLevel' field of BACnetAccessThreatLevel")
 	}
 	threatLevel := _threatLevel.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("threatLevel"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
index 49bb8dff6..86147f183 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessUserTypeTagged.go
@@ -153,7 +153,7 @@ func BACnetAccessUserTypeTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessUserTypeTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAccessUserTypeTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAccessUserType_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessUserTypeTagged")
 	}
 	value := _value.(BACnetAccessUserType)
 
@@ -185,7 +185,7 @@ func BACnetAccessUserTypeTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAccessUserTypeTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
index 70f9e6215..a81a93b21 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccessZoneOccupancyStateTagged.go
@@ -153,7 +153,7 @@ func BACnetAccessZoneOccupancyStateTaggedParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccessZoneOccupancyStateTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAccessZoneOccupancyStateTaggedParse(readBuffer utils.ReadBuffer, tagN
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAccessZoneOccupancyState_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccessZoneOccupancyStateTagged")
 	}
 	value := _value.(BACnetAccessZoneOccupancyState)
 
@@ -185,7 +185,7 @@ func BACnetAccessZoneOccupancyStateTaggedParse(readBuffer utils.ReadBuffer, tagN
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAccessZoneOccupancyStateTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
index 2cfe4a452..8f781ab88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecord.go
@@ -142,7 +142,7 @@ func BACnetAccumulatorRecordParse(readBuffer utils.ReadBuffer) (BACnetAccumulato
 	}
 	_timestamp, _timestampErr := BACnetDateTimeEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _timestampErr != nil {
-		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field")
+		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field of BACnetAccumulatorRecord")
 	}
 	timestamp := _timestamp.(BACnetDateTimeEnclosed)
 	if closeErr := readBuffer.CloseContext("timestamp"); closeErr != nil {
@@ -155,7 +155,7 @@ func BACnetAccumulatorRecordParse(readBuffer utils.ReadBuffer) (BACnetAccumulato
 	}
 	_presentValue, _presentValueErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_SIGNED_INTEGER))
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetAccumulatorRecord")
 	}
 	presentValue := _presentValue.(BACnetContextTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
@@ -168,7 +168,7 @@ func BACnetAccumulatorRecordParse(readBuffer utils.ReadBuffer) (BACnetAccumulato
 	}
 	_accumulatedValue, _accumulatedValueErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_SIGNED_INTEGER))
 	if _accumulatedValueErr != nil {
-		return nil, errors.Wrap(_accumulatedValueErr, "Error parsing 'accumulatedValue' field")
+		return nil, errors.Wrap(_accumulatedValueErr, "Error parsing 'accumulatedValue' field of BACnetAccumulatorRecord")
 	}
 	accumulatedValue := _accumulatedValue.(BACnetContextTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("accumulatedValue"); closeErr != nil {
@@ -181,7 +181,7 @@ func BACnetAccumulatorRecordParse(readBuffer utils.ReadBuffer) (BACnetAccumulato
 	}
 	_accumulatorStatus, _accumulatorStatusErr := BACnetAccumulatorRecordAccumulatorStatusTaggedParse(readBuffer, uint8(uint8(3)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _accumulatorStatusErr != nil {
-		return nil, errors.Wrap(_accumulatorStatusErr, "Error parsing 'accumulatorStatus' field")
+		return nil, errors.Wrap(_accumulatorStatusErr, "Error parsing 'accumulatorStatus' field of BACnetAccumulatorRecord")
 	}
 	accumulatorStatus := _accumulatorStatus.(BACnetAccumulatorRecordAccumulatorStatusTagged)
 	if closeErr := readBuffer.CloseContext("accumulatorStatus"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
index d1470ce04..63464314d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAccumulatorRecordAccumulatorStatusTagged.go
@@ -126,7 +126,7 @@ func BACnetAccumulatorRecordAccumulatorStatusTaggedParse(readBuffer utils.ReadBu
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAccumulatorRecordAccumulatorStatusTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetAccumulatorRecordAccumulatorStatusTaggedParse(readBuffer utils.ReadBu
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAccumulatorRecordAccumulatorStatus_NORMAL)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAccumulatorRecordAccumulatorStatusTagged")
 	}
 	value := _value.(BACnetAccumulatorRecordAccumulatorStatus)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
index 3b6bcd75c..dd5b59de9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionCommand.go
@@ -211,7 +211,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'deviceIdentifier' field")
+			return nil, errors.Wrap(_err, "Error parsing 'deviceIdentifier' field of BACnetActionCommand")
 		default:
 			deviceIdentifier = _val.(BACnetContextTagObjectIdentifier)
 			if closeErr := readBuffer.CloseContext("deviceIdentifier"); closeErr != nil {
@@ -226,7 +226,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetActionCommand")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -239,7 +239,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 	}
 	_propertyIdentifier, _propertyIdentifierErr := BACnetPropertyIdentifierTaggedParse(readBuffer, uint8(uint8(2)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _propertyIdentifierErr != nil {
-		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field")
+		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field of BACnetActionCommand")
 	}
 	propertyIdentifier := _propertyIdentifier.(BACnetPropertyIdentifierTagged)
 	if closeErr := readBuffer.CloseContext("propertyIdentifier"); closeErr != nil {
@@ -259,7 +259,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field")
+			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field of BACnetActionCommand")
 		default:
 			arrayIndex = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("arrayIndex"); closeErr != nil {
@@ -281,7 +281,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'propertyValue' field")
+			return nil, errors.Wrap(_err, "Error parsing 'propertyValue' field of BACnetActionCommand")
 		default:
 			propertyValue = _val.(BACnetConstructedData)
 			if closeErr := readBuffer.CloseContext("propertyValue"); closeErr != nil {
@@ -303,7 +303,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'priority' field")
+			return nil, errors.Wrap(_err, "Error parsing 'priority' field of BACnetActionCommand")
 		default:
 			priority = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("priority"); closeErr != nil {
@@ -325,7 +325,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'postDelay' field")
+			return nil, errors.Wrap(_err, "Error parsing 'postDelay' field of BACnetActionCommand")
 		default:
 			postDelay = _val.(BACnetContextTagBoolean)
 			if closeErr := readBuffer.CloseContext("postDelay"); closeErr != nil {
@@ -340,7 +340,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 	}
 	_quitOnFailure, _quitOnFailureErr := BACnetContextTagParse(readBuffer, uint8(uint8(7)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _quitOnFailureErr != nil {
-		return nil, errors.Wrap(_quitOnFailureErr, "Error parsing 'quitOnFailure' field")
+		return nil, errors.Wrap(_quitOnFailureErr, "Error parsing 'quitOnFailure' field of BACnetActionCommand")
 	}
 	quitOnFailure := _quitOnFailure.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("quitOnFailure"); closeErr != nil {
@@ -353,7 +353,7 @@ func BACnetActionCommandParse(readBuffer utils.ReadBuffer) (BACnetActionCommand,
 	}
 	_writeSuccessful, _writeSuccessfulErr := BACnetContextTagParse(readBuffer, uint8(uint8(8)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _writeSuccessfulErr != nil {
-		return nil, errors.Wrap(_writeSuccessfulErr, "Error parsing 'writeSuccessful' field")
+		return nil, errors.Wrap(_writeSuccessfulErr, "Error parsing 'writeSuccessful' field of BACnetActionCommand")
 	}
 	writeSuccessful := _writeSuccessful.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("writeSuccessful"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
index 67604c784..29e62863f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionList.go
@@ -136,7 +136,7 @@ func BACnetActionListParse(readBuffer utils.ReadBuffer) (BACnetActionList, error
 	}
 	_innerOpeningTag, _innerOpeningTagErr := BACnetOpeningTagParse(readBuffer, uint8(uint8(0)))
 	if _innerOpeningTagErr != nil {
-		return nil, errors.Wrap(_innerOpeningTagErr, "Error parsing 'innerOpeningTag' field")
+		return nil, errors.Wrap(_innerOpeningTagErr, "Error parsing 'innerOpeningTag' field of BACnetActionList")
 	}
 	innerOpeningTag := _innerOpeningTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("innerOpeningTag"); closeErr != nil {
@@ -153,7 +153,7 @@ func BACnetActionListParse(readBuffer utils.ReadBuffer) (BACnetActionList, error
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, 0)) {
 			_item, _err := BACnetActionCommandParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'action' field")
+				return nil, errors.Wrap(_err, "Error parsing 'action' field of BACnetActionList")
 			}
 			action = append(action, _item.(BACnetActionCommand))
 
@@ -169,7 +169,7 @@ func BACnetActionListParse(readBuffer utils.ReadBuffer) (BACnetActionList, error
 	}
 	_innerClosingTag, _innerClosingTagErr := BACnetClosingTagParse(readBuffer, uint8(uint8(0)))
 	if _innerClosingTagErr != nil {
-		return nil, errors.Wrap(_innerClosingTagErr, "Error parsing 'innerClosingTag' field")
+		return nil, errors.Wrap(_innerClosingTagErr, "Error parsing 'innerClosingTag' field of BACnetActionList")
 	}
 	innerClosingTag := _innerClosingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("innerClosingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
index 611629f30..fb54c4a01 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetActionTagged.go
@@ -126,7 +126,7 @@ func BACnetActionTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8, tagCl
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetActionTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetActionTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8, tagCl
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAction_DIRECT)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetActionTagged")
 	}
 	value := _value.(BACnetAction)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
index 197fe16ca..96ceb859f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddress.go
@@ -155,7 +155,7 @@ func BACnetAddressParse(readBuffer utils.ReadBuffer) (BACnetAddress, error) {
 	}
 	_networkNumber, _networkNumberErr := BACnetApplicationTagParse(readBuffer)
 	if _networkNumberErr != nil {
-		return nil, errors.Wrap(_networkNumberErr, "Error parsing 'networkNumber' field")
+		return nil, errors.Wrap(_networkNumberErr, "Error parsing 'networkNumber' field of BACnetAddress")
 	}
 	networkNumber := _networkNumber.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("networkNumber"); closeErr != nil {
@@ -178,7 +178,7 @@ func BACnetAddressParse(readBuffer utils.ReadBuffer) (BACnetAddress, error) {
 	}
 	_macAddress, _macAddressErr := BACnetApplicationTagParse(readBuffer)
 	if _macAddressErr != nil {
-		return nil, errors.Wrap(_macAddressErr, "Error parsing 'macAddress' field")
+		return nil, errors.Wrap(_macAddressErr, "Error parsing 'macAddress' field of BACnetAddress")
 	}
 	macAddress := _macAddress.(BACnetApplicationTagOctetString)
 	if closeErr := readBuffer.CloseContext("macAddress"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
index 33deb45b2..5f65ffdc1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressBinding.go
@@ -122,7 +122,7 @@ func BACnetAddressBindingParse(readBuffer utils.ReadBuffer) (BACnetAddressBindin
 	}
 	_deviceIdentifier, _deviceIdentifierErr := BACnetApplicationTagParse(readBuffer)
 	if _deviceIdentifierErr != nil {
-		return nil, errors.Wrap(_deviceIdentifierErr, "Error parsing 'deviceIdentifier' field")
+		return nil, errors.Wrap(_deviceIdentifierErr, "Error parsing 'deviceIdentifier' field of BACnetAddressBinding")
 	}
 	deviceIdentifier := _deviceIdentifier.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("deviceIdentifier"); closeErr != nil {
@@ -135,7 +135,7 @@ func BACnetAddressBindingParse(readBuffer utils.ReadBuffer) (BACnetAddressBindin
 	}
 	_deviceAddress, _deviceAddressErr := BACnetAddressParse(readBuffer)
 	if _deviceAddressErr != nil {
-		return nil, errors.Wrap(_deviceAddressErr, "Error parsing 'deviceAddress' field")
+		return nil, errors.Wrap(_deviceAddressErr, "Error parsing 'deviceAddress' field of BACnetAddressBinding")
 	}
 	deviceAddress := _deviceAddress.(BACnetAddress)
 	if closeErr := readBuffer.CloseContext("deviceAddress"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
index d209903d2..a68524f75 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAddressEnclosed.go
@@ -135,7 +135,7 @@ func BACnetAddressEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uint8) (B
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetAddressEnclosed")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -148,7 +148,7 @@ func BACnetAddressEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uint8) (B
 	}
 	_address, _addressErr := BACnetAddressParse(readBuffer)
 	if _addressErr != nil {
-		return nil, errors.Wrap(_addressErr, "Error parsing 'address' field")
+		return nil, errors.Wrap(_addressErr, "Error parsing 'address' field of BACnetAddressEnclosed")
 	}
 	address := _address.(BACnetAddress)
 	if closeErr := readBuffer.CloseContext("address"); closeErr != nil {
@@ -161,7 +161,7 @@ func BACnetAddressEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uint8) (B
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetAddressEnclosed")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
index faab30918..4d3a7b190 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagParse(readBuffer utils.ReadBuffer) (BACnetApplicationTa
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetApplicationTag")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetApplicationTagParse(readBuffer utils.ReadBuffer) (BACnetApplicationTa
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [actualTagNumber=%v]", actualTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetApplicationTag.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetApplicationTag")
 	}
 	_child = _childTemp.(BACnetApplicationTagChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go
index ba8362b64..08399d247 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBitString.go
@@ -137,7 +137,7 @@ func BACnetApplicationTagBitStringParse(readBuffer utils.ReadBuffer, header BACn
 	}
 	_payload, _payloadErr := BACnetTagPayloadBitStringParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagBitString")
 	}
 	payload := _payload.(BACnetTagPayloadBitString)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go
index 4d21ec55c..25c3af606 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagBoolean.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagBooleanParse(readBuffer utils.ReadBuffer, header BACnet
 	}
 	_payload, _payloadErr := BACnetTagPayloadBooleanParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagBoolean")
 	}
 	payload := _payload.(BACnetTagPayloadBoolean)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go
index 6dbfe80c0..b5c3ea65a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagCharacterString.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagCharacterStringParse(readBuffer utils.ReadBuffer, heade
 	}
 	_payload, _payloadErr := BACnetTagPayloadCharacterStringParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagCharacterString")
 	}
 	payload := _payload.(BACnetTagPayloadCharacterString)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go
index 7c5ea86a5..c54a22195 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDate.go
@@ -137,7 +137,7 @@ func BACnetApplicationTagDateParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 	}
 	_payload, _payloadErr := BACnetTagPayloadDateParse(readBuffer)
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagDate")
 	}
 	payload := _payload.(BACnetTagPayloadDate)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go
index ae154c832..4afd4f6a0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagDouble.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagDoubleParse(readBuffer utils.ReadBuffer) (BACnetApplica
 	}
 	_payload, _payloadErr := BACnetTagPayloadDoubleParse(readBuffer)
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagDouble")
 	}
 	payload := _payload.(BACnetTagPayloadDouble)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go
index f7878c02a..2bbe085db 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagEnumerated.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagEnumeratedParse(readBuffer utils.ReadBuffer, header BAC
 	}
 	_payload, _payloadErr := BACnetTagPayloadEnumeratedParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagEnumerated")
 	}
 	payload := _payload.(BACnetTagPayloadEnumerated)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go
index c0359c90e..1b3450f0c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagObjectIdentifier.go
@@ -162,7 +162,7 @@ func BACnetApplicationTagObjectIdentifierParse(readBuffer utils.ReadBuffer) (BAC
 	}
 	_payload, _payloadErr := BACnetTagPayloadObjectIdentifierParse(readBuffer)
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagObjectIdentifier")
 	}
 	payload := _payload.(BACnetTagPayloadObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go
index acbb6a56c..2ccebd0a6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagOctetString.go
@@ -137,7 +137,7 @@ func BACnetApplicationTagOctetStringParse(readBuffer utils.ReadBuffer, header BA
 	}
 	_payload, _payloadErr := BACnetTagPayloadOctetStringParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagOctetString")
 	}
 	payload := _payload.(BACnetTagPayloadOctetString)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go
index fd5769764..4f4be9904 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagReal.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagRealParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 	}
 	_payload, _payloadErr := BACnetTagPayloadRealParse(readBuffer)
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagReal")
 	}
 	payload := _payload.(BACnetTagPayloadReal)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
index 460557412..cd91bdaf6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagSignedInteger.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagSignedIntegerParse(readBuffer utils.ReadBuffer, header
 	}
 	_payload, _payloadErr := BACnetTagPayloadSignedIntegerParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagSignedInteger")
 	}
 	payload := _payload.(BACnetTagPayloadSignedInteger)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go
index f21d5720c..b5b7ef549 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagTime.go
@@ -137,7 +137,7 @@ func BACnetApplicationTagTimeParse(readBuffer utils.ReadBuffer) (BACnetApplicati
 	}
 	_payload, _payloadErr := BACnetTagPayloadTimeParse(readBuffer)
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagTime")
 	}
 	payload := _payload.(BACnetTagPayloadTime)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go
index 232ed3351..a2e878422 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTagUnsignedInteger.go
@@ -154,7 +154,7 @@ func BACnetApplicationTagUnsignedIntegerParse(readBuffer utils.ReadBuffer, heade
 	}
 	_payload, _payloadErr := BACnetTagPayloadUnsignedIntegerParse(readBuffer, uint32(header.GetActualLength()))
 	if _payloadErr != nil {
-		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field")
+		return nil, errors.Wrap(_payloadErr, "Error parsing 'payload' field of BACnetApplicationTagUnsignedInteger")
 	}
 	payload := _payload.(BACnetTagPayloadUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("payload"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
index b2b75fe7b..daada175e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedAccessRights.go
@@ -122,7 +122,7 @@ func BACnetAssignedAccessRightsParse(readBuffer utils.ReadBuffer) (BACnetAssigne
 	}
 	_assignedAccessRights, _assignedAccessRightsErr := BACnetDeviceObjectReferenceEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _assignedAccessRightsErr != nil {
-		return nil, errors.Wrap(_assignedAccessRightsErr, "Error parsing 'assignedAccessRights' field")
+		return nil, errors.Wrap(_assignedAccessRightsErr, "Error parsing 'assignedAccessRights' field of BACnetAssignedAccessRights")
 	}
 	assignedAccessRights := _assignedAccessRights.(BACnetDeviceObjectReferenceEnclosed)
 	if closeErr := readBuffer.CloseContext("assignedAccessRights"); closeErr != nil {
@@ -135,7 +135,7 @@ func BACnetAssignedAccessRightsParse(readBuffer utils.ReadBuffer) (BACnetAssigne
 	}
 	_enable, _enableErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _enableErr != nil {
-		return nil, errors.Wrap(_enableErr, "Error parsing 'enable' field")
+		return nil, errors.Wrap(_enableErr, "Error parsing 'enable' field of BACnetAssignedAccessRights")
 	}
 	enable := _enable.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("enable"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
index 592ad5b66..7776d20ea 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCalls.go
@@ -112,7 +112,7 @@ func BACnetAssignedLandingCallsParse(readBuffer utils.ReadBuffer) (BACnetAssigne
 	}
 	_landingCalls, _landingCallsErr := BACnetAssignedLandingCallsLandingCallsListParse(readBuffer, uint8(uint8(0)))
 	if _landingCallsErr != nil {
-		return nil, errors.Wrap(_landingCallsErr, "Error parsing 'landingCalls' field")
+		return nil, errors.Wrap(_landingCallsErr, "Error parsing 'landingCalls' field of BACnetAssignedLandingCalls")
 	}
 	landingCalls := _landingCalls.(BACnetAssignedLandingCallsLandingCallsList)
 	if closeErr := readBuffer.CloseContext("landingCalls"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
index 679e38f04..99bd33e78 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsList.go
@@ -139,7 +139,7 @@ func BACnetAssignedLandingCallsLandingCallsListParse(readBuffer utils.ReadBuffer
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetAssignedLandingCallsLandingCallsList")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetAssignedLandingCallsLandingCallsListParse(readBuffer utils.ReadBuffer
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAssignedLandingCallsLandingCallsListEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'landingCalls' field")
+				return nil, errors.Wrap(_err, "Error parsing 'landingCalls' field of BACnetAssignedLandingCallsLandingCallsList")
 			}
 			landingCalls = append(landingCalls, _item.(BACnetAssignedLandingCallsLandingCallsListEntry))
 
@@ -172,7 +172,7 @@ func BACnetAssignedLandingCallsLandingCallsListParse(readBuffer utils.ReadBuffer
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetAssignedLandingCallsLandingCallsList")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
index fd8360aba..14b10cbc8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAssignedLandingCallsLandingCallsListEntry.go
@@ -122,7 +122,7 @@ func BACnetAssignedLandingCallsLandingCallsListEntryParse(readBuffer utils.ReadB
 	}
 	_floorNumber, _floorNumberErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _floorNumberErr != nil {
-		return nil, errors.Wrap(_floorNumberErr, "Error parsing 'floorNumber' field")
+		return nil, errors.Wrap(_floorNumberErr, "Error parsing 'floorNumber' field of BACnetAssignedLandingCallsLandingCallsListEntry")
 	}
 	floorNumber := _floorNumber.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("floorNumber"); closeErr != nil {
@@ -135,7 +135,7 @@ func BACnetAssignedLandingCallsLandingCallsListEntryParse(readBuffer utils.ReadB
 	}
 	_direction, _directionErr := BACnetLiftCarDirectionTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _directionErr != nil {
-		return nil, errors.Wrap(_directionErr, "Error parsing 'direction' field")
+		return nil, errors.Wrap(_directionErr, "Error parsing 'direction' field of BACnetAssignedLandingCallsLandingCallsListEntry")
 	}
 	direction := _direction.(BACnetLiftCarDirectionTagged)
 	if closeErr := readBuffer.CloseContext("direction"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
index 2b2929f2f..32d99e719 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactor.go
@@ -132,7 +132,7 @@ func BACnetAuthenticationFactorParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 	}
 	_formatType, _formatTypeErr := BACnetAuthenticationFactorTypeTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _formatTypeErr != nil {
-		return nil, errors.Wrap(_formatTypeErr, "Error parsing 'formatType' field")
+		return nil, errors.Wrap(_formatTypeErr, "Error parsing 'formatType' field of BACnetAuthenticationFactor")
 	}
 	formatType := _formatType.(BACnetAuthenticationFactorTypeTagged)
 	if closeErr := readBuffer.CloseContext("formatType"); closeErr != nil {
@@ -145,7 +145,7 @@ func BACnetAuthenticationFactorParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 	}
 	_formatClass, _formatClassErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _formatClassErr != nil {
-		return nil, errors.Wrap(_formatClassErr, "Error parsing 'formatClass' field")
+		return nil, errors.Wrap(_formatClassErr, "Error parsing 'formatClass' field of BACnetAuthenticationFactor")
 	}
 	formatClass := _formatClass.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("formatClass"); closeErr != nil {
@@ -158,7 +158,7 @@ func BACnetAuthenticationFactorParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 	}
 	_value, _valueErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_OCTET_STRING))
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAuthenticationFactor")
 	}
 	value := _value.(BACnetContextTagOctetString)
 	if closeErr := readBuffer.CloseContext("value"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
index 56d51d0fb..983aa9810 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorEnclosed.go
@@ -135,7 +135,7 @@ func BACnetAuthenticationFactorEnclosedParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetAuthenticationFactorEnclosed")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -148,7 +148,7 @@ func BACnetAuthenticationFactorEnclosedParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_authenticationFactor, _authenticationFactorErr := BACnetAuthenticationFactorParse(readBuffer)
 	if _authenticationFactorErr != nil {
-		return nil, errors.Wrap(_authenticationFactorErr, "Error parsing 'authenticationFactor' field")
+		return nil, errors.Wrap(_authenticationFactorErr, "Error parsing 'authenticationFactor' field of BACnetAuthenticationFactorEnclosed")
 	}
 	authenticationFactor := _authenticationFactor.(BACnetAuthenticationFactor)
 	if closeErr := readBuffer.CloseContext("authenticationFactor"); closeErr != nil {
@@ -161,7 +161,7 @@ func BACnetAuthenticationFactorEnclosedParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetAuthenticationFactorEnclosed")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
index 9a8daa976..cc8aed60f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorFormat.go
@@ -138,7 +138,7 @@ func BACnetAuthenticationFactorFormatParse(readBuffer utils.ReadBuffer) (BACnetA
 	}
 	_formatType, _formatTypeErr := BACnetAuthenticationFactorTypeTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _formatTypeErr != nil {
-		return nil, errors.Wrap(_formatTypeErr, "Error parsing 'formatType' field")
+		return nil, errors.Wrap(_formatTypeErr, "Error parsing 'formatType' field of BACnetAuthenticationFactorFormat")
 	}
 	formatType := _formatType.(BACnetAuthenticationFactorTypeTagged)
 	if closeErr := readBuffer.CloseContext("formatType"); closeErr != nil {
@@ -158,7 +158,7 @@ func BACnetAuthenticationFactorFormatParse(readBuffer utils.ReadBuffer) (BACnetA
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'vendorId' field")
+			return nil, errors.Wrap(_err, "Error parsing 'vendorId' field of BACnetAuthenticationFactorFormat")
 		default:
 			vendorId = _val.(BACnetVendorIdTagged)
 			if closeErr := readBuffer.CloseContext("vendorId"); closeErr != nil {
@@ -180,7 +180,7 @@ func BACnetAuthenticationFactorFormatParse(readBuffer utils.ReadBuffer) (BACnetA
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'vendorFormat' field")
+			return nil, errors.Wrap(_err, "Error parsing 'vendorFormat' field of BACnetAuthenticationFactorFormat")
 		default:
 			vendorFormat = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("vendorFormat"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
index 8aac24af1..191ac6635 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationFactorTypeTagged.go
@@ -126,7 +126,7 @@ func BACnetAuthenticationFactorTypeTaggedParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAuthenticationFactorTypeTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetAuthenticationFactorTypeTaggedParse(readBuffer utils.ReadBuffer, tagN
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAuthenticationFactorType_UNDEFINED)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAuthenticationFactorTypeTagged")
 	}
 	value := _value.(BACnetAuthenticationFactorType)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
index 935c5cca3..7763a3231 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicy.go
@@ -132,7 +132,7 @@ func BACnetAuthenticationPolicyParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 	}
 	_policy, _policyErr := BACnetAuthenticationPolicyListParse(readBuffer, uint8(uint8(0)))
 	if _policyErr != nil {
-		return nil, errors.Wrap(_policyErr, "Error parsing 'policy' field")
+		return nil, errors.Wrap(_policyErr, "Error parsing 'policy' field of BACnetAuthenticationPolicy")
 	}
 	policy := _policy.(BACnetAuthenticationPolicyList)
 	if closeErr := readBuffer.CloseContext("policy"); closeErr != nil {
@@ -145,7 +145,7 @@ func BACnetAuthenticationPolicyParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 	}
 	_orderEnforced, _orderEnforcedErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _orderEnforcedErr != nil {
-		return nil, errors.Wrap(_orderEnforcedErr, "Error parsing 'orderEnforced' field")
+		return nil, errors.Wrap(_orderEnforcedErr, "Error parsing 'orderEnforced' field of BACnetAuthenticationPolicy")
 	}
 	orderEnforced := _orderEnforced.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("orderEnforced"); closeErr != nil {
@@ -158,7 +158,7 @@ func BACnetAuthenticationPolicyParse(readBuffer utils.ReadBuffer) (BACnetAuthent
 	}
 	_timeout, _timeoutErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _timeoutErr != nil {
-		return nil, errors.Wrap(_timeoutErr, "Error parsing 'timeout' field")
+		return nil, errors.Wrap(_timeoutErr, "Error parsing 'timeout' field of BACnetAuthenticationPolicy")
 	}
 	timeout := _timeout.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("timeout"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
index b57920bd0..1b8b06c77 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyList.go
@@ -139,7 +139,7 @@ func BACnetAuthenticationPolicyListParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetAuthenticationPolicyList")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetAuthenticationPolicyListParse(readBuffer utils.ReadBuffer, tagNumber
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAuthenticationPolicyListEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'entries' field")
+				return nil, errors.Wrap(_err, "Error parsing 'entries' field of BACnetAuthenticationPolicyList")
 			}
 			entries = append(entries, _item.(BACnetAuthenticationPolicyListEntry))
 
@@ -172,7 +172,7 @@ func BACnetAuthenticationPolicyListParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetAuthenticationPolicyList")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
index c3cfb947d..2fe45732e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationPolicyListEntry.go
@@ -122,7 +122,7 @@ func BACnetAuthenticationPolicyListEntryParse(readBuffer utils.ReadBuffer) (BACn
 	}
 	_credentialDataInput, _credentialDataInputErr := BACnetDeviceObjectReferenceEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _credentialDataInputErr != nil {
-		return nil, errors.Wrap(_credentialDataInputErr, "Error parsing 'credentialDataInput' field")
+		return nil, errors.Wrap(_credentialDataInputErr, "Error parsing 'credentialDataInput' field of BACnetAuthenticationPolicyListEntry")
 	}
 	credentialDataInput := _credentialDataInput.(BACnetDeviceObjectReferenceEnclosed)
 	if closeErr := readBuffer.CloseContext("credentialDataInput"); closeErr != nil {
@@ -135,7 +135,7 @@ func BACnetAuthenticationPolicyListEntryParse(readBuffer utils.ReadBuffer) (BACn
 	}
 	_index, _indexErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _indexErr != nil {
-		return nil, errors.Wrap(_indexErr, "Error parsing 'index' field")
+		return nil, errors.Wrap(_indexErr, "Error parsing 'index' field of BACnetAuthenticationPolicyListEntry")
 	}
 	index := _index.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("index"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
index 33d0e12fb..c413802d0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthenticationStatusTagged.go
@@ -126,7 +126,7 @@ func BACnetAuthenticationStatusTaggedParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAuthenticationStatusTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetAuthenticationStatusTaggedParse(readBuffer utils.ReadBuffer, tagNumbe
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetAuthenticationStatus_NOT_READY)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAuthenticationStatusTagged")
 	}
 	value := _value.(BACnetAuthenticationStatus)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
index b4064eaaa..6af50b2ef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationExemptionTagged.go
@@ -153,7 +153,7 @@ func BACnetAuthorizationExemptionTaggedParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAuthorizationExemptionTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAuthorizationExemptionTaggedParse(readBuffer utils.ReadBuffer, tagNum
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAuthorizationExemption_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAuthorizationExemptionTagged")
 	}
 	value := _value.(BACnetAuthorizationExemption)
 
@@ -185,7 +185,7 @@ func BACnetAuthorizationExemptionTaggedParse(readBuffer utils.ReadBuffer, tagNum
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAuthorizationExemptionTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
index 583a2ac49..81f9a25e3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetAuthorizationModeTagged.go
@@ -153,7 +153,7 @@ func BACnetAuthorizationModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber u
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetAuthorizationModeTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetAuthorizationModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber u
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetAuthorizationMode_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetAuthorizationModeTagged")
 	}
 	value := _value.(BACnetAuthorizationMode)
 
@@ -185,7 +185,7 @@ func BACnetAuthorizationModeTaggedParse(readBuffer utils.ReadBuffer, tagNumber u
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetAuthorizationModeTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
index 33cf8bc4f..ab38d140f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBDTEntry.go
@@ -126,7 +126,7 @@ func BACnetBDTEntryParse(readBuffer utils.ReadBuffer) (BACnetBDTEntry, error) {
 	}
 	_bbmdAddress, _bbmdAddressErr := BACnetHostNPortEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _bbmdAddressErr != nil {
-		return nil, errors.Wrap(_bbmdAddressErr, "Error parsing 'bbmdAddress' field")
+		return nil, errors.Wrap(_bbmdAddressErr, "Error parsing 'bbmdAddress' field of BACnetBDTEntry")
 	}
 	bbmdAddress := _bbmdAddress.(BACnetHostNPortEnclosed)
 	if closeErr := readBuffer.CloseContext("bbmdAddress"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetBDTEntryParse(readBuffer utils.ReadBuffer) (BACnetBDTEntry, error) {
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'broadcastMask' field")
+			return nil, errors.Wrap(_err, "Error parsing 'broadcastMask' field of BACnetBDTEntry")
 		default:
 			broadcastMask = _val.(BACnetContextTagOctetString)
 			if closeErr := readBuffer.CloseContext("broadcastMask"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
index da2afe589..b35e5b22c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBackupStateTagged.go
@@ -126,7 +126,7 @@ func BACnetBackupStateTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetBackupStateTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetBackupStateTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8,
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetBackupState_IDLE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetBackupStateTagged")
 	}
 	value := _value.(BACnetBackupState)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
index bc618555e..a6f13f805 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryLightingPVTagged.go
@@ -153,7 +153,7 @@ func BACnetBinaryLightingPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber ui
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetBinaryLightingPVTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -173,7 +173,7 @@ func BACnetBinaryLightingPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber ui
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGeneric(readBuffer, header.GetActualLength(), BACnetBinaryLightingPV_VENDOR_PROPRIETARY_VALUE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetBinaryLightingPVTagged")
 	}
 	value := _value.(BACnetBinaryLightingPV)
 
@@ -185,7 +185,7 @@ func BACnetBinaryLightingPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber ui
 	// Manual Field (proprietaryValue)
 	_proprietaryValue, _proprietaryValueErr := ReadProprietaryEnumGeneric(readBuffer, header.GetActualLength(), isProprietary)
 	if _proprietaryValueErr != nil {
-		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field")
+		return nil, errors.Wrap(_proprietaryValueErr, "Error parsing 'proprietaryValue' field of BACnetBinaryLightingPVTagged")
 	}
 	proprietaryValue := _proprietaryValue.(uint32)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
index 2b0b6893e..67b88b27e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetBinaryPVTagged.go
@@ -126,7 +126,7 @@ func BACnetBinaryPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8, tag
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetBinaryPVTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetBinaryPVTaggedParse(readBuffer utils.ReadBuffer, tagNumber uint8, tag
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetBinaryPV_INACTIVE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetBinaryPVTagged")
 	}
 	value := _value.(BACnetBinaryPV)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
index 83309a407..090c8b14b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscription.go
@@ -152,7 +152,7 @@ func BACnetCOVMultipleSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVM
 	}
 	_recipient, _recipientErr := BACnetRecipientProcessEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _recipientErr != nil {
-		return nil, errors.Wrap(_recipientErr, "Error parsing 'recipient' field")
+		return nil, errors.Wrap(_recipientErr, "Error parsing 'recipient' field of BACnetCOVMultipleSubscription")
 	}
 	recipient := _recipient.(BACnetRecipientProcessEnclosed)
 	if closeErr := readBuffer.CloseContext("recipient"); closeErr != nil {
@@ -165,7 +165,7 @@ func BACnetCOVMultipleSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVM
 	}
 	_issueConfirmedNotifications, _issueConfirmedNotificationsErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _issueConfirmedNotificationsErr != nil {
-		return nil, errors.Wrap(_issueConfirmedNotificationsErr, "Error parsing 'issueConfirmedNotifications' field")
+		return nil, errors.Wrap(_issueConfirmedNotificationsErr, "Error parsing 'issueConfirmedNotifications' field of BACnetCOVMultipleSubscription")
 	}
 	issueConfirmedNotifications := _issueConfirmedNotifications.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("issueConfirmedNotifications"); closeErr != nil {
@@ -178,7 +178,7 @@ func BACnetCOVMultipleSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVM
 	}
 	_timeRemaining, _timeRemainingErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _timeRemainingErr != nil {
-		return nil, errors.Wrap(_timeRemainingErr, "Error parsing 'timeRemaining' field")
+		return nil, errors.Wrap(_timeRemainingErr, "Error parsing 'timeRemaining' field of BACnetCOVMultipleSubscription")
 	}
 	timeRemaining := _timeRemaining.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("timeRemaining"); closeErr != nil {
@@ -191,7 +191,7 @@ func BACnetCOVMultipleSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVM
 	}
 	_maxNotificationDelay, _maxNotificationDelayErr := BACnetContextTagParse(readBuffer, uint8(uint8(3)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _maxNotificationDelayErr != nil {
-		return nil, errors.Wrap(_maxNotificationDelayErr, "Error parsing 'maxNotificationDelay' field")
+		return nil, errors.Wrap(_maxNotificationDelayErr, "Error parsing 'maxNotificationDelay' field of BACnetCOVMultipleSubscription")
 	}
 	maxNotificationDelay := _maxNotificationDelay.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("maxNotificationDelay"); closeErr != nil {
@@ -204,7 +204,7 @@ func BACnetCOVMultipleSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVM
 	}
 	_listOfCovSubscriptionSpecification, _listOfCovSubscriptionSpecificationErr := BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParse(readBuffer, uint8(uint8(4)))
 	if _listOfCovSubscriptionSpecificationErr != nil {
-		return nil, errors.Wrap(_listOfCovSubscriptionSpecificationErr, "Error parsing 'listOfCovSubscriptionSpecification' field")
+		return nil, errors.Wrap(_listOfCovSubscriptionSpecificationErr, "Error parsing 'listOfCovSubscriptionSpecification' field of BACnetCOVMultipleSubscription")
 	}
 	listOfCovSubscriptionSpecification := _listOfCovSubscriptionSpecification.(BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification)
 	if closeErr := readBuffer.CloseContext("listOfCovSubscriptionSpecification"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
index 092cc407e..f6567abcf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification.go
@@ -139,7 +139,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParse(readBu
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParse(readBu
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'listOfCovSubscriptionSpecificationEntry' field")
+				return nil, errors.Wrap(_err, "Error parsing 'listOfCovSubscriptionSpecificationEntry' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification")
 			}
 			listOfCovSubscriptionSpecificationEntry = append(listOfCovSubscriptionSpecificationEntry, _item.(BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry))
 
@@ -172,7 +172,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationParse(readBu
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecification")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
index 6056b635b..4d66e6b96 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry.go
@@ -122,7 +122,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryParse(r
 	}
 	_monitoredObjectIdentifier, _monitoredObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _monitoredObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field")
+		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry")
 	}
 	monitoredObjectIdentifier := _monitoredObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("monitoredObjectIdentifier"); closeErr != nil {
@@ -135,7 +135,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryParse(r
 	}
 	_listOfCovReferences, _listOfCovReferencesErr := BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesParse(readBuffer, uint8(uint8(1)))
 	if _listOfCovReferencesErr != nil {
-		return nil, errors.Wrap(_listOfCovReferencesErr, "Error parsing 'listOfCovReferences' field")
+		return nil, errors.Wrap(_listOfCovReferencesErr, "Error parsing 'listOfCovReferences' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntry")
 	}
 	listOfCovReferences := _listOfCovReferences.(BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences)
 	if closeErr := readBuffer.CloseContext("listOfCovReferences"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
index 5482c017c..f1f055fea 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences.go
@@ -139,7 +139,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'listOfCovReferences' field")
+				return nil, errors.Wrap(_err, "Error parsing 'listOfCovReferences' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences")
 			}
 			listOfCovReferences = append(listOfCovReferences, _item.(BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry))
 
@@ -172,7 +172,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferences")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
index dd33e3013..a1baa68df 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry.go
@@ -136,7 +136,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 	}
 	_monitoredProperty, _monitoredPropertyErr := BACnetPropertyReferenceEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _monitoredPropertyErr != nil {
-		return nil, errors.Wrap(_monitoredPropertyErr, "Error parsing 'monitoredProperty' field")
+		return nil, errors.Wrap(_monitoredPropertyErr, "Error parsing 'monitoredProperty' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry")
 	}
 	monitoredProperty := _monitoredProperty.(BACnetPropertyReferenceEnclosed)
 	if closeErr := readBuffer.CloseContext("monitoredProperty"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field")
+			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry")
 		default:
 			covIncrement = _val.(BACnetContextTagReal)
 			if closeErr := readBuffer.CloseContext("covIncrement"); closeErr != nil {
@@ -171,7 +171,7 @@ func BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfC
 	}
 	_timestamped, _timestampedErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _timestampedErr != nil {
-		return nil, errors.Wrap(_timestampedErr, "Error parsing 'timestamped' field")
+		return nil, errors.Wrap(_timestampedErr, "Error parsing 'timestamped' field of BACnetCOVMultipleSubscriptionListOfCovSubscriptionSpecificationEntryListOfCovReferencesEntry")
 	}
 	timestamped := _timestamped.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("timestamped"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
index 1a5ca7705..599d821a4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCOVSubscription.go
@@ -156,7 +156,7 @@ func BACnetCOVSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVSubscript
 	}
 	_recipient, _recipientErr := BACnetRecipientProcessEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _recipientErr != nil {
-		return nil, errors.Wrap(_recipientErr, "Error parsing 'recipient' field")
+		return nil, errors.Wrap(_recipientErr, "Error parsing 'recipient' field of BACnetCOVSubscription")
 	}
 	recipient := _recipient.(BACnetRecipientProcessEnclosed)
 	if closeErr := readBuffer.CloseContext("recipient"); closeErr != nil {
@@ -169,7 +169,7 @@ func BACnetCOVSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVSubscript
 	}
 	_monitoredPropertyReference, _monitoredPropertyReferenceErr := BACnetObjectPropertyReferenceEnclosedParse(readBuffer, uint8(uint8(1)))
 	if _monitoredPropertyReferenceErr != nil {
-		return nil, errors.Wrap(_monitoredPropertyReferenceErr, "Error parsing 'monitoredPropertyReference' field")
+		return nil, errors.Wrap(_monitoredPropertyReferenceErr, "Error parsing 'monitoredPropertyReference' field of BACnetCOVSubscription")
 	}
 	monitoredPropertyReference := _monitoredPropertyReference.(BACnetObjectPropertyReferenceEnclosed)
 	if closeErr := readBuffer.CloseContext("monitoredPropertyReference"); closeErr != nil {
@@ -182,7 +182,7 @@ func BACnetCOVSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVSubscript
 	}
 	_issueConfirmedNotifications, _issueConfirmedNotificationsErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _issueConfirmedNotificationsErr != nil {
-		return nil, errors.Wrap(_issueConfirmedNotificationsErr, "Error parsing 'issueConfirmedNotifications' field")
+		return nil, errors.Wrap(_issueConfirmedNotificationsErr, "Error parsing 'issueConfirmedNotifications' field of BACnetCOVSubscription")
 	}
 	issueConfirmedNotifications := _issueConfirmedNotifications.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("issueConfirmedNotifications"); closeErr != nil {
@@ -195,7 +195,7 @@ func BACnetCOVSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVSubscript
 	}
 	_timeRemaining, _timeRemainingErr := BACnetContextTagParse(readBuffer, uint8(uint8(3)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _timeRemainingErr != nil {
-		return nil, errors.Wrap(_timeRemainingErr, "Error parsing 'timeRemaining' field")
+		return nil, errors.Wrap(_timeRemainingErr, "Error parsing 'timeRemaining' field of BACnetCOVSubscription")
 	}
 	timeRemaining := _timeRemaining.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("timeRemaining"); closeErr != nil {
@@ -215,7 +215,7 @@ func BACnetCOVSubscriptionParse(readBuffer utils.ReadBuffer) (BACnetCOVSubscript
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field")
+			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field of BACnetCOVSubscription")
 		default:
 			covIncrement = _val.(BACnetContextTagReal)
 			if closeErr := readBuffer.CloseContext("covIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
index 16e788d81..a658e4982 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
@@ -175,7 +175,7 @@ func BACnetCalendarEntryParse(readBuffer utils.ReadBuffer) (BACnetCalendarEntry,
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetCalendarEntry.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetCalendarEntry")
 	}
 	_child = _childTemp.(BACnetCalendarEntryChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go
index 4f9fbb22a..c66f21ea0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDate.go
@@ -137,7 +137,7 @@ func BACnetCalendarEntryDateParse(readBuffer utils.ReadBuffer) (BACnetCalendarEn
 	}
 	_dateValue, _dateValueErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_DATE))
 	if _dateValueErr != nil {
-		return nil, errors.Wrap(_dateValueErr, "Error parsing 'dateValue' field")
+		return nil, errors.Wrap(_dateValueErr, "Error parsing 'dateValue' field of BACnetCalendarEntryDate")
 	}
 	dateValue := _dateValue.(BACnetContextTagDate)
 	if closeErr := readBuffer.CloseContext("dateValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go
index 007dc6960..198fec155 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryDateRange.go
@@ -137,7 +137,7 @@ func BACnetCalendarEntryDateRangeParse(readBuffer utils.ReadBuffer) (BACnetCalen
 	}
 	_dateRange, _dateRangeErr := BACnetDateRangeEnclosedParse(readBuffer, uint8(uint8(1)))
 	if _dateRangeErr != nil {
-		return nil, errors.Wrap(_dateRangeErr, "Error parsing 'dateRange' field")
+		return nil, errors.Wrap(_dateRangeErr, "Error parsing 'dateRange' field of BACnetCalendarEntryDateRange")
 	}
 	dateRange := _dateRange.(BACnetDateRangeEnclosed)
 	if closeErr := readBuffer.CloseContext("dateRange"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
index 14d94b1e6..28085651a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryEnclosed.go
@@ -135,7 +135,7 @@ func BACnetCalendarEntryEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uin
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetCalendarEntryEnclosed")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -148,7 +148,7 @@ func BACnetCalendarEntryEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uin
 	}
 	_calendarEntry, _calendarEntryErr := BACnetCalendarEntryParse(readBuffer)
 	if _calendarEntryErr != nil {
-		return nil, errors.Wrap(_calendarEntryErr, "Error parsing 'calendarEntry' field")
+		return nil, errors.Wrap(_calendarEntryErr, "Error parsing 'calendarEntry' field of BACnetCalendarEntryEnclosed")
 	}
 	calendarEntry := _calendarEntry.(BACnetCalendarEntry)
 	if closeErr := readBuffer.CloseContext("calendarEntry"); closeErr != nil {
@@ -161,7 +161,7 @@ func BACnetCalendarEntryEnclosedParse(readBuffer utils.ReadBuffer, tagNumber uin
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetCalendarEntryEnclosed")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go
index 1fe9d5bea..a5306c0d5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntryWeekNDay.go
@@ -137,7 +137,7 @@ func BACnetCalendarEntryWeekNDayParse(readBuffer utils.ReadBuffer) (BACnetCalend
 	}
 	_weekNDay, _weekNDayErr := BACnetWeekNDayTaggedParse(readBuffer, uint8(uint8(2)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _weekNDayErr != nil {
-		return nil, errors.Wrap(_weekNDayErr, "Error parsing 'weekNDay' field")
+		return nil, errors.Wrap(_weekNDayErr, "Error parsing 'weekNDay' field of BACnetCalendarEntryWeekNDay")
 	}
 	weekNDay := _weekNDay.(BACnetWeekNDayTagged)
 	if closeErr := readBuffer.CloseContext("weekNDay"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
index 2e1252bb9..fc3c9f0b4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
@@ -210,7 +210,7 @@ func BACnetChannelValueParse(readBuffer utils.ReadBuffer) (BACnetChannelValue, e
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v, peekedIsContextTag=%v]", peekedTagNumber, peekedIsContextTag)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetChannelValue.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetChannelValue")
 	}
 	_child = _childTemp.(BACnetChannelValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go
index 0fc00b2a6..2b490d7a7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBitString.go
@@ -137,7 +137,7 @@ func BACnetChannelValueBitStringParse(readBuffer utils.ReadBuffer) (BACnetChanne
 	}
 	_bitStringValue, _bitStringValueErr := BACnetApplicationTagParse(readBuffer)
 	if _bitStringValueErr != nil {
-		return nil, errors.Wrap(_bitStringValueErr, "Error parsing 'bitStringValue' field")
+		return nil, errors.Wrap(_bitStringValueErr, "Error parsing 'bitStringValue' field of BACnetChannelValueBitString")
 	}
 	bitStringValue := _bitStringValue.(BACnetApplicationTagBitString)
 	if closeErr := readBuffer.CloseContext("bitStringValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go
index 98cb45d40..256b12a21 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueBoolean.go
@@ -137,7 +137,7 @@ func BACnetChannelValueBooleanParse(readBuffer utils.ReadBuffer) (BACnetChannelV
 	}
 	_booleanValue, _booleanValueErr := BACnetApplicationTagParse(readBuffer)
 	if _booleanValueErr != nil {
-		return nil, errors.Wrap(_booleanValueErr, "Error parsing 'booleanValue' field")
+		return nil, errors.Wrap(_booleanValueErr, "Error parsing 'booleanValue' field of BACnetChannelValueBoolean")
 	}
 	booleanValue := _booleanValue.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("booleanValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go
index 51e7c81ee..c83c01470 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueCharacterString.go
@@ -137,7 +137,7 @@ func BACnetChannelValueCharacterStringParse(readBuffer utils.ReadBuffer) (BACnet
 	}
 	_characterStringValue, _characterStringValueErr := BACnetApplicationTagParse(readBuffer)
 	if _characterStringValueErr != nil {
-		return nil, errors.Wrap(_characterStringValueErr, "Error parsing 'characterStringValue' field")
+		return nil, errors.Wrap(_characterStringValueErr, "Error parsing 'characterStringValue' field of BACnetChannelValueCharacterString")
 	}
 	characterStringValue := _characterStringValue.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("characterStringValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go
index 4cadca711..5171982f5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDate.go
@@ -137,7 +137,7 @@ func BACnetChannelValueDateParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 	}
 	_dateValue, _dateValueErr := BACnetApplicationTagParse(readBuffer)
 	if _dateValueErr != nil {
-		return nil, errors.Wrap(_dateValueErr, "Error parsing 'dateValue' field")
+		return nil, errors.Wrap(_dateValueErr, "Error parsing 'dateValue' field of BACnetChannelValueDate")
 	}
 	dateValue := _dateValue.(BACnetApplicationTagDate)
 	if closeErr := readBuffer.CloseContext("dateValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go
index e9efa304c..f8af3302b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueDouble.go
@@ -137,7 +137,7 @@ func BACnetChannelValueDoubleParse(readBuffer utils.ReadBuffer) (BACnetChannelVa
 	}
 	_doubleValue, _doubleValueErr := BACnetApplicationTagParse(readBuffer)
 	if _doubleValueErr != nil {
-		return nil, errors.Wrap(_doubleValueErr, "Error parsing 'doubleValue' field")
+		return nil, errors.Wrap(_doubleValueErr, "Error parsing 'doubleValue' field of BACnetChannelValueDouble")
 	}
 	doubleValue := _doubleValue.(BACnetApplicationTagDouble)
 	if closeErr := readBuffer.CloseContext("doubleValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go
index e1852eae2..88de12b4a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueEnumerated.go
@@ -137,7 +137,7 @@ func BACnetChannelValueEnumeratedParse(readBuffer utils.ReadBuffer) (BACnetChann
 	}
 	_enumeratedValue, _enumeratedValueErr := BACnetApplicationTagParse(readBuffer)
 	if _enumeratedValueErr != nil {
-		return nil, errors.Wrap(_enumeratedValueErr, "Error parsing 'enumeratedValue' field")
+		return nil, errors.Wrap(_enumeratedValueErr, "Error parsing 'enumeratedValue' field of BACnetChannelValueEnumerated")
 	}
 	enumeratedValue := _enumeratedValue.(BACnetApplicationTagEnumerated)
 	if closeErr := readBuffer.CloseContext("enumeratedValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go
index b7ec56fc5..e07e5ea79 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueInteger.go
@@ -137,7 +137,7 @@ func BACnetChannelValueIntegerParse(readBuffer utils.ReadBuffer) (BACnetChannelV
 	}
 	_integerValue, _integerValueErr := BACnetApplicationTagParse(readBuffer)
 	if _integerValueErr != nil {
-		return nil, errors.Wrap(_integerValueErr, "Error parsing 'integerValue' field")
+		return nil, errors.Wrap(_integerValueErr, "Error parsing 'integerValue' field of BACnetChannelValueInteger")
 	}
 	integerValue := _integerValue.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("integerValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go
index e06b86618..76d23084f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueLightingCommand.go
@@ -137,7 +137,7 @@ func BACnetChannelValueLightingCommandParse(readBuffer utils.ReadBuffer) (BACnet
 	}
 	_ligthingCommandValue, _ligthingCommandValueErr := BACnetLightingCommandEnclosedParse(readBuffer, uint8(uint8(0)))
 	if _ligthingCommandValueErr != nil {
-		return nil, errors.Wrap(_ligthingCommandValueErr, "Error parsing 'ligthingCommandValue' field")
+		return nil, errors.Wrap(_ligthingCommandValueErr, "Error parsing 'ligthingCommandValue' field of BACnetChannelValueLightingCommand")
 	}
 	ligthingCommandValue := _ligthingCommandValue.(BACnetLightingCommandEnclosed)
 	if closeErr := readBuffer.CloseContext("ligthingCommandValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go
index ff31443c9..d0eff3ab3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueNull.go
@@ -137,7 +137,7 @@ func BACnetChannelValueNullParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 	}
 	_nullValue, _nullValueErr := BACnetApplicationTagParse(readBuffer)
 	if _nullValueErr != nil {
-		return nil, errors.Wrap(_nullValueErr, "Error parsing 'nullValue' field")
+		return nil, errors.Wrap(_nullValueErr, "Error parsing 'nullValue' field of BACnetChannelValueNull")
 	}
 	nullValue := _nullValue.(BACnetApplicationTagNull)
 	if closeErr := readBuffer.CloseContext("nullValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go
index ef76b4d86..0c67591ed 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueObjectidentifier.go
@@ -137,7 +137,7 @@ func BACnetChannelValueObjectidentifierParse(readBuffer utils.ReadBuffer) (BACne
 	}
 	_objectidentifierValue, _objectidentifierValueErr := BACnetApplicationTagParse(readBuffer)
 	if _objectidentifierValueErr != nil {
-		return nil, errors.Wrap(_objectidentifierValueErr, "Error parsing 'objectidentifierValue' field")
+		return nil, errors.Wrap(_objectidentifierValueErr, "Error parsing 'objectidentifierValue' field of BACnetChannelValueObjectidentifier")
 	}
 	objectidentifierValue := _objectidentifierValue.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectidentifierValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go
index 8bd4ebca0..b4b28a095 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueOctetString.go
@@ -137,7 +137,7 @@ func BACnetChannelValueOctetStringParse(readBuffer utils.ReadBuffer) (BACnetChan
 	}
 	_octetStringValue, _octetStringValueErr := BACnetApplicationTagParse(readBuffer)
 	if _octetStringValueErr != nil {
-		return nil, errors.Wrap(_octetStringValueErr, "Error parsing 'octetStringValue' field")
+		return nil, errors.Wrap(_octetStringValueErr, "Error parsing 'octetStringValue' field of BACnetChannelValueOctetString")
 	}
 	octetStringValue := _octetStringValue.(BACnetApplicationTagOctetString)
 	if closeErr := readBuffer.CloseContext("octetStringValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go
index e537b497e..12a0ba6f8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueReal.go
@@ -137,7 +137,7 @@ func BACnetChannelValueRealParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 	}
 	_realValue, _realValueErr := BACnetApplicationTagParse(readBuffer)
 	if _realValueErr != nil {
-		return nil, errors.Wrap(_realValueErr, "Error parsing 'realValue' field")
+		return nil, errors.Wrap(_realValueErr, "Error parsing 'realValue' field of BACnetChannelValueReal")
 	}
 	realValue := _realValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("realValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go
index 3a0734c9f..1c7ae3bcb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueTime.go
@@ -137,7 +137,7 @@ func BACnetChannelValueTimeParse(readBuffer utils.ReadBuffer) (BACnetChannelValu
 	}
 	_timeValue, _timeValueErr := BACnetApplicationTagParse(readBuffer)
 	if _timeValueErr != nil {
-		return nil, errors.Wrap(_timeValueErr, "Error parsing 'timeValue' field")
+		return nil, errors.Wrap(_timeValueErr, "Error parsing 'timeValue' field of BACnetChannelValueTime")
 	}
 	timeValue := _timeValue.(BACnetApplicationTagTime)
 	if closeErr := readBuffer.CloseContext("timeValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go
index dfed24ecd..f3d6f868a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValueUnsigned.go
@@ -137,7 +137,7 @@ func BACnetChannelValueUnsignedParse(readBuffer utils.ReadBuffer) (BACnetChannel
 	}
 	_unsignedValue, _unsignedValueErr := BACnetApplicationTagParse(readBuffer)
 	if _unsignedValueErr != nil {
-		return nil, errors.Wrap(_unsignedValueErr, "Error parsing 'unsignedValue' field")
+		return nil, errors.Wrap(_unsignedValueErr, "Error parsing 'unsignedValue' field of BACnetChannelValueUnsigned")
 	}
 	unsignedValue := _unsignedValue.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("unsignedValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
index 6b1304016..a985c9a3a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
@@ -168,7 +168,7 @@ func BACnetClientCOVParse(readBuffer utils.ReadBuffer) (BACnetClientCOV, error)
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetClientCOV.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetClientCOV")
 	}
 	_child = _childTemp.(BACnetClientCOVChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go
index e743f3a7c..fcd483c29 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVNone.go
@@ -137,7 +137,7 @@ func BACnetClientCOVNoneParse(readBuffer utils.ReadBuffer) (BACnetClientCOVNone,
 	}
 	_defaultIncrement, _defaultIncrementErr := BACnetApplicationTagParse(readBuffer)
 	if _defaultIncrementErr != nil {
-		return nil, errors.Wrap(_defaultIncrementErr, "Error parsing 'defaultIncrement' field")
+		return nil, errors.Wrap(_defaultIncrementErr, "Error parsing 'defaultIncrement' field of BACnetClientCOVNone")
 	}
 	defaultIncrement := _defaultIncrement.(BACnetApplicationTagNull)
 	if closeErr := readBuffer.CloseContext("defaultIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go
index d2aff666e..6245c33b9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOVObject.go
@@ -137,7 +137,7 @@ func BACnetClientCOVObjectParse(readBuffer utils.ReadBuffer) (BACnetClientCOVObj
 	}
 	_realIncrement, _realIncrementErr := BACnetApplicationTagParse(readBuffer)
 	if _realIncrementErr != nil {
-		return nil, errors.Wrap(_realIncrementErr, "Error parsing 'realIncrement' field")
+		return nil, errors.Wrap(_realIncrementErr, "Error parsing 'realIncrement' field of BACnetClientCOVObject")
 	}
 	realIncrement := _realIncrement.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("realIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
index 2150cd0df..5fa249210 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClosingTag.go
@@ -115,7 +115,7 @@ func BACnetClosingTagParse(readBuffer utils.ReadBuffer, tagNumberArgument uint8)
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetClosingTag")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
index 9f5f0bbc7..c57b5ce18 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
@@ -139,7 +139,7 @@ func BACnetConfirmedServiceRequestParse(readBuffer utils.ReadBuffer, serviceRequ
 		return nil, errors.Wrap(closeErr, "Error closing for serviceChoice")
 	}
 	if _serviceChoiceErr != nil {
-		return nil, errors.Wrap(_serviceChoiceErr, "Error parsing 'serviceChoice' field")
+		return nil, errors.Wrap(_serviceChoiceErr, "Error parsing 'serviceChoice' field of BACnetConfirmedServiceRequest")
 	}
 
 	// Virtual field
@@ -225,7 +225,7 @@ func BACnetConfirmedServiceRequestParse(readBuffer utils.ReadBuffer, serviceRequ
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [serviceChoice=%v]", serviceChoice)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequest.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequest")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go
index 2ad85bdde..0eed37996 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAcknowledgeAlarm.go
@@ -195,7 +195,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 	}
 	_acknowledgingProcessIdentifier, _acknowledgingProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _acknowledgingProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_acknowledgingProcessIdentifierErr, "Error parsing 'acknowledgingProcessIdentifier' field")
+		return nil, errors.Wrap(_acknowledgingProcessIdentifierErr, "Error parsing 'acknowledgingProcessIdentifier' field of BACnetConfirmedServiceRequestAcknowledgeAlarm")
 	}
 	acknowledgingProcessIdentifier := _acknowledgingProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("acknowledgingProcessIdentifier"); closeErr != nil {
@@ -208,7 +208,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 	}
 	_eventObjectIdentifier, _eventObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _eventObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_eventObjectIdentifierErr, "Error parsing 'eventObjectIdentifier' field")
+		return nil, errors.Wrap(_eventObjectIdentifierErr, "Error parsing 'eventObjectIdentifier' field of BACnetConfirmedServiceRequestAcknowledgeAlarm")
 	}
 	eventObjectIdentifier := _eventObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("eventObjectIdentifier"); closeErr != nil {
@@ -221,7 +221,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 	}
 	_eventStateAcknowledged, _eventStateAcknowledgedErr := BACnetEventStateTaggedParse(readBuffer, uint8(uint8(2)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _eventStateAcknowledgedErr != nil {
-		return nil, errors.Wrap(_eventStateAcknowledgedErr, "Error parsing 'eventStateAcknowledged' field")
+		return nil, errors.Wrap(_eventStateAcknowledgedErr, "Error parsing 'eventStateAcknowledged' field of BACnetConfirmedServiceRequestAcknowledgeAlarm")
 	}
 	eventStateAcknowledged := _eventStateAcknowledged.(BACnetEventStateTagged)
 	if closeErr := readBuffer.CloseContext("eventStateAcknowledged"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 	}
 	_timestamp, _timestampErr := BACnetTimeStampEnclosedParse(readBuffer, uint8(uint8(3)))
 	if _timestampErr != nil {
-		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field")
+		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field of BACnetConfirmedServiceRequestAcknowledgeAlarm")
 	}
 	timestamp := _timestamp.(BACnetTimeStampEnclosed)
 	if closeErr := readBuffer.CloseContext("timestamp"); closeErr != nil {
@@ -247,7 +247,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 	}
 	_acknowledgmentSource, _acknowledgmentSourceErr := BACnetContextTagParse(readBuffer, uint8(uint8(4)), BACnetDataType(BACnetDataType_CHARACTER_STRING))
 	if _acknowledgmentSourceErr != nil {
-		return nil, errors.Wrap(_acknowledgmentSourceErr, "Error parsing 'acknowledgmentSource' field")
+		return nil, errors.Wrap(_acknowledgmentSourceErr, "Error parsing 'acknowledgmentSource' field of BACnetConfirmedServiceRequestAcknowledgeAlarm")
 	}
 	acknowledgmentSource := _acknowledgmentSource.(BACnetContextTagCharacterString)
 	if closeErr := readBuffer.CloseContext("acknowledgmentSource"); closeErr != nil {
@@ -260,7 +260,7 @@ func BACnetConfirmedServiceRequestAcknowledgeAlarmParse(readBuffer utils.ReadBuf
 	}
 	_timeOfAcknowledgment, _timeOfAcknowledgmentErr := BACnetTimeStampEnclosedParse(readBuffer, uint8(uint8(5)))
 	if _timeOfAcknowledgmentErr != nil {
-		return nil, errors.Wrap(_timeOfAcknowledgmentErr, "Error parsing 'timeOfAcknowledgment' field")
+		return nil, errors.Wrap(_timeOfAcknowledgmentErr, "Error parsing 'timeOfAcknowledgment' field of BACnetConfirmedServiceRequestAcknowledgeAlarm")
 	}
 	timeOfAcknowledgment := _timeOfAcknowledgment.(BACnetTimeStampEnclosed)
 	if closeErr := readBuffer.CloseContext("timeOfAcknowledgment"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go
index f8546c131..bb32b2517 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAddListElement.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestAddListElementParse(readBuffer utils.ReadBuffe
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestAddListElement")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -192,7 +192,7 @@ func BACnetConfirmedServiceRequestAddListElementParse(readBuffer utils.ReadBuffe
 	}
 	_propertyIdentifier, _propertyIdentifierErr := BACnetPropertyIdentifierTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _propertyIdentifierErr != nil {
-		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field")
+		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field of BACnetConfirmedServiceRequestAddListElement")
 	}
 	propertyIdentifier := _propertyIdentifier.(BACnetPropertyIdentifierTagged)
 	if closeErr := readBuffer.CloseContext("propertyIdentifier"); closeErr != nil {
@@ -212,7 +212,7 @@ func BACnetConfirmedServiceRequestAddListElementParse(readBuffer utils.ReadBuffe
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field")
+			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field of BACnetConfirmedServiceRequestAddListElement")
 		default:
 			arrayIndex = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("arrayIndex"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestAddListElementParse(readBuffer utils.ReadBuffe
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'listOfElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'listOfElements' field of BACnetConfirmedServiceRequestAddListElement")
 		default:
 			listOfElements = _val.(BACnetConstructedData)
 			if closeErr := readBuffer.CloseContext("listOfElements"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go
index fe5b728c2..e2fb76417 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFile.go
@@ -151,7 +151,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileParse(readBuffer utils.ReadBuffe
 	}
 	_fileIdentifier, _fileIdentifierErr := BACnetApplicationTagParse(readBuffer)
 	if _fileIdentifierErr != nil {
-		return nil, errors.Wrap(_fileIdentifierErr, "Error parsing 'fileIdentifier' field")
+		return nil, errors.Wrap(_fileIdentifierErr, "Error parsing 'fileIdentifier' field of BACnetConfirmedServiceRequestAtomicReadFile")
 	}
 	fileIdentifier := _fileIdentifier.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("fileIdentifier"); closeErr != nil {
@@ -164,7 +164,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileParse(readBuffer utils.ReadBuffe
 	}
 	_accessMethod, _accessMethodErr := BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParse(readBuffer)
 	if _accessMethodErr != nil {
-		return nil, errors.Wrap(_accessMethodErr, "Error parsing 'accessMethod' field")
+		return nil, errors.Wrap(_accessMethodErr, "Error parsing 'accessMethod' field of BACnetConfirmedServiceRequestAtomicReadFile")
 	}
 	accessMethod := _accessMethod.(BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord)
 	if closeErr := readBuffer.CloseContext("accessMethod"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go
index e1412358a..e359414ff 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileRecord.go
@@ -150,7 +150,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileRecordParse(readBuffer utils.Rea
 	}
 	_fileStartRecord, _fileStartRecordErr := BACnetApplicationTagParse(readBuffer)
 	if _fileStartRecordErr != nil {
-		return nil, errors.Wrap(_fileStartRecordErr, "Error parsing 'fileStartRecord' field")
+		return nil, errors.Wrap(_fileStartRecordErr, "Error parsing 'fileStartRecord' field of BACnetConfirmedServiceRequestAtomicReadFileRecord")
 	}
 	fileStartRecord := _fileStartRecord.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("fileStartRecord"); closeErr != nil {
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileRecordParse(readBuffer utils.Rea
 	}
 	_requestRecordCount, _requestRecordCountErr := BACnetApplicationTagParse(readBuffer)
 	if _requestRecordCountErr != nil {
-		return nil, errors.Wrap(_requestRecordCountErr, "Error parsing 'requestRecordCount' field")
+		return nil, errors.Wrap(_requestRecordCountErr, "Error parsing 'requestRecordCount' field of BACnetConfirmedServiceRequestAtomicReadFileRecord")
 	}
 	requestRecordCount := _requestRecordCount.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("requestRecordCount"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go
index 680cf2c97..c77d13225 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStream.go
@@ -150,7 +150,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamParse(readBuffer utils.Rea
 	}
 	_fileStartPosition, _fileStartPositionErr := BACnetApplicationTagParse(readBuffer)
 	if _fileStartPositionErr != nil {
-		return nil, errors.Wrap(_fileStartPositionErr, "Error parsing 'fileStartPosition' field")
+		return nil, errors.Wrap(_fileStartPositionErr, "Error parsing 'fileStartPosition' field of BACnetConfirmedServiceRequestAtomicReadFileStream")
 	}
 	fileStartPosition := _fileStartPosition.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("fileStartPosition"); closeErr != nil {
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamParse(readBuffer utils.Rea
 	}
 	_requestOctetCount, _requestOctetCountErr := BACnetApplicationTagParse(readBuffer)
 	if _requestOctetCountErr != nil {
-		return nil, errors.Wrap(_requestOctetCountErr, "Error parsing 'requestOctetCount' field")
+		return nil, errors.Wrap(_requestOctetCountErr, "Error parsing 'requestOctetCount' field of BACnetConfirmedServiceRequestAtomicReadFileStream")
 	}
 	requestOctetCount := _requestOctetCount.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("requestOctetCount"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
index 14b43f7b0..715cbf90b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
@@ -171,7 +171,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParse(readBuffer u
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(peekedTagHeader.GetActualTagNumber()))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -201,7 +201,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParse(readBuffer u
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordChildSerializeRequirement)
 
@@ -211,7 +211,7 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParse(readBuffer u
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(peekedTagHeader.GetActualTagNumber()))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go
index cfc3b365f..8388c972f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicWriteFile.go
@@ -190,7 +190,7 @@ func BACnetConfirmedServiceRequestAtomicWriteFileParse(readBuffer utils.ReadBuff
 	}
 	_deviceIdentifier, _deviceIdentifierErr := BACnetApplicationTagParse(readBuffer)
 	if _deviceIdentifierErr != nil {
-		return nil, errors.Wrap(_deviceIdentifierErr, "Error parsing 'deviceIdentifier' field")
+		return nil, errors.Wrap(_deviceIdentifierErr, "Error parsing 'deviceIdentifier' field of BACnetConfirmedServiceRequestAtomicWriteFile")
 	}
 	deviceIdentifier := _deviceIdentifier.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("deviceIdentifier"); closeErr != nil {
@@ -210,7 +210,7 @@ func BACnetConfirmedServiceRequestAtomicWriteFileParse(readBuffer utils.ReadBuff
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'openingTag' field")
+			return nil, errors.Wrap(_err, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestAtomicWriteFile")
 		default:
 			openingTag = _val.(BACnetOpeningTag)
 			if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -225,7 +225,7 @@ func BACnetConfirmedServiceRequestAtomicWriteFileParse(readBuffer utils.ReadBuff
 	}
 	_fileStartPosition, _fileStartPositionErr := BACnetApplicationTagParse(readBuffer)
 	if _fileStartPositionErr != nil {
-		return nil, errors.Wrap(_fileStartPositionErr, "Error parsing 'fileStartPosition' field")
+		return nil, errors.Wrap(_fileStartPositionErr, "Error parsing 'fileStartPosition' field of BACnetConfirmedServiceRequestAtomicWriteFile")
 	}
 	fileStartPosition := _fileStartPosition.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("fileStartPosition"); closeErr != nil {
@@ -238,7 +238,7 @@ func BACnetConfirmedServiceRequestAtomicWriteFileParse(readBuffer utils.ReadBuff
 	}
 	_fileData, _fileDataErr := BACnetApplicationTagParse(readBuffer)
 	if _fileDataErr != nil {
-		return nil, errors.Wrap(_fileDataErr, "Error parsing 'fileData' field")
+		return nil, errors.Wrap(_fileDataErr, "Error parsing 'fileData' field of BACnetConfirmedServiceRequestAtomicWriteFile")
 	}
 	fileData := _fileData.(BACnetApplicationTagOctetString)
 	if closeErr := readBuffer.CloseContext("fileData"); closeErr != nil {
@@ -258,7 +258,7 @@ func BACnetConfirmedServiceRequestAtomicWriteFileParse(readBuffer utils.ReadBuff
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'closingTag' field")
+			return nil, errors.Wrap(_err, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestAtomicWriteFile")
 		default:
 			closingTag = _val.(BACnetClosingTag)
 			if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go
index 61d09f8e3..25e0d5be4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAuthenticate.go
@@ -142,7 +142,7 @@ func BACnetConfirmedServiceRequestAuthenticateParse(readBuffer utils.ReadBuffer,
 	numberOfBytesbytesOfRemovedService := int(serviceRequestPayloadLength)
 	bytesOfRemovedService, _readArrayErr := readBuffer.ReadByteArray("bytesOfRemovedService", numberOfBytesbytesOfRemovedService)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'bytesOfRemovedService' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'bytesOfRemovedService' field of BACnetConfirmedServiceRequestAuthenticate")
 	}
 
 	if closeErr := readBuffer.CloseContext("BACnetConfirmedServiceRequestAuthenticate"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
index 0e97e9267..0280254ad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotification.go
@@ -184,7 +184,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(readBuffer utils
 	}
 	_subscriberProcessIdentifier, _subscriberProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _subscriberProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field")
+		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field of BACnetConfirmedServiceRequestConfirmedCOVNotification")
 	}
 	subscriberProcessIdentifier := _subscriberProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("subscriberProcessIdentifier"); closeErr != nil {
@@ -197,7 +197,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(readBuffer utils
 	}
 	_initiatingDeviceIdentifier, _initiatingDeviceIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _initiatingDeviceIdentifierErr != nil {
-		return nil, errors.Wrap(_initiatingDeviceIdentifierErr, "Error parsing 'initiatingDeviceIdentifier' field")
+		return nil, errors.Wrap(_initiatingDeviceIdentifierErr, "Error parsing 'initiatingDeviceIdentifier' field of BACnetConfirmedServiceRequestConfirmedCOVNotification")
 	}
 	initiatingDeviceIdentifier := _initiatingDeviceIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("initiatingDeviceIdentifier"); closeErr != nil {
@@ -210,7 +210,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(readBuffer utils
 	}
 	_monitoredObjectIdentifier, _monitoredObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _monitoredObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field")
+		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field of BACnetConfirmedServiceRequestConfirmedCOVNotification")
 	}
 	monitoredObjectIdentifier := _monitoredObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("monitoredObjectIdentifier"); closeErr != nil {
@@ -223,7 +223,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(readBuffer utils
 	}
 	_lifetimeInSeconds, _lifetimeInSecondsErr := BACnetContextTagParse(readBuffer, uint8(uint8(3)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _lifetimeInSecondsErr != nil {
-		return nil, errors.Wrap(_lifetimeInSecondsErr, "Error parsing 'lifetimeInSeconds' field")
+		return nil, errors.Wrap(_lifetimeInSecondsErr, "Error parsing 'lifetimeInSeconds' field of BACnetConfirmedServiceRequestConfirmedCOVNotification")
 	}
 	lifetimeInSeconds := _lifetimeInSeconds.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("lifetimeInSeconds"); closeErr != nil {
@@ -236,7 +236,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationParse(readBuffer utils
 	}
 	_listOfValues, _listOfValuesErr := BACnetPropertyValuesParse(readBuffer, uint8(uint8(4)), BACnetObjectType(monitoredObjectIdentifier.GetObjectType()))
 	if _listOfValuesErr != nil {
-		return nil, errors.Wrap(_listOfValuesErr, "Error parsing 'listOfValues' field")
+		return nil, errors.Wrap(_listOfValuesErr, "Error parsing 'listOfValues' field of BACnetConfirmedServiceRequestConfirmedCOVNotification")
 	}
 	listOfValues := _listOfValues.(BACnetPropertyValues)
 	if closeErr := readBuffer.CloseContext("listOfValues"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go
index e64ee1699..9ba6ba50e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple.go
@@ -188,7 +188,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationMultipleParse(readBuff
 	}
 	_subscriberProcessIdentifier, _subscriberProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _subscriberProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field")
+		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field of BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple")
 	}
 	subscriberProcessIdentifier := _subscriberProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("subscriberProcessIdentifier"); closeErr != nil {
@@ -201,7 +201,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationMultipleParse(readBuff
 	}
 	_initiatingDeviceIdentifier, _initiatingDeviceIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _initiatingDeviceIdentifierErr != nil {
-		return nil, errors.Wrap(_initiatingDeviceIdentifierErr, "Error parsing 'initiatingDeviceIdentifier' field")
+		return nil, errors.Wrap(_initiatingDeviceIdentifierErr, "Error parsing 'initiatingDeviceIdentifier' field of BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple")
 	}
 	initiatingDeviceIdentifier := _initiatingDeviceIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("initiatingDeviceIdentifier"); closeErr != nil {
@@ -214,7 +214,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationMultipleParse(readBuff
 	}
 	_timeRemaining, _timeRemainingErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _timeRemainingErr != nil {
-		return nil, errors.Wrap(_timeRemainingErr, "Error parsing 'timeRemaining' field")
+		return nil, errors.Wrap(_timeRemainingErr, "Error parsing 'timeRemaining' field of BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple")
 	}
 	timeRemaining := _timeRemaining.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("timeRemaining"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationMultipleParse(readBuff
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'timestamp' field")
+			return nil, errors.Wrap(_err, "Error parsing 'timestamp' field of BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple")
 		default:
 			timestamp = _val.(BACnetTimeStampEnclosed)
 			if closeErr := readBuffer.CloseContext("timestamp"); closeErr != nil {
@@ -249,7 +249,7 @@ func BACnetConfirmedServiceRequestConfirmedCOVNotificationMultipleParse(readBuff
 	}
 	_listOfCovNotifications, _listOfCovNotificationsErr := ListOfCovNotificationsListParse(readBuffer, uint8(uint8(4)))
 	if _listOfCovNotificationsErr != nil {
-		return nil, errors.Wrap(_listOfCovNotificationsErr, "Error parsing 'listOfCovNotifications' field")
+		return nil, errors.Wrap(_listOfCovNotificationsErr, "Error parsing 'listOfCovNotifications' field of BACnetConfirmedServiceRequestConfirmedCOVNotificationMultiple")
 	}
 	listOfCovNotifications := _listOfCovNotifications.(ListOfCovNotificationsList)
 	if closeErr := readBuffer.CloseContext("listOfCovNotifications"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go
index c3896bca9..a0645534b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedEventNotification.go
@@ -282,7 +282,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_processIdentifier, _processIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _processIdentifierErr != nil {
-		return nil, errors.Wrap(_processIdentifierErr, "Error parsing 'processIdentifier' field")
+		return nil, errors.Wrap(_processIdentifierErr, "Error parsing 'processIdentifier' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	processIdentifier := _processIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("processIdentifier"); closeErr != nil {
@@ -295,7 +295,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_initiatingDeviceIdentifier, _initiatingDeviceIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _initiatingDeviceIdentifierErr != nil {
-		return nil, errors.Wrap(_initiatingDeviceIdentifierErr, "Error parsing 'initiatingDeviceIdentifier' field")
+		return nil, errors.Wrap(_initiatingDeviceIdentifierErr, "Error parsing 'initiatingDeviceIdentifier' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	initiatingDeviceIdentifier := _initiatingDeviceIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("initiatingDeviceIdentifier"); closeErr != nil {
@@ -308,7 +308,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_eventObjectIdentifier, _eventObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _eventObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_eventObjectIdentifierErr, "Error parsing 'eventObjectIdentifier' field")
+		return nil, errors.Wrap(_eventObjectIdentifierErr, "Error parsing 'eventObjectIdentifier' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	eventObjectIdentifier := _eventObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("eventObjectIdentifier"); closeErr != nil {
@@ -321,7 +321,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_timestamp, _timestampErr := BACnetTimeStampEnclosedParse(readBuffer, uint8(uint8(3)))
 	if _timestampErr != nil {
-		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field")
+		return nil, errors.Wrap(_timestampErr, "Error parsing 'timestamp' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	timestamp := _timestamp.(BACnetTimeStampEnclosed)
 	if closeErr := readBuffer.CloseContext("timestamp"); closeErr != nil {
@@ -334,7 +334,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_notificationClass, _notificationClassErr := BACnetContextTagParse(readBuffer, uint8(uint8(4)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _notificationClassErr != nil {
-		return nil, errors.Wrap(_notificationClassErr, "Error parsing 'notificationClass' field")
+		return nil, errors.Wrap(_notificationClassErr, "Error parsing 'notificationClass' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	notificationClass := _notificationClass.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("notificationClass"); closeErr != nil {
@@ -347,7 +347,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_priority, _priorityErr := BACnetContextTagParse(readBuffer, uint8(uint8(5)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _priorityErr != nil {
-		return nil, errors.Wrap(_priorityErr, "Error parsing 'priority' field")
+		return nil, errors.Wrap(_priorityErr, "Error parsing 'priority' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	priority := _priority.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("priority"); closeErr != nil {
@@ -360,7 +360,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_eventType, _eventTypeErr := BACnetEventTypeTaggedParse(readBuffer, uint8(uint8(6)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _eventTypeErr != nil {
-		return nil, errors.Wrap(_eventTypeErr, "Error parsing 'eventType' field")
+		return nil, errors.Wrap(_eventTypeErr, "Error parsing 'eventType' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	eventType := _eventType.(BACnetEventTypeTagged)
 	if closeErr := readBuffer.CloseContext("eventType"); closeErr != nil {
@@ -380,7 +380,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'messageText' field")
+			return nil, errors.Wrap(_err, "Error parsing 'messageText' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 		default:
 			messageText = _val.(BACnetContextTagCharacterString)
 			if closeErr := readBuffer.CloseContext("messageText"); closeErr != nil {
@@ -395,7 +395,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_notifyType, _notifyTypeErr := BACnetNotifyTypeTaggedParse(readBuffer, uint8(uint8(8)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _notifyTypeErr != nil {
-		return nil, errors.Wrap(_notifyTypeErr, "Error parsing 'notifyType' field")
+		return nil, errors.Wrap(_notifyTypeErr, "Error parsing 'notifyType' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	notifyType := _notifyType.(BACnetNotifyTypeTagged)
 	if closeErr := readBuffer.CloseContext("notifyType"); closeErr != nil {
@@ -415,7 +415,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'ackRequired' field")
+			return nil, errors.Wrap(_err, "Error parsing 'ackRequired' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 		default:
 			ackRequired = _val.(BACnetContextTagBoolean)
 			if closeErr := readBuffer.CloseContext("ackRequired"); closeErr != nil {
@@ -437,7 +437,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'fromState' field")
+			return nil, errors.Wrap(_err, "Error parsing 'fromState' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 		default:
 			fromState = _val.(BACnetEventStateTagged)
 			if closeErr := readBuffer.CloseContext("fromState"); closeErr != nil {
@@ -452,7 +452,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 	}
 	_toState, _toStateErr := BACnetEventStateTaggedParse(readBuffer, uint8(uint8(11)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _toStateErr != nil {
-		return nil, errors.Wrap(_toStateErr, "Error parsing 'toState' field")
+		return nil, errors.Wrap(_toStateErr, "Error parsing 'toState' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 	}
 	toState := _toState.(BACnetEventStateTagged)
 	if closeErr := readBuffer.CloseContext("toState"); closeErr != nil {
@@ -472,7 +472,7 @@ func BACnetConfirmedServiceRequestConfirmedEventNotificationParse(readBuffer uti
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'eventValues' field")
+			return nil, errors.Wrap(_err, "Error parsing 'eventValues' field of BACnetConfirmedServiceRequestConfirmedEventNotification")
 		default:
 			eventValues = _val.(BACnetNotificationParameters)
 			if closeErr := readBuffer.CloseContext("eventValues"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go
index 2afab5e8f..82e3dd05d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedPrivateTransfer.go
@@ -166,7 +166,7 @@ func BACnetConfirmedServiceRequestConfirmedPrivateTransferParse(readBuffer utils
 	}
 	_vendorId, _vendorIdErr := BACnetVendorIdTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _vendorIdErr != nil {
-		return nil, errors.Wrap(_vendorIdErr, "Error parsing 'vendorId' field")
+		return nil, errors.Wrap(_vendorIdErr, "Error parsing 'vendorId' field of BACnetConfirmedServiceRequestConfirmedPrivateTransfer")
 	}
 	vendorId := _vendorId.(BACnetVendorIdTagged)
 	if closeErr := readBuffer.CloseContext("vendorId"); closeErr != nil {
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestConfirmedPrivateTransferParse(readBuffer utils
 	}
 	_serviceNumber, _serviceNumberErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _serviceNumberErr != nil {
-		return nil, errors.Wrap(_serviceNumberErr, "Error parsing 'serviceNumber' field")
+		return nil, errors.Wrap(_serviceNumberErr, "Error parsing 'serviceNumber' field of BACnetConfirmedServiceRequestConfirmedPrivateTransfer")
 	}
 	serviceNumber := _serviceNumber.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("serviceNumber"); closeErr != nil {
@@ -199,7 +199,7 @@ func BACnetConfirmedServiceRequestConfirmedPrivateTransferParse(readBuffer utils
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'serviceParameters' field")
+			return nil, errors.Wrap(_err, "Error parsing 'serviceParameters' field of BACnetConfirmedServiceRequestConfirmedPrivateTransfer")
 		default:
 			serviceParameters = _val.(BACnetConstructedData)
 			if closeErr := readBuffer.CloseContext("serviceParameters"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go
index 422310040..3d27477d5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessage.go
@@ -177,7 +177,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageParse(readBuffer utils.Rea
 	}
 	_textMessageSourceDevice, _textMessageSourceDeviceErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _textMessageSourceDeviceErr != nil {
-		return nil, errors.Wrap(_textMessageSourceDeviceErr, "Error parsing 'textMessageSourceDevice' field")
+		return nil, errors.Wrap(_textMessageSourceDeviceErr, "Error parsing 'textMessageSourceDevice' field of BACnetConfirmedServiceRequestConfirmedTextMessage")
 	}
 	textMessageSourceDevice := _textMessageSourceDevice.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("textMessageSourceDevice"); closeErr != nil {
@@ -197,7 +197,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'messageClass' field")
+			return nil, errors.Wrap(_err, "Error parsing 'messageClass' field of BACnetConfirmedServiceRequestConfirmedTextMessage")
 		default:
 			messageClass = _val.(BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass)
 			if closeErr := readBuffer.CloseContext("messageClass"); closeErr != nil {
@@ -212,7 +212,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageParse(readBuffer utils.Rea
 	}
 	_messagePriority, _messagePriorityErr := BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTaggedParse(readBuffer, uint8(uint8(2)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _messagePriorityErr != nil {
-		return nil, errors.Wrap(_messagePriorityErr, "Error parsing 'messagePriority' field")
+		return nil, errors.Wrap(_messagePriorityErr, "Error parsing 'messagePriority' field of BACnetConfirmedServiceRequestConfirmedTextMessage")
 	}
 	messagePriority := _messagePriority.(BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged)
 	if closeErr := readBuffer.CloseContext("messagePriority"); closeErr != nil {
@@ -225,7 +225,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageParse(readBuffer utils.Rea
 	}
 	_message, _messageErr := BACnetContextTagParse(readBuffer, uint8(uint8(3)), BACnetDataType(BACnetDataType_CHARACTER_STRING))
 	if _messageErr != nil {
-		return nil, errors.Wrap(_messageErr, "Error parsing 'message' field")
+		return nil, errors.Wrap(_messageErr, "Error parsing 'message' field of BACnetConfirmedServiceRequestConfirmedTextMessage")
 	}
 	message := _message.(BACnetContextTagCharacterString)
 	if closeErr := readBuffer.CloseContext("message"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
index a27c3ddd6..1eebfabad 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
@@ -166,7 +166,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassParse(readBuff
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -204,7 +204,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassParse(readBuff
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassChildSerializeRequirement)
 
@@ -214,7 +214,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassParse(readBuff
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go
index 10be42ab1..7dbb22727 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter.go
@@ -139,7 +139,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacterParse
 	}
 	_characterValue, _characterValueErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_CHARACTER_STRING))
 	if _characterValueErr != nil {
-		return nil, errors.Wrap(_characterValueErr, "Error parsing 'characterValue' field")
+		return nil, errors.Wrap(_characterValueErr, "Error parsing 'characterValue' field of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter")
 	}
 	characterValue := _characterValue.(BACnetContextTagCharacterString)
 	if closeErr := readBuffer.CloseContext("characterValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go
index b35737948..8bb236295 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric.go
@@ -139,7 +139,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumericParse(r
 	}
 	_numericValue, _numericValueErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _numericValueErr != nil {
-		return nil, errors.Wrap(_numericValueErr, "Error parsing 'numericValue' field")
+		return nil, errors.Wrap(_numericValueErr, "Error parsing 'numericValue' field of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassNumeric")
 	}
 	numericValue := _numericValue.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("numericValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
index bdeb03527..fb5490423 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged.go
@@ -126,7 +126,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTaggedParse
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTaggedParse
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriority_NORMAL)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriorityTagged")
 	}
 	value := _value.(BACnetConfirmedServiceRequestConfirmedTextMessageMessagePriority)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go
index 17fa0c443..4fc0d4d8a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObject.go
@@ -155,7 +155,7 @@ func BACnetConfirmedServiceRequestCreateObjectParse(readBuffer utils.ReadBuffer,
 	}
 	_objectSpecifier, _objectSpecifierErr := BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParse(readBuffer, uint8(uint8(0)))
 	if _objectSpecifierErr != nil {
-		return nil, errors.Wrap(_objectSpecifierErr, "Error parsing 'objectSpecifier' field")
+		return nil, errors.Wrap(_objectSpecifierErr, "Error parsing 'objectSpecifier' field of BACnetConfirmedServiceRequestCreateObject")
 	}
 	objectSpecifier := _objectSpecifier.(BACnetConfirmedServiceRequestCreateObjectObjectSpecifier)
 	if closeErr := readBuffer.CloseContext("objectSpecifier"); closeErr != nil {
@@ -175,7 +175,7 @@ func BACnetConfirmedServiceRequestCreateObjectParse(readBuffer utils.ReadBuffer,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'listOfValues' field")
+			return nil, errors.Wrap(_err, "Error parsing 'listOfValues' field of BACnetConfirmedServiceRequestCreateObject")
 		default:
 			listOfValues = _val.(BACnetPropertyValues)
 			if closeErr := readBuffer.CloseContext("listOfValues"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
index ac3ebc3f7..bfb96d121 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestCreateObjectObjectSpecifier.go
@@ -196,7 +196,7 @@ func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParse(readBuffer ut
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestCreateObjectObjectSpecifier")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParse(readBuffer ut
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'rawObjectType' field")
+			return nil, errors.Wrap(_err, "Error parsing 'rawObjectType' field of BACnetConfirmedServiceRequestCreateObjectObjectSpecifier")
 		default:
 			rawObjectType = _val.(BACnetContextTagEnumerated)
 			if closeErr := readBuffer.CloseContext("rawObjectType"); closeErr != nil {
@@ -248,7 +248,7 @@ func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParse(readBuffer ut
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'objectIdentifier' field")
+			return nil, errors.Wrap(_err, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestCreateObjectObjectSpecifier")
 		default:
 			objectIdentifier = _val.(BACnetContextTagObjectIdentifier)
 			if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -273,7 +273,7 @@ func BACnetConfirmedServiceRequestCreateObjectObjectSpecifierParse(readBuffer ut
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestCreateObjectObjectSpecifier")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go
index 4bad9cab5..91f6c2f4f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeleteObject.go
@@ -140,7 +140,7 @@ func BACnetConfirmedServiceRequestDeleteObjectParse(readBuffer utils.ReadBuffer,
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetApplicationTagParse(readBuffer)
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestDeleteObject")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go
index cce476dbb..d1a7fd9cf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControl.go
@@ -175,7 +175,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlParse(readBuffer uti
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'timeDuration' field")
+			return nil, errors.Wrap(_err, "Error parsing 'timeDuration' field of BACnetConfirmedServiceRequestDeviceCommunicationControl")
 		default:
 			timeDuration = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("timeDuration"); closeErr != nil {
@@ -190,7 +190,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlParse(readBuffer uti
 	}
 	_enableDisable, _enableDisableErr := BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _enableDisableErr != nil {
-		return nil, errors.Wrap(_enableDisableErr, "Error parsing 'enableDisable' field")
+		return nil, errors.Wrap(_enableDisableErr, "Error parsing 'enableDisable' field of BACnetConfirmedServiceRequestDeviceCommunicationControl")
 	}
 	enableDisable := _enableDisable.(BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged)
 	if closeErr := readBuffer.CloseContext("enableDisable"); closeErr != nil {
@@ -210,7 +210,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlParse(readBuffer uti
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'password' field")
+			return nil, errors.Wrap(_err, "Error parsing 'password' field of BACnetConfirmedServiceRequestDeviceCommunicationControl")
 		default:
 			password = _val.(BACnetContextTagCharacterString)
 			if closeErr := readBuffer.CloseContext("password"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
index 77fb95e9d..f9a1a8c48 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged.go
@@ -126,7 +126,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTaggedP
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTaggedP
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisable_ENABLE)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisableTagged")
 	}
 	value := _value.(BACnetConfirmedServiceRequestDeviceCommunicationControlEnableDisable)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go
index e5b909003..b89af7df2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummary.go
@@ -207,7 +207,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 	}
 	_acknowledgmentFilter, _acknowledgmentFilterErr := BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _acknowledgmentFilterErr != nil {
-		return nil, errors.Wrap(_acknowledgmentFilterErr, "Error parsing 'acknowledgmentFilter' field")
+		return nil, errors.Wrap(_acknowledgmentFilterErr, "Error parsing 'acknowledgmentFilter' field of BACnetConfirmedServiceRequestGetEnrollmentSummary")
 	}
 	acknowledgmentFilter := _acknowledgmentFilter.(BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged)
 	if closeErr := readBuffer.CloseContext("acknowledgmentFilter"); closeErr != nil {
@@ -227,7 +227,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'enrollmentFilter' field")
+			return nil, errors.Wrap(_err, "Error parsing 'enrollmentFilter' field of BACnetConfirmedServiceRequestGetEnrollmentSummary")
 		default:
 			enrollmentFilter = _val.(BACnetRecipientProcessEnclosed)
 			if closeErr := readBuffer.CloseContext("enrollmentFilter"); closeErr != nil {
@@ -249,7 +249,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'eventStateFilter' field")
+			return nil, errors.Wrap(_err, "Error parsing 'eventStateFilter' field of BACnetConfirmedServiceRequestGetEnrollmentSummary")
 		default:
 			eventStateFilter = _val.(BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged)
 			if closeErr := readBuffer.CloseContext("eventStateFilter"); closeErr != nil {
@@ -271,7 +271,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'eventTypeFilter' field")
+			return nil, errors.Wrap(_err, "Error parsing 'eventTypeFilter' field of BACnetConfirmedServiceRequestGetEnrollmentSummary")
 		default:
 			eventTypeFilter = _val.(BACnetEventTypeTagged)
 			if closeErr := readBuffer.CloseContext("eventTypeFilter"); closeErr != nil {
@@ -293,7 +293,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'priorityFilter' field")
+			return nil, errors.Wrap(_err, "Error parsing 'priorityFilter' field of BACnetConfirmedServiceRequestGetEnrollmentSummary")
 		default:
 			priorityFilter = _val.(BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter)
 			if closeErr := readBuffer.CloseContext("priorityFilter"); closeErr != nil {
@@ -315,7 +315,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'notificationClassFilter' field")
+			return nil, errors.Wrap(_err, "Error parsing 'notificationClassFilter' field of BACnetConfirmedServiceRequestGetEnrollmentSummary")
 		default:
 			notificationClassFilter = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("notificationClassFilter"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
index 4beebe654..ba6cb77fd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged.go
@@ -126,7 +126,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagge
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagge
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilter_ALL)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilterTagged")
 	}
 	value := _value.(BACnetConfirmedServiceRequestGetEnrollmentSummaryAcknowledgementFilter)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
index cd7793c13..5eb2a9989 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged.go
@@ -126,7 +126,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTaggedPars
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTaggedPars
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilter_OFFNORMAL)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilterTagged")
 	}
 	value := _value.(BACnetConfirmedServiceRequestGetEnrollmentSummaryEventStateFilter)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
index 9641e6f65..7aab0d954 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter.go
@@ -145,7 +145,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParse(readBu
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -158,7 +158,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParse(readBu
 	}
 	_minPriority, _minPriorityErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _minPriorityErr != nil {
-		return nil, errors.Wrap(_minPriorityErr, "Error parsing 'minPriority' field")
+		return nil, errors.Wrap(_minPriorityErr, "Error parsing 'minPriority' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter")
 	}
 	minPriority := _minPriority.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("minPriority"); closeErr != nil {
@@ -171,7 +171,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParse(readBu
 	}
 	_maxPriority, _maxPriorityErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _maxPriorityErr != nil {
-		return nil, errors.Wrap(_maxPriorityErr, "Error parsing 'maxPriority' field")
+		return nil, errors.Wrap(_maxPriorityErr, "Error parsing 'maxPriority' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter")
 	}
 	maxPriority := _maxPriority.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("maxPriority"); closeErr != nil {
@@ -184,7 +184,7 @@ func BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilterParse(readBu
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestGetEnrollmentSummaryPriorityFilter")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go
index a3c25be7c..7c1aad2f2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestGetEventInformation.go
@@ -151,7 +151,7 @@ func BACnetConfirmedServiceRequestGetEventInformationParse(readBuffer utils.Read
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'lastReceivedObjectIdentifier' field")
+			return nil, errors.Wrap(_err, "Error parsing 'lastReceivedObjectIdentifier' field of BACnetConfirmedServiceRequestGetEventInformation")
 		default:
 			lastReceivedObjectIdentifier = _val.(BACnetContextTagObjectIdentifier)
 			if closeErr := readBuffer.CloseContext("lastReceivedObjectIdentifier"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go
index 1e4c94869..704345848 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestLifeSafetyOperation.go
@@ -177,7 +177,7 @@ func BACnetConfirmedServiceRequestLifeSafetyOperationParse(readBuffer utils.Read
 	}
 	_requestingProcessIdentifier, _requestingProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _requestingProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_requestingProcessIdentifierErr, "Error parsing 'requestingProcessIdentifier' field")
+		return nil, errors.Wrap(_requestingProcessIdentifierErr, "Error parsing 'requestingProcessIdentifier' field of BACnetConfirmedServiceRequestLifeSafetyOperation")
 	}
 	requestingProcessIdentifier := _requestingProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("requestingProcessIdentifier"); closeErr != nil {
@@ -190,7 +190,7 @@ func BACnetConfirmedServiceRequestLifeSafetyOperationParse(readBuffer utils.Read
 	}
 	_requestingSource, _requestingSourceErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_CHARACTER_STRING))
 	if _requestingSourceErr != nil {
-		return nil, errors.Wrap(_requestingSourceErr, "Error parsing 'requestingSource' field")
+		return nil, errors.Wrap(_requestingSourceErr, "Error parsing 'requestingSource' field of BACnetConfirmedServiceRequestLifeSafetyOperation")
 	}
 	requestingSource := _requestingSource.(BACnetContextTagCharacterString)
 	if closeErr := readBuffer.CloseContext("requestingSource"); closeErr != nil {
@@ -203,7 +203,7 @@ func BACnetConfirmedServiceRequestLifeSafetyOperationParse(readBuffer utils.Read
 	}
 	_request, _requestErr := BACnetLifeSafetyOperationTaggedParse(readBuffer, uint8(uint8(2)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _requestErr != nil {
-		return nil, errors.Wrap(_requestErr, "Error parsing 'request' field")
+		return nil, errors.Wrap(_requestErr, "Error parsing 'request' field of BACnetConfirmedServiceRequestLifeSafetyOperation")
 	}
 	request := _request.(BACnetLifeSafetyOperationTagged)
 	if closeErr := readBuffer.CloseContext("request"); closeErr != nil {
@@ -223,7 +223,7 @@ func BACnetConfirmedServiceRequestLifeSafetyOperationParse(readBuffer utils.Read
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'objectIdentifier' field")
+			return nil, errors.Wrap(_err, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestLifeSafetyOperation")
 		default:
 			objectIdentifier = _val.(BACnetContextTagObjectIdentifier)
 			if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
index e3baf1a6f..20d678b97 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadProperty.go
@@ -166,7 +166,7 @@ func BACnetConfirmedServiceRequestReadPropertyParse(readBuffer utils.ReadBuffer,
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestReadProperty")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestReadPropertyParse(readBuffer utils.ReadBuffer,
 	}
 	_propertyIdentifier, _propertyIdentifierErr := BACnetPropertyIdentifierTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _propertyIdentifierErr != nil {
-		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field")
+		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field of BACnetConfirmedServiceRequestReadProperty")
 	}
 	propertyIdentifier := _propertyIdentifier.(BACnetPropertyIdentifierTagged)
 	if closeErr := readBuffer.CloseContext("propertyIdentifier"); closeErr != nil {
@@ -199,7 +199,7 @@ func BACnetConfirmedServiceRequestReadPropertyParse(readBuffer utils.ReadBuffer,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field")
+			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field of BACnetConfirmedServiceRequestReadProperty")
 		default:
 			arrayIndex = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("arrayIndex"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go
index bb5dea1a7..60eeef895 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyConditional.go
@@ -142,7 +142,7 @@ func BACnetConfirmedServiceRequestReadPropertyConditionalParse(readBuffer utils.
 	numberOfBytesbytesOfRemovedService := int(serviceRequestPayloadLength)
 	bytesOfRemovedService, _readArrayErr := readBuffer.ReadByteArray("bytesOfRemovedService", numberOfBytesbytesOfRemovedService)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'bytesOfRemovedService' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'bytesOfRemovedService' field of BACnetConfirmedServiceRequestReadPropertyConditional")
 	}
 
 	if closeErr := readBuffer.CloseContext("BACnetConfirmedServiceRequestReadPropertyConditional"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go
index 1564084ec..a3499e291 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadPropertyMultiple.go
@@ -153,7 +153,7 @@ func BACnetConfirmedServiceRequestReadPropertyMultipleParse(readBuffer utils.Rea
 		for positionAware.GetPos() < _dataEndPos {
 			_item, _err := BACnetReadAccessSpecificationParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'data' field")
+				return nil, errors.Wrap(_err, "Error parsing 'data' field of BACnetConfirmedServiceRequestReadPropertyMultiple")
 			}
 			data = append(data, _item.(BACnetReadAccessSpecification))
 		}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go
index 1bbe5a454..fe187a3c6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRange.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestReadRangeParse(readBuffer utils.ReadBuffer, se
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestReadRange")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -192,7 +192,7 @@ func BACnetConfirmedServiceRequestReadRangeParse(readBuffer utils.ReadBuffer, se
 	}
 	_propertyIdentifier, _propertyIdentifierErr := BACnetPropertyIdentifierTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _propertyIdentifierErr != nil {
-		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field")
+		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field of BACnetConfirmedServiceRequestReadRange")
 	}
 	propertyIdentifier := _propertyIdentifier.(BACnetPropertyIdentifierTagged)
 	if closeErr := readBuffer.CloseContext("propertyIdentifier"); closeErr != nil {
@@ -212,7 +212,7 @@ func BACnetConfirmedServiceRequestReadRangeParse(readBuffer utils.ReadBuffer, se
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'propertyArrayIndex' field")
+			return nil, errors.Wrap(_err, "Error parsing 'propertyArrayIndex' field of BACnetConfirmedServiceRequestReadRange")
 		default:
 			propertyArrayIndex = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("propertyArrayIndex"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestReadRangeParse(readBuffer utils.ReadBuffer, se
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'readRange' field")
+			return nil, errors.Wrap(_err, "Error parsing 'readRange' field of BACnetConfirmedServiceRequestReadRange")
 		default:
 			readRange = _val.(BACnetConfirmedServiceRequestReadRangeRange)
 			if closeErr := readBuffer.CloseContext("readRange"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
index 2c5f596d0..46989c73f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
@@ -171,7 +171,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeParse(readBuffer utils.ReadBuffe
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(peekedTagHeader.GetActualTagNumber()))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestReadRangeRange")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -203,7 +203,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeParse(readBuffer utils.ReadBuffe
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestReadRangeRange.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestReadRangeRange")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestReadRangeRangeChildSerializeRequirement)
 
@@ -213,7 +213,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeParse(readBuffer utils.ReadBuffe
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(peekedTagHeader.GetActualTagNumber()))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestReadRangeRange")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go
index 49a690890..367458bd3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByPosition.go
@@ -150,7 +150,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeByPositionParse(readBuffer utils
 	}
 	_referenceIndex, _referenceIndexErr := BACnetApplicationTagParse(readBuffer)
 	if _referenceIndexErr != nil {
-		return nil, errors.Wrap(_referenceIndexErr, "Error parsing 'referenceIndex' field")
+		return nil, errors.Wrap(_referenceIndexErr, "Error parsing 'referenceIndex' field of BACnetConfirmedServiceRequestReadRangeRangeByPosition")
 	}
 	referenceIndex := _referenceIndex.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("referenceIndex"); closeErr != nil {
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeByPositionParse(readBuffer utils
 	}
 	_count, _countErr := BACnetApplicationTagParse(readBuffer)
 	if _countErr != nil {
-		return nil, errors.Wrap(_countErr, "Error parsing 'count' field")
+		return nil, errors.Wrap(_countErr, "Error parsing 'count' field of BACnetConfirmedServiceRequestReadRangeRangeByPosition")
 	}
 	count := _count.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("count"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go
index d111da641..726195c38 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber.go
@@ -150,7 +150,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumberParse(readBuffer
 	}
 	_referenceSequenceNumber, _referenceSequenceNumberErr := BACnetApplicationTagParse(readBuffer)
 	if _referenceSequenceNumberErr != nil {
-		return nil, errors.Wrap(_referenceSequenceNumberErr, "Error parsing 'referenceSequenceNumber' field")
+		return nil, errors.Wrap(_referenceSequenceNumberErr, "Error parsing 'referenceSequenceNumber' field of BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber")
 	}
 	referenceSequenceNumber := _referenceSequenceNumber.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("referenceSequenceNumber"); closeErr != nil {
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumberParse(readBuffer
 	}
 	_count, _countErr := BACnetApplicationTagParse(readBuffer)
 	if _countErr != nil {
-		return nil, errors.Wrap(_countErr, "Error parsing 'count' field")
+		return nil, errors.Wrap(_countErr, "Error parsing 'count' field of BACnetConfirmedServiceRequestReadRangeRangeBySequenceNumber")
 	}
 	count := _count.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("count"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go
index 9a85380f6..18e35485d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRangeByTime.go
@@ -150,7 +150,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeByTimeParse(readBuffer utils.Rea
 	}
 	_referenceTime, _referenceTimeErr := BACnetDateTimeParse(readBuffer)
 	if _referenceTimeErr != nil {
-		return nil, errors.Wrap(_referenceTimeErr, "Error parsing 'referenceTime' field")
+		return nil, errors.Wrap(_referenceTimeErr, "Error parsing 'referenceTime' field of BACnetConfirmedServiceRequestReadRangeRangeByTime")
 	}
 	referenceTime := _referenceTime.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("referenceTime"); closeErr != nil {
@@ -163,7 +163,7 @@ func BACnetConfirmedServiceRequestReadRangeRangeByTimeParse(readBuffer utils.Rea
 	}
 	_count, _countErr := BACnetApplicationTagParse(readBuffer)
 	if _countErr != nil {
-		return nil, errors.Wrap(_countErr, "Error parsing 'count' field")
+		return nil, errors.Wrap(_countErr, "Error parsing 'count' field of BACnetConfirmedServiceRequestReadRangeRangeByTime")
 	}
 	count := _count.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("count"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go
index 5762d7e28..b534f4803 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDevice.go
@@ -155,7 +155,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceParse(readBuffer utils.ReadB
 	}
 	_reinitializedStateOfDevice, _reinitializedStateOfDeviceErr := BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _reinitializedStateOfDeviceErr != nil {
-		return nil, errors.Wrap(_reinitializedStateOfDeviceErr, "Error parsing 'reinitializedStateOfDevice' field")
+		return nil, errors.Wrap(_reinitializedStateOfDeviceErr, "Error parsing 'reinitializedStateOfDevice' field of BACnetConfirmedServiceRequestReinitializeDevice")
 	}
 	reinitializedStateOfDevice := _reinitializedStateOfDevice.(BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged)
 	if closeErr := readBuffer.CloseContext("reinitializedStateOfDevice"); closeErr != nil {
@@ -175,7 +175,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceParse(readBuffer utils.ReadB
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'password' field")
+			return nil, errors.Wrap(_err, "Error parsing 'password' field of BACnetConfirmedServiceRequestReinitializeDevice")
 		default:
 			password = _val.(BACnetContextTagCharacterString)
 			if closeErr := readBuffer.CloseContext("password"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
index 3f0f8a236..4396e4f02 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged.go
@@ -126,7 +126,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTa
 	}
 	_header, _headerErr := BACnetTagHeaderParse(readBuffer)
 	if _headerErr != nil {
-		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field")
+		return nil, errors.Wrap(_headerErr, "Error parsing 'header' field of BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged")
 	}
 	header := _header.(BACnetTagHeader)
 	if closeErr := readBuffer.CloseContext("header"); closeErr != nil {
@@ -146,7 +146,7 @@ func BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTa
 	// Manual Field (value)
 	_value, _valueErr := ReadEnumGenericFailing(readBuffer, header.GetActualLength(), BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDevice_COLDSTART)
 	if _valueErr != nil {
-		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field")
+		return nil, errors.Wrap(_valueErr, "Error parsing 'value' field of BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDeviceTagged")
 	}
 	value := _value.(BACnetConfirmedServiceRequestReinitializeDeviceReinitializedStateOfDevice)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go
index 4bc4a5a96..64850ec88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRemoveListElement.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestRemoveListElementParse(readBuffer utils.ReadBu
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestRemoveListElement")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -192,7 +192,7 @@ func BACnetConfirmedServiceRequestRemoveListElementParse(readBuffer utils.ReadBu
 	}
 	_propertyIdentifier, _propertyIdentifierErr := BACnetPropertyIdentifierTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _propertyIdentifierErr != nil {
-		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field")
+		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field of BACnetConfirmedServiceRequestRemoveListElement")
 	}
 	propertyIdentifier := _propertyIdentifier.(BACnetPropertyIdentifierTagged)
 	if closeErr := readBuffer.CloseContext("propertyIdentifier"); closeErr != nil {
@@ -212,7 +212,7 @@ func BACnetConfirmedServiceRequestRemoveListElementParse(readBuffer utils.ReadBu
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field")
+			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field of BACnetConfirmedServiceRequestRemoveListElement")
 		default:
 			arrayIndex = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("arrayIndex"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestRemoveListElementParse(readBuffer utils.ReadBu
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'listOfElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'listOfElements' field of BACnetConfirmedServiceRequestRemoveListElement")
 		default:
 			listOfElements = _val.(BACnetConstructedData)
 			if closeErr := readBuffer.CloseContext("listOfElements"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go
index 50168c75e..ac1e45335 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestRequestKey.go
@@ -142,7 +142,7 @@ func BACnetConfirmedServiceRequestRequestKeyParse(readBuffer utils.ReadBuffer, s
 	numberOfBytesbytesOfRemovedService := int(serviceRequestPayloadLength)
 	bytesOfRemovedService, _readArrayErr := readBuffer.ReadByteArray("bytesOfRemovedService", numberOfBytesbytesOfRemovedService)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'bytesOfRemovedService' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'bytesOfRemovedService' field of BACnetConfirmedServiceRequestRequestKey")
 	}
 
 	if closeErr := readBuffer.CloseContext("BACnetConfirmedServiceRequestRequestKey"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
index 32f876ddc..2ba9c713d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOV.go
@@ -179,7 +179,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVParse(readBuffer utils.ReadBuffer,
 	}
 	_subscriberProcessIdentifier, _subscriberProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _subscriberProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field")
+		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOV")
 	}
 	subscriberProcessIdentifier := _subscriberProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("subscriberProcessIdentifier"); closeErr != nil {
@@ -192,7 +192,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVParse(readBuffer utils.ReadBuffer,
 	}
 	_monitoredObjectIdentifier, _monitoredObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _monitoredObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field")
+		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOV")
 	}
 	monitoredObjectIdentifier := _monitoredObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("monitoredObjectIdentifier"); closeErr != nil {
@@ -212,7 +212,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVParse(readBuffer utils.ReadBuffer,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'issueConfirmed' field")
+			return nil, errors.Wrap(_err, "Error parsing 'issueConfirmed' field of BACnetConfirmedServiceRequestSubscribeCOV")
 		default:
 			issueConfirmed = _val.(BACnetContextTagBoolean)
 			if closeErr := readBuffer.CloseContext("issueConfirmed"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVParse(readBuffer utils.ReadBuffer,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'lifetimeInSeconds' field")
+			return nil, errors.Wrap(_err, "Error parsing 'lifetimeInSeconds' field of BACnetConfirmedServiceRequestSubscribeCOV")
 		default:
 			lifetimeInSeconds = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("lifetimeInSeconds"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go
index fae3e08b0..87e315c94 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVProperty.go
@@ -203,7 +203,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 	}
 	_subscriberProcessIdentifier, _subscriberProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _subscriberProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field")
+		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOVProperty")
 	}
 	subscriberProcessIdentifier := _subscriberProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("subscriberProcessIdentifier"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 	}
 	_monitoredObjectIdentifier, _monitoredObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(1)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _monitoredObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field")
+		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOVProperty")
 	}
 	monitoredObjectIdentifier := _monitoredObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("monitoredObjectIdentifier"); closeErr != nil {
@@ -236,7 +236,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'issueConfirmedNotifications' field")
+			return nil, errors.Wrap(_err, "Error parsing 'issueConfirmedNotifications' field of BACnetConfirmedServiceRequestSubscribeCOVProperty")
 		default:
 			issueConfirmedNotifications = _val.(BACnetContextTagBoolean)
 			if closeErr := readBuffer.CloseContext("issueConfirmedNotifications"); closeErr != nil {
@@ -258,7 +258,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'lifetime' field")
+			return nil, errors.Wrap(_err, "Error parsing 'lifetime' field of BACnetConfirmedServiceRequestSubscribeCOVProperty")
 		default:
 			lifetime = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("lifetime"); closeErr != nil {
@@ -273,7 +273,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 	}
 	_monitoredPropertyIdentifier, _monitoredPropertyIdentifierErr := BACnetPropertyReferenceEnclosedParse(readBuffer, uint8(uint8(4)))
 	if _monitoredPropertyIdentifierErr != nil {
-		return nil, errors.Wrap(_monitoredPropertyIdentifierErr, "Error parsing 'monitoredPropertyIdentifier' field")
+		return nil, errors.Wrap(_monitoredPropertyIdentifierErr, "Error parsing 'monitoredPropertyIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOVProperty")
 	}
 	monitoredPropertyIdentifier := _monitoredPropertyIdentifier.(BACnetPropertyReferenceEnclosed)
 	if closeErr := readBuffer.CloseContext("monitoredPropertyIdentifier"); closeErr != nil {
@@ -293,7 +293,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyParse(readBuffer utils.Rea
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field")
+			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field of BACnetConfirmedServiceRequestSubscribeCOVProperty")
 		default:
 			covIncrement = _val.(BACnetContextTagReal)
 			if closeErr := readBuffer.CloseContext("covIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go
index 3d3de6a12..9833f3acd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple.go
@@ -192,7 +192,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleParse(readBuffer u
 	}
 	_subscriberProcessIdentifier, _subscriberProcessIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_UNSIGNED_INTEGER))
 	if _subscriberProcessIdentifierErr != nil {
-		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field")
+		return nil, errors.Wrap(_subscriberProcessIdentifierErr, "Error parsing 'subscriberProcessIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple")
 	}
 	subscriberProcessIdentifier := _subscriberProcessIdentifier.(BACnetContextTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("subscriberProcessIdentifier"); closeErr != nil {
@@ -212,7 +212,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleParse(readBuffer u
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'issueConfirmedNotifications' field")
+			return nil, errors.Wrap(_err, "Error parsing 'issueConfirmedNotifications' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple")
 		default:
 			issueConfirmedNotifications = _val.(BACnetContextTagBoolean)
 			if closeErr := readBuffer.CloseContext("issueConfirmedNotifications"); closeErr != nil {
@@ -234,7 +234,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleParse(readBuffer u
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'lifetime' field")
+			return nil, errors.Wrap(_err, "Error parsing 'lifetime' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple")
 		default:
 			lifetime = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("lifetime"); closeErr != nil {
@@ -256,7 +256,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleParse(readBuffer u
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'maxNotificationDelay' field")
+			return nil, errors.Wrap(_err, "Error parsing 'maxNotificationDelay' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple")
 		default:
 			maxNotificationDelay = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("maxNotificationDelay"); closeErr != nil {
@@ -271,7 +271,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleParse(readBuffer u
 	}
 	_listOfCovSubscriptionSpecifications, _listOfCovSubscriptionSpecificationsErr := BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsListParse(readBuffer, uint8(uint8(4)))
 	if _listOfCovSubscriptionSpecificationsErr != nil {
-		return nil, errors.Wrap(_listOfCovSubscriptionSpecificationsErr, "Error parsing 'listOfCovSubscriptionSpecifications' field")
+		return nil, errors.Wrap(_listOfCovSubscriptionSpecificationsErr, "Error parsing 'listOfCovSubscriptionSpecifications' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultiple")
 	}
 	listOfCovSubscriptionSpecifications := _listOfCovSubscriptionSpecifications.(BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList)
 	if closeErr := readBuffer.CloseContext("listOfCovSubscriptionSpecifications"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
index 6bb6ae3c2..548dd301b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications.go
@@ -146,7 +146,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_monitoredObjectIdentifier, _monitoredObjectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _monitoredObjectIdentifierErr != nil {
-		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field")
+		return nil, errors.Wrap(_monitoredObjectIdentifierErr, "Error parsing 'monitoredObjectIdentifier' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications")
 	}
 	monitoredObjectIdentifier := _monitoredObjectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("monitoredObjectIdentifier"); closeErr != nil {
@@ -159,7 +159,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(uint8(1)))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -176,7 +176,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, 1)) {
 			_item, _err := BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReferenceParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'listOfCovReferences' field")
+				return nil, errors.Wrap(_err, "Error parsing 'listOfCovReferences' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications")
 			}
 			listOfCovReferences = append(listOfCovReferences, _item.(BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference))
 
@@ -192,7 +192,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(uint8(1)))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
index 1e4a15653..4c552122c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList.go
@@ -139,7 +139,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'specifications' field")
+				return nil, errors.Wrap(_err, "Error parsing 'specifications' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList")
 			}
 			specifications = append(specifications, _item.(BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecifications))
 
@@ -172,7 +172,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsList")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
index 57dc9cee6..fbe2a30d3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference.go
@@ -136,7 +136,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_monitoredProperty, _monitoredPropertyErr := BACnetPropertyReferenceEnclosedParse(readBuffer, uint8(uint8(1)))
 	if _monitoredPropertyErr != nil {
-		return nil, errors.Wrap(_monitoredPropertyErr, "Error parsing 'monitoredProperty' field")
+		return nil, errors.Wrap(_monitoredPropertyErr, "Error parsing 'monitoredProperty' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference")
 	}
 	monitoredProperty := _monitoredProperty.(BACnetPropertyReferenceEnclosed)
 	if closeErr := readBuffer.CloseContext("monitoredProperty"); closeErr != nil {
@@ -156,7 +156,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field")
+			return nil, errors.Wrap(_err, "Error parsing 'covIncrement' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference")
 		default:
 			covIncrement = _val.(BACnetContextTagReal)
 			if closeErr := readBuffer.CloseContext("covIncrement"); closeErr != nil {
@@ -171,7 +171,7 @@ func BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscript
 	}
 	_timestamped, _timestampedErr := BACnetContextTagParse(readBuffer, uint8(uint8(2)), BACnetDataType(BACnetDataType_BOOLEAN))
 	if _timestampedErr != nil {
-		return nil, errors.Wrap(_timestampedErr, "Error parsing 'timestamped' field")
+		return nil, errors.Wrap(_timestampedErr, "Error parsing 'timestamped' field of BACnetConfirmedServiceRequestSubscribeCOVPropertyMultipleListOfCovSubscriptionSpecificationsReference")
 	}
 	timestamped := _timestamped.(BACnetContextTagBoolean)
 	if closeErr := readBuffer.CloseContext("timestamped"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go
index f6496b084..607361e8c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestUnknown.go
@@ -142,7 +142,7 @@ func BACnetConfirmedServiceRequestUnknownParse(readBuffer utils.ReadBuffer, serv
 	numberOfBytesunknownBytes := int(serviceRequestPayloadLength)
 	unknownBytes, _readArrayErr := readBuffer.ReadByteArray("unknownBytes", numberOfBytesunknownBytes)
 	if _readArrayErr != nil {
-		return nil, errors.Wrap(_readArrayErr, "Error parsing 'unknownBytes' field")
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'unknownBytes' field of BACnetConfirmedServiceRequestUnknown")
 	}
 
 	if closeErr := readBuffer.CloseContext("BACnetConfirmedServiceRequestUnknown"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go
index 9a5b4b450..2070b0897 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTClose.go
@@ -153,7 +153,7 @@ func BACnetConfirmedServiceRequestVTCloseParse(readBuffer utils.ReadBuffer, serv
 		for positionAware.GetPos() < _listOfRemoteVtSessionIdentifiersEndPos {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'listOfRemoteVtSessionIdentifiers' field")
+				return nil, errors.Wrap(_err, "Error parsing 'listOfRemoteVtSessionIdentifiers' field of BACnetConfirmedServiceRequestVTClose")
 			}
 			listOfRemoteVtSessionIdentifiers = append(listOfRemoteVtSessionIdentifiers, _item.(BACnetApplicationTagUnsignedInteger))
 		}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go
index 95a3b5c3d..c026f059f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTData.go
@@ -162,7 +162,7 @@ func BACnetConfirmedServiceRequestVTDataParse(readBuffer utils.ReadBuffer, servi
 	}
 	_vtSessionIdentifier, _vtSessionIdentifierErr := BACnetApplicationTagParse(readBuffer)
 	if _vtSessionIdentifierErr != nil {
-		return nil, errors.Wrap(_vtSessionIdentifierErr, "Error parsing 'vtSessionIdentifier' field")
+		return nil, errors.Wrap(_vtSessionIdentifierErr, "Error parsing 'vtSessionIdentifier' field of BACnetConfirmedServiceRequestVTData")
 	}
 	vtSessionIdentifier := _vtSessionIdentifier.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("vtSessionIdentifier"); closeErr != nil {
@@ -175,7 +175,7 @@ func BACnetConfirmedServiceRequestVTDataParse(readBuffer utils.ReadBuffer, servi
 	}
 	_vtNewData, _vtNewDataErr := BACnetApplicationTagParse(readBuffer)
 	if _vtNewDataErr != nil {
-		return nil, errors.Wrap(_vtNewDataErr, "Error parsing 'vtNewData' field")
+		return nil, errors.Wrap(_vtNewDataErr, "Error parsing 'vtNewData' field of BACnetConfirmedServiceRequestVTData")
 	}
 	vtNewData := _vtNewData.(BACnetApplicationTagOctetString)
 	if closeErr := readBuffer.CloseContext("vtNewData"); closeErr != nil {
@@ -188,7 +188,7 @@ func BACnetConfirmedServiceRequestVTDataParse(readBuffer utils.ReadBuffer, servi
 	}
 	_vtDataFlag, _vtDataFlagErr := BACnetApplicationTagParse(readBuffer)
 	if _vtDataFlagErr != nil {
-		return nil, errors.Wrap(_vtDataFlagErr, "Error parsing 'vtDataFlag' field")
+		return nil, errors.Wrap(_vtDataFlagErr, "Error parsing 'vtDataFlag' field of BACnetConfirmedServiceRequestVTData")
 	}
 	vtDataFlag := _vtDataFlag.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("vtDataFlag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go
index 98b585598..18dbb77fd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestVTOpen.go
@@ -151,7 +151,7 @@ func BACnetConfirmedServiceRequestVTOpenParse(readBuffer utils.ReadBuffer, servi
 	}
 	_vtClass, _vtClassErr := BACnetVTClassTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _vtClassErr != nil {
-		return nil, errors.Wrap(_vtClassErr, "Error parsing 'vtClass' field")
+		return nil, errors.Wrap(_vtClassErr, "Error parsing 'vtClass' field of BACnetConfirmedServiceRequestVTOpen")
 	}
 	vtClass := _vtClass.(BACnetVTClassTagged)
 	if closeErr := readBuffer.CloseContext("vtClass"); closeErr != nil {
@@ -164,7 +164,7 @@ func BACnetConfirmedServiceRequestVTOpenParse(readBuffer utils.ReadBuffer, servi
 	}
 	_localVtSessionIdentifier, _localVtSessionIdentifierErr := BACnetApplicationTagParse(readBuffer)
 	if _localVtSessionIdentifierErr != nil {
-		return nil, errors.Wrap(_localVtSessionIdentifierErr, "Error parsing 'localVtSessionIdentifier' field")
+		return nil, errors.Wrap(_localVtSessionIdentifierErr, "Error parsing 'localVtSessionIdentifier' field of BACnetConfirmedServiceRequestVTOpen")
 	}
 	localVtSessionIdentifier := _localVtSessionIdentifier.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("localVtSessionIdentifier"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
index bb5aab16f..83fe15fbf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWriteProperty.go
@@ -190,7 +190,7 @@ func BACnetConfirmedServiceRequestWritePropertyParse(readBuffer utils.ReadBuffer
 	}
 	_objectIdentifier, _objectIdentifierErr := BACnetContextTagParse(readBuffer, uint8(uint8(0)), BACnetDataType(BACnetDataType_BACNET_OBJECT_IDENTIFIER))
 	if _objectIdentifierErr != nil {
-		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field")
+		return nil, errors.Wrap(_objectIdentifierErr, "Error parsing 'objectIdentifier' field of BACnetConfirmedServiceRequestWriteProperty")
 	}
 	objectIdentifier := _objectIdentifier.(BACnetContextTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("objectIdentifier"); closeErr != nil {
@@ -203,7 +203,7 @@ func BACnetConfirmedServiceRequestWritePropertyParse(readBuffer utils.ReadBuffer
 	}
 	_propertyIdentifier, _propertyIdentifierErr := BACnetPropertyIdentifierTaggedParse(readBuffer, uint8(uint8(1)), TagClass(TagClass_CONTEXT_SPECIFIC_TAGS))
 	if _propertyIdentifierErr != nil {
-		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field")
+		return nil, errors.Wrap(_propertyIdentifierErr, "Error parsing 'propertyIdentifier' field of BACnetConfirmedServiceRequestWriteProperty")
 	}
 	propertyIdentifier := _propertyIdentifier.(BACnetPropertyIdentifierTagged)
 	if closeErr := readBuffer.CloseContext("propertyIdentifier"); closeErr != nil {
@@ -223,7 +223,7 @@ func BACnetConfirmedServiceRequestWritePropertyParse(readBuffer utils.ReadBuffer
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field")
+			return nil, errors.Wrap(_err, "Error parsing 'arrayIndex' field of BACnetConfirmedServiceRequestWriteProperty")
 		default:
 			arrayIndex = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("arrayIndex"); closeErr != nil {
@@ -238,7 +238,7 @@ func BACnetConfirmedServiceRequestWritePropertyParse(readBuffer utils.ReadBuffer
 	}
 	_propertyValue, _propertyValueErr := BACnetConstructedDataParse(readBuffer, uint8(uint8(3)), BACnetObjectType(objectIdentifier.GetObjectType()), BACnetPropertyIdentifier(propertyIdentifier.GetValue()), CastBACnetTagPayloadUnsignedInteger(CastBACnetTagPayloadUnsignedInteger(utils.InlineIf(bool((arrayIndex) != (nil)), func() interface{} { return CastBACnetTagPayloadUnsignedInteger((arrayIndex).GetPayload()) }, func() interface{} { return CastBACnetTagPayloadUnsignedInteger(nil) }))))
 	if _propertyValueErr != nil {
-		return nil, errors.Wrap(_propertyValueErr, "Error parsing 'propertyValue' field")
+		return nil, errors.Wrap(_propertyValueErr, "Error parsing 'propertyValue' field of BACnetConfirmedServiceRequestWriteProperty")
 	}
 	propertyValue := _propertyValue.(BACnetConstructedData)
 	if closeErr := readBuffer.CloseContext("propertyValue"); closeErr != nil {
@@ -258,7 +258,7 @@ func BACnetConfirmedServiceRequestWritePropertyParse(readBuffer utils.ReadBuffer
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'priority' field")
+			return nil, errors.Wrap(_err, "Error parsing 'priority' field of BACnetConfirmedServiceRequestWriteProperty")
 		default:
 			priority = _val.(BACnetContextTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("priority"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go
index aa618449c..6c5750834 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestWritePropertyMultiple.go
@@ -153,7 +153,7 @@ func BACnetConfirmedServiceRequestWritePropertyMultipleParse(readBuffer utils.Re
 		for positionAware.GetPos() < _dataEndPos {
 			_item, _err := BACnetWriteAccessSpecificationParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'data' field")
+				return nil, errors.Wrap(_err, "Error parsing 'data' field of BACnetConfirmedServiceRequestWritePropertyMultiple")
 			}
 			data = append(data, _item.(BACnetWriteAccessSpecification))
 		}
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
index e3d7a6dd6..95c459145 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
@@ -173,7 +173,7 @@ func BACnetConstructedDataParse(readBuffer utils.ReadBuffer, tagNumber uint8, ob
 	}
 	_openingTag, _openingTagErr := BACnetOpeningTagParse(readBuffer, uint8(tagNumber))
 	if _openingTagErr != nil {
-		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field")
+		return nil, errors.Wrap(_openingTagErr, "Error parsing 'openingTag' field of BACnetConstructedData")
 	}
 	openingTag := _openingTag.(BACnetOpeningTag)
 	if closeErr := readBuffer.CloseContext("openingTag"); closeErr != nil {
@@ -1523,7 +1523,7 @@ func BACnetConstructedDataParse(readBuffer utils.ReadBuffer, tagNumber uint8, ob
 		typeSwitchError = errors.Errorf("Unmapped type for parameters [objectTypeArgument=%v, propertyIdentifierArgument=%v, peekedTagNumber=%v]", objectTypeArgument, propertyIdentifierArgument, peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConstructedData.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConstructedData")
 	}
 	_child = _childTemp.(BACnetConstructedDataChildSerializeRequirement)
 
@@ -1533,7 +1533,7 @@ func BACnetConstructedDataParse(readBuffer utils.ReadBuffer, tagNumber uint8, ob
 	}
 	_closingTag, _closingTagErr := BACnetClosingTagParse(readBuffer, uint8(tagNumber))
 	if _closingTagErr != nil {
-		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field")
+		return nil, errors.Wrap(_closingTagErr, "Error parsing 'closingTag' field of BACnetConstructedData")
 	}
 	closingTag := _closingTag.(BACnetClosingTag)
 	if closeErr := readBuffer.CloseContext("closingTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go
index bbd626d1b..1467d1d94 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDULength.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAPDULengthParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_apduLength, _apduLengthErr := BACnetApplicationTagParse(readBuffer)
 	if _apduLengthErr != nil {
-		return nil, errors.Wrap(_apduLengthErr, "Error parsing 'apduLength' field")
+		return nil, errors.Wrap(_apduLengthErr, "Error parsing 'apduLength' field of BACnetConstructedDataAPDULength")
 	}
 	apduLength := _apduLength.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("apduLength"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go
index 2c74354d2..2d6f39ee0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUSegmentTimeout.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAPDUSegmentTimeoutParse(readBuffer utils.ReadBuffer, t
 	}
 	_apduSegmentTimeout, _apduSegmentTimeoutErr := BACnetApplicationTagParse(readBuffer)
 	if _apduSegmentTimeoutErr != nil {
-		return nil, errors.Wrap(_apduSegmentTimeoutErr, "Error parsing 'apduSegmentTimeout' field")
+		return nil, errors.Wrap(_apduSegmentTimeoutErr, "Error parsing 'apduSegmentTimeout' field of BACnetConstructedDataAPDUSegmentTimeout")
 	}
 	apduSegmentTimeout := _apduSegmentTimeout.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("apduSegmentTimeout"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go
index d4a6be975..d521f770d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAPDUTimeout.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAPDUTimeoutParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_apduTimeout, _apduTimeoutErr := BACnetApplicationTagParse(readBuffer)
 	if _apduTimeoutErr != nil {
-		return nil, errors.Wrap(_apduTimeoutErr, "Error parsing 'apduTimeout' field")
+		return nil, errors.Wrap(_apduTimeoutErr, "Error parsing 'apduTimeout' field of BACnetConstructedDataAPDUTimeout")
 	}
 	apduTimeout := _apduTimeout.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("apduTimeout"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go
index 4a85f448f..343f673e2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAbsenteeLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAbsenteeLimitParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_absenteeLimit, _absenteeLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _absenteeLimitErr != nil {
-		return nil, errors.Wrap(_absenteeLimitErr, "Error parsing 'absenteeLimit' field")
+		return nil, errors.Wrap(_absenteeLimitErr, "Error parsing 'absenteeLimit' field of BACnetConstructedDataAbsenteeLimit")
 	}
 	absenteeLimit := _absenteeLimit.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("absenteeLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go
index 9f408e063..21fc6a39b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAcceptedModes.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAcceptedModesParse(readBuffer utils.ReadBuffer, tagNum
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetLifeSafetyModeTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'acceptedModes' field")
+				return nil, errors.Wrap(_err, "Error parsing 'acceptedModes' field of BACnetConstructedDataAcceptedModes")
 			}
 			acceptedModes = append(acceptedModes, _item.(BACnetLifeSafetyModeTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go
index f64b48a6b..4631fb6a6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessAlarmEvents.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAccessAlarmEventsParse(readBuffer utils.ReadBuffer, ta
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAccessEventTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'accessAlarmEvents' field")
+				return nil, errors.Wrap(_err, "Error parsing 'accessAlarmEvents' field of BACnetConstructedDataAccessAlarmEvents")
 			}
 			accessAlarmEvents = append(accessAlarmEvents, _item.(BACnetAccessEventTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go
index 3650bed2e..5f475643f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorAlarmValues.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAccessDoorAlarmValuesParse(readBuffer utils.ReadBuffer
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDoorAlarmStateTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field of BACnetConstructedDataAccessDoorAlarmValues")
 			}
 			alarmValues = append(alarmValues, _item.(BACnetDoorAlarmStateTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go
index dc6f09cd5..950419e22 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorFaultValues.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAccessDoorFaultValuesParse(readBuffer utils.ReadBuffer
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDoorAlarmStateTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'faultValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'faultValues' field of BACnetConstructedDataAccessDoorFaultValues")
 			}
 			faultValues = append(faultValues, _item.(BACnetDoorAlarmStateTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go
index a47f5d0c8..70a61c37d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessDoorPresentValueParse(readBuffer utils.ReadBuffe
 	}
 	_presentValue, _presentValueErr := BACnetDoorValueTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataAccessDoorPresentValue")
 	}
 	presentValue := _presentValue.(BACnetDoorValueTagged)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go
index e2ae1eb7f..2be8db91c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoorRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessDoorRelinquishDefaultParse(readBuffer utils.Read
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetDoorValueTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataAccessDoorRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetDoorValueTagged)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go
index 58ddfacce..88c7b3a36 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessDoors.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAccessDoorsParse(readBuffer utils.ReadBuffer, tagNumbe
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAccessDoors")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAccessDoorsParse(readBuffer utils.ReadBuffer, tagNumbe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDeviceObjectReferenceParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'accessDoors' field")
+				return nil, errors.Wrap(_err, "Error parsing 'accessDoors' field of BACnetConstructedDataAccessDoors")
 			}
 			accessDoors = append(accessDoors, _item.(BACnetDeviceObjectReference))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go
index 5635ce2a5..57f239f31 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEvent.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessEventParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_accessEvent, _accessEventErr := BACnetAccessEventTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _accessEventErr != nil {
-		return nil, errors.Wrap(_accessEventErr, "Error parsing 'accessEvent' field")
+		return nil, errors.Wrap(_accessEventErr, "Error parsing 'accessEvent' field of BACnetConstructedDataAccessEvent")
 	}
 	accessEvent := _accessEvent.(BACnetAccessEventTagged)
 	if closeErr := readBuffer.CloseContext("accessEvent"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go
index 323b6a385..8efb46321 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventAuthenticationFactor.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessEventAuthenticationFactorParse(readBuffer utils.
 	}
 	_accessEventAuthenticationFactor, _accessEventAuthenticationFactorErr := BACnetAuthenticationFactorParse(readBuffer)
 	if _accessEventAuthenticationFactorErr != nil {
-		return nil, errors.Wrap(_accessEventAuthenticationFactorErr, "Error parsing 'accessEventAuthenticationFactor' field")
+		return nil, errors.Wrap(_accessEventAuthenticationFactorErr, "Error parsing 'accessEventAuthenticationFactor' field of BACnetConstructedDataAccessEventAuthenticationFactor")
 	}
 	accessEventAuthenticationFactor := _accessEventAuthenticationFactor.(BACnetAuthenticationFactor)
 	if closeErr := readBuffer.CloseContext("accessEventAuthenticationFactor"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go
index 0b9744b44..1d2c0a5b9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventCredential.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessEventCredentialParse(readBuffer utils.ReadBuffer
 	}
 	_accessEventCredential, _accessEventCredentialErr := BACnetDeviceObjectReferenceParse(readBuffer)
 	if _accessEventCredentialErr != nil {
-		return nil, errors.Wrap(_accessEventCredentialErr, "Error parsing 'accessEventCredential' field")
+		return nil, errors.Wrap(_accessEventCredentialErr, "Error parsing 'accessEventCredential' field of BACnetConstructedDataAccessEventCredential")
 	}
 	accessEventCredential := _accessEventCredential.(BACnetDeviceObjectReference)
 	if closeErr := readBuffer.CloseContext("accessEventCredential"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go
index 48bf82a71..0395be088 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTag.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessEventTagParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_accessEventTag, _accessEventTagErr := BACnetApplicationTagParse(readBuffer)
 	if _accessEventTagErr != nil {
-		return nil, errors.Wrap(_accessEventTagErr, "Error parsing 'accessEventTag' field")
+		return nil, errors.Wrap(_accessEventTagErr, "Error parsing 'accessEventTag' field of BACnetConstructedDataAccessEventTag")
 	}
 	accessEventTag := _accessEventTag.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("accessEventTag"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go
index 1d1736414..de365c7ee 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessEventTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessEventTimeParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_accessEventTime, _accessEventTimeErr := BACnetTimeStampParse(readBuffer)
 	if _accessEventTimeErr != nil {
-		return nil, errors.Wrap(_accessEventTimeErr, "Error parsing 'accessEventTime' field")
+		return nil, errors.Wrap(_accessEventTimeErr, "Error parsing 'accessEventTime' field of BACnetConstructedDataAccessEventTime")
 	}
 	accessEventTime := _accessEventTime.(BACnetTimeStamp)
 	if closeErr := readBuffer.CloseContext("accessEventTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go
index 44a817626..3b1b46076 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessTransactionEvents.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAccessTransactionEventsParse(readBuffer utils.ReadBuff
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAccessEventTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'accessTransactionEvents' field")
+				return nil, errors.Wrap(_err, "Error parsing 'accessTransactionEvents' field of BACnetConstructedDataAccessTransactionEvents")
 			}
 			accessTransactionEvents = append(accessTransactionEvents, _item.(BACnetAccessEventTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go
index ad2eab776..34c4ef01f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAdjustValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccessZoneAdjustValueParse(readBuffer utils.ReadBuffer
 	}
 	_adjustValue, _adjustValueErr := BACnetApplicationTagParse(readBuffer)
 	if _adjustValueErr != nil {
-		return nil, errors.Wrap(_adjustValueErr, "Error parsing 'adjustValue' field")
+		return nil, errors.Wrap(_adjustValueErr, "Error parsing 'adjustValue' field of BACnetConstructedDataAccessZoneAdjustValue")
 	}
 	adjustValue := _adjustValue.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("adjustValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go
index dd99ac74f..01fc9239c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccessZoneAlarmValues.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAccessZoneAlarmValuesParse(readBuffer utils.ReadBuffer
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAccessZoneOccupancyStateTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field of BACnetConstructedDataAccessZoneAlarmValues")
 			}
 			alarmValues = append(alarmValues, _item.(BACnetAccessZoneOccupancyStateTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go
index 2e66c1a13..dab1c65d1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompaniment.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccompanimentParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_accompaniment, _accompanimentErr := BACnetDeviceObjectReferenceParse(readBuffer)
 	if _accompanimentErr != nil {
-		return nil, errors.Wrap(_accompanimentErr, "Error parsing 'accompaniment' field")
+		return nil, errors.Wrap(_accompanimentErr, "Error parsing 'accompaniment' field of BACnetConstructedDataAccompaniment")
 	}
 	accompaniment := _accompaniment.(BACnetDeviceObjectReference)
 	if closeErr := readBuffer.CloseContext("accompaniment"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go
index c0c9e4012..bf54b01e8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccompanimentTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccompanimentTimeParse(readBuffer utils.ReadBuffer, ta
 	}
 	_accompanimentTime, _accompanimentTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _accompanimentTimeErr != nil {
-		return nil, errors.Wrap(_accompanimentTimeErr, "Error parsing 'accompanimentTime' field")
+		return nil, errors.Wrap(_accompanimentTimeErr, "Error parsing 'accompanimentTime' field of BACnetConstructedDataAccompanimentTime")
 	}
 	accompanimentTime := _accompanimentTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("accompanimentTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go
index fbcd84d64..942d4834d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultHighLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccumulatorFaultHighLimitParse(readBuffer utils.ReadBu
 	}
 	_faultHighLimit, _faultHighLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _faultHighLimitErr != nil {
-		return nil, errors.Wrap(_faultHighLimitErr, "Error parsing 'faultHighLimit' field")
+		return nil, errors.Wrap(_faultHighLimitErr, "Error parsing 'faultHighLimit' field of BACnetConstructedDataAccumulatorFaultHighLimit")
 	}
 	faultHighLimit := _faultHighLimit.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("faultHighLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go
index 8150dc242..725d6e8c6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorFaultLowLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccumulatorFaultLowLimitParse(readBuffer utils.ReadBuf
 	}
 	_faultLowLimit, _faultLowLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _faultLowLimitErr != nil {
-		return nil, errors.Wrap(_faultLowLimitErr, "Error parsing 'faultLowLimit' field")
+		return nil, errors.Wrap(_faultLowLimitErr, "Error parsing 'faultLowLimit' field of BACnetConstructedDataAccumulatorFaultLowLimit")
 	}
 	faultLowLimit := _faultLowLimit.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("faultLowLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go
index 9719a3e83..70e9a7f12 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorHighLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccumulatorHighLimitParse(readBuffer utils.ReadBuffer,
 	}
 	_highLimit, _highLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _highLimitErr != nil {
-		return nil, errors.Wrap(_highLimitErr, "Error parsing 'highLimit' field")
+		return nil, errors.Wrap(_highLimitErr, "Error parsing 'highLimit' field of BACnetConstructedDataAccumulatorHighLimit")
 	}
 	highLimit := _highLimit.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("highLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go
index 3e2c72d19..485fdfba9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorLowLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccumulatorLowLimitParse(readBuffer utils.ReadBuffer,
 	}
 	_lowLimit, _lowLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _lowLimitErr != nil {
-		return nil, errors.Wrap(_lowLimitErr, "Error parsing 'lowLimit' field")
+		return nil, errors.Wrap(_lowLimitErr, "Error parsing 'lowLimit' field of BACnetConstructedDataAccumulatorLowLimit")
 	}
 	lowLimit := _lowLimit.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("lowLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go
index 12606b49d..369776741 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMaxPresValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccumulatorMaxPresValueParse(readBuffer utils.ReadBuff
 	}
 	_maxPresValue, _maxPresValueErr := BACnetApplicationTagParse(readBuffer)
 	if _maxPresValueErr != nil {
-		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field")
+		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field of BACnetConstructedDataAccumulatorMaxPresValue")
 	}
 	maxPresValue := _maxPresValue.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("maxPresValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go
index f33649a8a..e67e9a0b2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAccumulatorMinPresValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAccumulatorMinPresValueParse(readBuffer utils.ReadBuff
 	}
 	_minPresValue, _minPresValueErr := BACnetApplicationTagParse(readBuffer)
 	if _minPresValueErr != nil {
-		return nil, errors.Wrap(_minPresValueErr, "Error parsing 'minPresValue' field")
+		return nil, errors.Wrap(_minPresValueErr, "Error parsing 'minPresValue' field of BACnetConstructedDataAccumulatorMinPresValue")
 	}
 	minPresValue := _minPresValue.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("minPresValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go
index fa78b7511..dd98282f9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckRequired.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAckRequiredParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_ackRequired, _ackRequiredErr := BACnetEventTransitionBitsTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _ackRequiredErr != nil {
-		return nil, errors.Wrap(_ackRequiredErr, "Error parsing 'ackRequired' field")
+		return nil, errors.Wrap(_ackRequiredErr, "Error parsing 'ackRequired' field of BACnetConstructedDataAckRequired")
 	}
 	ackRequired := _ackRequired.(BACnetEventTransitionBitsTagged)
 	if closeErr := readBuffer.CloseContext("ackRequired"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go
index a8e9b3493..1d03ad0aa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAckedTransitions.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAckedTransitionsParse(readBuffer utils.ReadBuffer, tag
 	}
 	_ackedTransitions, _ackedTransitionsErr := BACnetEventTransitionBitsTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _ackedTransitionsErr != nil {
-		return nil, errors.Wrap(_ackedTransitionsErr, "Error parsing 'ackedTransitions' field")
+		return nil, errors.Wrap(_ackedTransitionsErr, "Error parsing 'ackedTransitions' field of BACnetConstructedDataAckedTransitions")
 	}
 	ackedTransitions := _ackedTransitions.(BACnetEventTransitionBitsTagged)
 	if closeErr := readBuffer.CloseContext("ackedTransitions"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go
index 069a8120a..43f3c71f3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAction.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataActionParse(readBuffer utils.ReadBuffer, tagNumber uin
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAction")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataActionParse(readBuffer utils.ReadBuffer, tagNumber uin
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetActionListParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'actionLists' field")
+				return nil, errors.Wrap(_err, "Error parsing 'actionLists' field of BACnetConstructedDataAction")
 			}
 			actionLists = append(actionLists, _item.(BACnetActionList))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go
index 92881328c..f3b331b0a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActionText.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataActionTextParse(readBuffer utils.ReadBuffer, tagNumber
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataActionText")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataActionTextParse(readBuffer utils.ReadBuffer, tagNumber
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'actionText' field")
+				return nil, errors.Wrap(_err, "Error parsing 'actionText' field of BACnetConstructedDataActionText")
 			}
 			actionText = append(actionText, _item.(BACnetApplicationTagCharacterString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go
index 9477cf119..a663adb5f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActivationTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataActivationTimeParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_activationTime, _activationTimeErr := BACnetDateTimeParse(readBuffer)
 	if _activationTimeErr != nil {
-		return nil, errors.Wrap(_activationTimeErr, "Error parsing 'activationTime' field")
+		return nil, errors.Wrap(_activationTimeErr, "Error parsing 'activationTime' field of BACnetConstructedDataActivationTime")
 	}
 	activationTime := _activationTime.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("activationTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go
index 640bc88d0..16d4fc1ae 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveAuthenticationPolicy.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataActiveAuthenticationPolicyParse(readBuffer utils.ReadB
 	}
 	_activeAuthenticationPolicy, _activeAuthenticationPolicyErr := BACnetApplicationTagParse(readBuffer)
 	if _activeAuthenticationPolicyErr != nil {
-		return nil, errors.Wrap(_activeAuthenticationPolicyErr, "Error parsing 'activeAuthenticationPolicy' field")
+		return nil, errors.Wrap(_activeAuthenticationPolicyErr, "Error parsing 'activeAuthenticationPolicy' field of BACnetConstructedDataActiveAuthenticationPolicy")
 	}
 	activeAuthenticationPolicy := _activeAuthenticationPolicy.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("activeAuthenticationPolicy"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go
index 280e840c7..b8e585bb6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVMultipleSubscriptions.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataActiveCOVMultipleSubscriptionsParse(readBuffer utils.R
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetCOVMultipleSubscriptionParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'activeCOVMultipleSubscriptions' field")
+				return nil, errors.Wrap(_err, "Error parsing 'activeCOVMultipleSubscriptions' field of BACnetConstructedDataActiveCOVMultipleSubscriptions")
 			}
 			activeCOVMultipleSubscriptions = append(activeCOVMultipleSubscriptions, _item.(BACnetCOVMultipleSubscription))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go
index c34d0e7ef..ea1bfec1b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveCOVSubscriptions.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataActiveCOVSubscriptionsParse(readBuffer utils.ReadBuffe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetCOVSubscriptionParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'activeCOVSubscriptions' field")
+				return nil, errors.Wrap(_err, "Error parsing 'activeCOVSubscriptions' field of BACnetConstructedDataActiveCOVSubscriptions")
 			}
 			activeCOVSubscriptions = append(activeCOVSubscriptions, _item.(BACnetCOVSubscription))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go
index 68a28ef4f..8b873fb1c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveText.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataActiveTextParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_activeText, _activeTextErr := BACnetApplicationTagParse(readBuffer)
 	if _activeTextErr != nil {
-		return nil, errors.Wrap(_activeTextErr, "Error parsing 'activeText' field")
+		return nil, errors.Wrap(_activeTextErr, "Error parsing 'activeText' field of BACnetConstructedDataActiveText")
 	}
 	activeText := _activeText.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("activeText"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go
index 1259b1148..1797f0f3f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActiveVTSessions.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataActiveVTSessionsParse(readBuffer utils.ReadBuffer, tag
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetVTSessionParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'activeVTSession' field")
+				return nil, errors.Wrap(_err, "Error parsing 'activeVTSession' field of BACnetConstructedDataActiveVTSessions")
 			}
 			activeVTSession = append(activeVTSession, _item.(BACnetVTSession))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go
index d504a81f9..fd575d988 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataActualShedLevel.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataActualShedLevelParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_actualShedLevel, _actualShedLevelErr := BACnetShedLevelParse(readBuffer)
 	if _actualShedLevelErr != nil {
-		return nil, errors.Wrap(_actualShedLevelErr, "Error parsing 'actualShedLevel' field")
+		return nil, errors.Wrap(_actualShedLevelErr, "Error parsing 'actualShedLevel' field of BACnetConstructedDataActualShedLevel")
 	}
 	actualShedLevel := _actualShedLevel.(BACnetShedLevel)
 	if closeErr := readBuffer.CloseContext("actualShedLevel"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go
index 231a9bf7c..ccf482477 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAdjustValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAdjustValueParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_adjustValue, _adjustValueErr := BACnetApplicationTagParse(readBuffer)
 	if _adjustValueErr != nil {
-		return nil, errors.Wrap(_adjustValueErr, "Error parsing 'adjustValue' field")
+		return nil, errors.Wrap(_adjustValueErr, "Error parsing 'adjustValue' field of BACnetConstructedDataAdjustValue")
 	}
 	adjustValue := _adjustValue.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("adjustValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go
index 37a4305bb..b10e38ebc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAlarmValueParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_binaryPv, _binaryPvErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _binaryPvErr != nil {
-		return nil, errors.Wrap(_binaryPvErr, "Error parsing 'binaryPv' field")
+		return nil, errors.Wrap(_binaryPvErr, "Error parsing 'binaryPv' field of BACnetConstructedDataAlarmValue")
 	}
 	binaryPv := _binaryPv.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("binaryPv"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go
index 56f8f66db..62664b1ac 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlarmValues.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAlarmValuesParse(readBuffer utils.ReadBuffer, tagNumbe
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAlarmValues")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAlarmValuesParse(readBuffer utils.ReadBuffer, tagNumbe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetLifeSafetyStateTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field of BACnetConstructedDataAlarmValues")
 			}
 			alarmValues = append(alarmValues, _item.(BACnetLifeSafetyStateTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go
index b01d1010f..0c70d4a1e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlertEnrollmentPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAlertEnrollmentPresentValueParse(readBuffer utils.Read
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataAlertEnrollmentPresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go
index 7720ee97e..d155b4cf1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAlignIntervals.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAlignIntervalsParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_alignIntervals, _alignIntervalsErr := BACnetApplicationTagParse(readBuffer)
 	if _alignIntervalsErr != nil {
-		return nil, errors.Wrap(_alignIntervalsErr, "Error parsing 'alignIntervals' field")
+		return nil, errors.Wrap(_alignIntervalsErr, "Error parsing 'alignIntervals' field of BACnetConstructedDataAlignIntervals")
 	}
 	alignIntervals := _alignIntervals.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("alignIntervals"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go
index 0baa02fcf..c9b0ff9b8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllWritesSuccessful.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAllWritesSuccessfulParse(readBuffer utils.ReadBuffer,
 	}
 	_allWritesSuccessful, _allWritesSuccessfulErr := BACnetApplicationTagParse(readBuffer)
 	if _allWritesSuccessfulErr != nil {
-		return nil, errors.Wrap(_allWritesSuccessfulErr, "Error parsing 'allWritesSuccessful' field")
+		return nil, errors.Wrap(_allWritesSuccessfulErr, "Error parsing 'allWritesSuccessful' field of BACnetConstructedDataAllWritesSuccessful")
 	}
 	allWritesSuccessful := _allWritesSuccessful.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("allWritesSuccessful"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go
index bb7e30044..e97087c9c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAllowGroupDelayInhibit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAllowGroupDelayInhibitParse(readBuffer utils.ReadBuffe
 	}
 	_allowGroupDelayInhibit, _allowGroupDelayInhibitErr := BACnetApplicationTagParse(readBuffer)
 	if _allowGroupDelayInhibitErr != nil {
-		return nil, errors.Wrap(_allowGroupDelayInhibitErr, "Error parsing 'allowGroupDelayInhibit' field")
+		return nil, errors.Wrap(_allowGroupDelayInhibitErr, "Error parsing 'allowGroupDelayInhibit' field of BACnetConstructedDataAllowGroupDelayInhibit")
 	}
 	allowGroupDelayInhibit := _allowGroupDelayInhibit.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("allowGroupDelayInhibit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go
index 39ed896e8..8f9575db7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultHighLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogInputFaultHighLimitParse(readBuffer utils.ReadBu
 	}
 	_faultHighLimit, _faultHighLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _faultHighLimitErr != nil {
-		return nil, errors.Wrap(_faultHighLimitErr, "Error parsing 'faultHighLimit' field")
+		return nil, errors.Wrap(_faultHighLimitErr, "Error parsing 'faultHighLimit' field of BACnetConstructedDataAnalogInputFaultHighLimit")
 	}
 	faultHighLimit := _faultHighLimit.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("faultHighLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go
index 58f55dbff..9f716213a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputFaultLowLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogInputFaultLowLimitParse(readBuffer utils.ReadBuf
 	}
 	_faultLowLimit, _faultLowLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _faultLowLimitErr != nil {
-		return nil, errors.Wrap(_faultLowLimitErr, "Error parsing 'faultLowLimit' field")
+		return nil, errors.Wrap(_faultLowLimitErr, "Error parsing 'faultLowLimit' field of BACnetConstructedDataAnalogInputFaultLowLimit")
 	}
 	faultLowLimit := _faultLowLimit.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("faultLowLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go
index 56a340ad2..d2ec9758c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputInterfaceValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogInputInterfaceValueParse(readBuffer utils.ReadBu
 	}
 	_interfaceValue, _interfaceValueErr := BACnetOptionalREALParse(readBuffer)
 	if _interfaceValueErr != nil {
-		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field")
+		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field of BACnetConstructedDataAnalogInputInterfaceValue")
 	}
 	interfaceValue := _interfaceValue.(BACnetOptionalREAL)
 	if closeErr := readBuffer.CloseContext("interfaceValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go
index 928713ac8..eb6ec8e3d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputMaxPresValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogInputMaxPresValueParse(readBuffer utils.ReadBuff
 	}
 	_maxPresValue, _maxPresValueErr := BACnetApplicationTagParse(readBuffer)
 	if _maxPresValueErr != nil {
-		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field")
+		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field of BACnetConstructedDataAnalogInputMaxPresValue")
 	}
 	maxPresValue := _maxPresValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("maxPresValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go
index e1bb0dafc..faea8a656 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogInputPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogInputPresentValueParse(readBuffer utils.ReadBuff
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataAnalogInputPresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go
index dfcab6666..bbcc06331 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputInterfaceValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogOutputInterfaceValueParse(readBuffer utils.ReadB
 	}
 	_interfaceValue, _interfaceValueErr := BACnetOptionalREALParse(readBuffer)
 	if _interfaceValueErr != nil {
-		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field")
+		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field of BACnetConstructedDataAnalogOutputInterfaceValue")
 	}
 	interfaceValue := _interfaceValue.(BACnetOptionalREAL)
 	if closeErr := readBuffer.CloseContext("interfaceValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go
index 310e57f89..10c55bbef 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputMaxPresValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogOutputMaxPresValueParse(readBuffer utils.ReadBuf
 	}
 	_maxPresValue, _maxPresValueErr := BACnetApplicationTagParse(readBuffer)
 	if _maxPresValueErr != nil {
-		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field")
+		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field of BACnetConstructedDataAnalogOutputMaxPresValue")
 	}
 	maxPresValue := _maxPresValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("maxPresValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go
index 5ff24d647..11c5f884d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogOutputPresentValueParse(readBuffer utils.ReadBuf
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataAnalogOutputPresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go
index 9c1558596..b47eb283e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogOutputRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogOutputRelinquishDefaultParse(readBuffer utils.Re
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetApplicationTagParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataAnalogOutputRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go
index 154ad0f29..6bab6447c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultHighLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogValueFaultHighLimitParse(readBuffer utils.ReadBu
 	}
 	_faultHighLimit, _faultHighLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _faultHighLimitErr != nil {
-		return nil, errors.Wrap(_faultHighLimitErr, "Error parsing 'faultHighLimit' field")
+		return nil, errors.Wrap(_faultHighLimitErr, "Error parsing 'faultHighLimit' field of BACnetConstructedDataAnalogValueFaultHighLimit")
 	}
 	faultHighLimit := _faultHighLimit.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("faultHighLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go
index 0ed96cea1..e1346b56a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueFaultLowLimit.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogValueFaultLowLimitParse(readBuffer utils.ReadBuf
 	}
 	_faultLowLimit, _faultLowLimitErr := BACnetApplicationTagParse(readBuffer)
 	if _faultLowLimitErr != nil {
-		return nil, errors.Wrap(_faultLowLimitErr, "Error parsing 'faultLowLimit' field")
+		return nil, errors.Wrap(_faultLowLimitErr, "Error parsing 'faultLowLimit' field of BACnetConstructedDataAnalogValueFaultLowLimit")
 	}
 	faultLowLimit := _faultLowLimit.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("faultLowLimit"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go
index 6ccd6f9cd..beec68f8d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueMaxPresValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogValueMaxPresValueParse(readBuffer utils.ReadBuff
 	}
 	_maxPresValue, _maxPresValueErr := BACnetApplicationTagParse(readBuffer)
 	if _maxPresValueErr != nil {
-		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field")
+		return nil, errors.Wrap(_maxPresValueErr, "Error parsing 'maxPresValue' field of BACnetConstructedDataAnalogValueMaxPresValue")
 	}
 	maxPresValue := _maxPresValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("maxPresValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go
index 5fd647652..d08702e5d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogValuePresentValueParse(readBuffer utils.ReadBuff
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataAnalogValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go
index 976deb0a4..6e6433971 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAnalogValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAnalogValueRelinquishDefaultParse(readBuffer utils.Rea
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetApplicationTagParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataAnalogValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go
index ee308f8df..d245089be 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataApplicationSoftwareVersion.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataApplicationSoftwareVersionParse(readBuffer utils.ReadB
 	}
 	_applicationSoftwareVersion, _applicationSoftwareVersionErr := BACnetApplicationTagParse(readBuffer)
 	if _applicationSoftwareVersionErr != nil {
-		return nil, errors.Wrap(_applicationSoftwareVersionErr, "Error parsing 'applicationSoftwareVersion' field")
+		return nil, errors.Wrap(_applicationSoftwareVersionErr, "Error parsing 'applicationSoftwareVersion' field of BACnetConstructedDataApplicationSoftwareVersion")
 	}
 	applicationSoftwareVersion := _applicationSoftwareVersion.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("applicationSoftwareVersion"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go
index f2d0b4b83..4744e1239 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataArchive.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataArchiveParse(readBuffer utils.ReadBuffer, tagNumber ui
 	}
 	_archive, _archiveErr := BACnetApplicationTagParse(readBuffer)
 	if _archiveErr != nil {
-		return nil, errors.Wrap(_archiveErr, "Error parsing 'archive' field")
+		return nil, errors.Wrap(_archiveErr, "Error parsing 'archive' field of BACnetConstructedDataArchive")
 	}
 	archive := _archive.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("archive"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go
index 57e0e2508..1ae9a38fe 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedAccessRights.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAssignedAccessRightsParse(readBuffer utils.ReadBuffer,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAssignedAccessRights")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAssignedAccessRightsParse(readBuffer utils.ReadBuffer,
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAssignedAccessRightsParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'assignedAccessRights' field")
+				return nil, errors.Wrap(_err, "Error parsing 'assignedAccessRights' field of BACnetConstructedDataAssignedAccessRights")
 			}
 			assignedAccessRights = append(assignedAccessRights, _item.(BACnetAssignedAccessRights))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go
index 616b3a2ff..893e178a2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAssignedLandingCalls.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAssignedLandingCallsParse(readBuffer utils.ReadBuffer,
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAssignedLandingCalls")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAssignedLandingCallsParse(readBuffer utils.ReadBuffer,
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAssignedLandingCallsParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'assignedLandingCalls' field")
+				return nil, errors.Wrap(_err, "Error parsing 'assignedLandingCalls' field of BACnetConstructedDataAssignedLandingCalls")
 			}
 			assignedLandingCalls = append(assignedLandingCalls, _item.(BACnetAssignedLandingCalls))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go
index 79327b90f..45492aabf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAttemptedSamples.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAttemptedSamplesParse(readBuffer utils.ReadBuffer, tag
 	}
 	_attemptedSamples, _attemptedSamplesErr := BACnetApplicationTagParse(readBuffer)
 	if _attemptedSamplesErr != nil {
-		return nil, errors.Wrap(_attemptedSamplesErr, "Error parsing 'attemptedSamples' field")
+		return nil, errors.Wrap(_attemptedSamplesErr, "Error parsing 'attemptedSamples' field of BACnetConstructedDataAttemptedSamples")
 	}
 	attemptedSamples := _attemptedSamples.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("attemptedSamples"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go
index 1cfced859..5273d1614 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationFactors.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAuthenticationFactorsParse(readBuffer utils.ReadBuffer
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAuthenticationFactors")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAuthenticationFactorsParse(readBuffer utils.ReadBuffer
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetCredentialAuthenticationFactorParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'authenticationFactors' field")
+				return nil, errors.Wrap(_err, "Error parsing 'authenticationFactors' field of BACnetConstructedDataAuthenticationFactors")
 			}
 			authenticationFactors = append(authenticationFactors, _item.(BACnetCredentialAuthenticationFactor))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go
index 4a8c3c0ad..dff17ac42 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyList.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAuthenticationPolicyListParse(readBuffer utils.ReadBuf
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAuthenticationPolicyList")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAuthenticationPolicyListParse(readBuffer utils.ReadBuf
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAuthenticationPolicyParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'authenticationPolicyList' field")
+				return nil, errors.Wrap(_err, "Error parsing 'authenticationPolicyList' field of BACnetConstructedDataAuthenticationPolicyList")
 			}
 			authenticationPolicyList = append(authenticationPolicyList, _item.(BACnetAuthenticationPolicy))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go
index c035f68a6..d76654de2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationPolicyNames.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataAuthenticationPolicyNamesParse(readBuffer utils.ReadBu
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataAuthenticationPolicyNames")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataAuthenticationPolicyNamesParse(readBuffer utils.ReadBu
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'authenticationPolicyNames' field")
+				return nil, errors.Wrap(_err, "Error parsing 'authenticationPolicyNames' field of BACnetConstructedDataAuthenticationPolicyNames")
 			}
 			authenticationPolicyNames = append(authenticationPolicyNames, _item.(BACnetApplicationTagCharacterString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go
index 561126bdb..b45e5c68f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthenticationStatus.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAuthenticationStatusParse(readBuffer utils.ReadBuffer,
 	}
 	_authenticationStatus, _authenticationStatusErr := BACnetAuthenticationStatusTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _authenticationStatusErr != nil {
-		return nil, errors.Wrap(_authenticationStatusErr, "Error parsing 'authenticationStatus' field")
+		return nil, errors.Wrap(_authenticationStatusErr, "Error parsing 'authenticationStatus' field of BACnetConstructedDataAuthenticationStatus")
 	}
 	authenticationStatus := _authenticationStatus.(BACnetAuthenticationStatusTagged)
 	if closeErr := readBuffer.CloseContext("authenticationStatus"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go
index ffb482ca9..35103553e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationExemptions.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataAuthorizationExemptionsParse(readBuffer utils.ReadBuff
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAuthorizationExemptionTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'authorizationExemption' field")
+				return nil, errors.Wrap(_err, "Error parsing 'authorizationExemption' field of BACnetConstructedDataAuthorizationExemptions")
 			}
 			authorizationExemption = append(authorizationExemption, _item.(BACnetAuthorizationExemptionTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go
index 961cb648f..1c077480d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAuthorizationMode.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAuthorizationModeParse(readBuffer utils.ReadBuffer, ta
 	}
 	_authorizationMode, _authorizationModeErr := BACnetAuthorizationModeTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _authorizationModeErr != nil {
-		return nil, errors.Wrap(_authorizationModeErr, "Error parsing 'authorizationMode' field")
+		return nil, errors.Wrap(_authorizationModeErr, "Error parsing 'authorizationMode' field of BACnetConstructedDataAuthorizationMode")
 	}
 	authorizationMode := _authorizationMode.(BACnetAuthorizationModeTagged)
 	if closeErr := readBuffer.CloseContext("authorizationMode"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go
index 69eba618d..e899217e0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAutoSlaveDiscovery.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAutoSlaveDiscoveryParse(readBuffer utils.ReadBuffer, t
 	}
 	_autoSlaveDiscovery, _autoSlaveDiscoveryErr := BACnetApplicationTagParse(readBuffer)
 	if _autoSlaveDiscoveryErr != nil {
-		return nil, errors.Wrap(_autoSlaveDiscoveryErr, "Error parsing 'autoSlaveDiscovery' field")
+		return nil, errors.Wrap(_autoSlaveDiscoveryErr, "Error parsing 'autoSlaveDiscovery' field of BACnetConstructedDataAutoSlaveDiscovery")
 	}
 	autoSlaveDiscovery := _autoSlaveDiscovery.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("autoSlaveDiscovery"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go
index 9781a7831..a4735ed1c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataAverageValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataAverageValueParse(readBuffer utils.ReadBuffer, tagNumb
 	}
 	_averageValue, _averageValueErr := BACnetApplicationTagParse(readBuffer)
 	if _averageValueErr != nil {
-		return nil, errors.Wrap(_averageValueErr, "Error parsing 'averageValue' field")
+		return nil, errors.Wrap(_averageValueErr, "Error parsing 'averageValue' field of BACnetConstructedDataAverageValue")
 	}
 	averageValue := _averageValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("averageValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go
index 59301ae89..a1f78b67c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPGlobalAddress.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPGlobalAddressParse(readBuffer utils.ReadBuffer
 	}
 	_bacnetIpGlobalAddress, _bacnetIpGlobalAddressErr := BACnetHostNPortParse(readBuffer)
 	if _bacnetIpGlobalAddressErr != nil {
-		return nil, errors.Wrap(_bacnetIpGlobalAddressErr, "Error parsing 'bacnetIpGlobalAddress' field")
+		return nil, errors.Wrap(_bacnetIpGlobalAddressErr, "Error parsing 'bacnetIpGlobalAddress' field of BACnetConstructedDataBACnetIPGlobalAddress")
 	}
 	bacnetIpGlobalAddress := _bacnetIpGlobalAddress.(BACnetHostNPort)
 	if closeErr := readBuffer.CloseContext("bacnetIpGlobalAddress"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go
index 22c05c244..54bbe98c4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMode.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPModeParse(readBuffer utils.ReadBuffer, tagNumb
 	}
 	_bacnetIpMode, _bacnetIpModeErr := BACnetIPModeTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _bacnetIpModeErr != nil {
-		return nil, errors.Wrap(_bacnetIpModeErr, "Error parsing 'bacnetIpMode' field")
+		return nil, errors.Wrap(_bacnetIpModeErr, "Error parsing 'bacnetIpMode' field of BACnetConstructedDataBACnetIPMode")
 	}
 	bacnetIpMode := _bacnetIpMode.(BACnetIPModeTagged)
 	if closeErr := readBuffer.CloseContext("bacnetIpMode"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go
index c22f857d5..bf0671821 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPMulticastAddress.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPMulticastAddressParse(readBuffer utils.ReadBuf
 	}
 	_ipMulticastAddress, _ipMulticastAddressErr := BACnetApplicationTagParse(readBuffer)
 	if _ipMulticastAddressErr != nil {
-		return nil, errors.Wrap(_ipMulticastAddressErr, "Error parsing 'ipMulticastAddress' field")
+		return nil, errors.Wrap(_ipMulticastAddressErr, "Error parsing 'ipMulticastAddress' field of BACnetConstructedDataBACnetIPMulticastAddress")
 	}
 	ipMulticastAddress := _ipMulticastAddress.(BACnetApplicationTagOctetString)
 	if closeErr := readBuffer.CloseContext("ipMulticastAddress"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go
index 6c6c771c8..544aee885 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPNATTraversal.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPNATTraversalParse(readBuffer utils.ReadBuffer,
 	}
 	_bacnetIPNATTraversal, _bacnetIPNATTraversalErr := BACnetApplicationTagParse(readBuffer)
 	if _bacnetIPNATTraversalErr != nil {
-		return nil, errors.Wrap(_bacnetIPNATTraversalErr, "Error parsing 'bacnetIPNATTraversal' field")
+		return nil, errors.Wrap(_bacnetIPNATTraversalErr, "Error parsing 'bacnetIPNATTraversal' field of BACnetConstructedDataBACnetIPNATTraversal")
 	}
 	bacnetIPNATTraversal := _bacnetIPNATTraversal.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("bacnetIPNATTraversal"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go
index c14a087e7..266ea9036 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPUDPPort.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPUDPPortParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_ipUdpPort, _ipUdpPortErr := BACnetApplicationTagParse(readBuffer)
 	if _ipUdpPortErr != nil {
-		return nil, errors.Wrap(_ipUdpPortErr, "Error parsing 'ipUdpPort' field")
+		return nil, errors.Wrap(_ipUdpPortErr, "Error parsing 'ipUdpPort' field of BACnetConstructedDataBACnetIPUDPPort")
 	}
 	ipUdpPort := _ipUdpPort.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("ipUdpPort"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go
index f34b87e78..a09f6eb2e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6Mode.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPv6ModeParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_bacnetIpv6Mode, _bacnetIpv6ModeErr := BACnetIPModeTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _bacnetIpv6ModeErr != nil {
-		return nil, errors.Wrap(_bacnetIpv6ModeErr, "Error parsing 'bacnetIpv6Mode' field")
+		return nil, errors.Wrap(_bacnetIpv6ModeErr, "Error parsing 'bacnetIpv6Mode' field of BACnetConstructedDataBACnetIPv6Mode")
 	}
 	bacnetIpv6Mode := _bacnetIpv6Mode.(BACnetIPModeTagged)
 	if closeErr := readBuffer.CloseContext("bacnetIpv6Mode"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go
index 470063c58..326b56095 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6MulticastAddress.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPv6MulticastAddressParse(readBuffer utils.ReadB
 	}
 	_ipv6MulticastAddress, _ipv6MulticastAddressErr := BACnetApplicationTagParse(readBuffer)
 	if _ipv6MulticastAddressErr != nil {
-		return nil, errors.Wrap(_ipv6MulticastAddressErr, "Error parsing 'ipv6MulticastAddress' field")
+		return nil, errors.Wrap(_ipv6MulticastAddressErr, "Error parsing 'ipv6MulticastAddress' field of BACnetConstructedDataBACnetIPv6MulticastAddress")
 	}
 	ipv6MulticastAddress := _ipv6MulticastAddress.(BACnetApplicationTagOctetString)
 	if closeErr := readBuffer.CloseContext("ipv6MulticastAddress"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go
index 44ed9537a..5fc477d49 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBACnetIPv6UDPPort.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBACnetIPv6UDPPortParse(readBuffer utils.ReadBuffer, ta
 	}
 	_ipv6UdpPort, _ipv6UdpPortErr := BACnetApplicationTagParse(readBuffer)
 	if _ipv6UdpPortErr != nil {
-		return nil, errors.Wrap(_ipv6UdpPortErr, "Error parsing 'ipv6UdpPort' field")
+		return nil, errors.Wrap(_ipv6UdpPortErr, "Error parsing 'ipv6UdpPort' field of BACnetConstructedDataBACnetIPv6UDPPort")
 	}
 	ipv6UdpPort := _ipv6UdpPort.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("ipv6UdpPort"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go
index bd2ba582d..6c2a04016 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDAcceptFDRegistrations.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBBMDAcceptFDRegistrationsParse(readBuffer utils.ReadBu
 	}
 	_bbmdAcceptFDRegistrations, _bbmdAcceptFDRegistrationsErr := BACnetApplicationTagParse(readBuffer)
 	if _bbmdAcceptFDRegistrationsErr != nil {
-		return nil, errors.Wrap(_bbmdAcceptFDRegistrationsErr, "Error parsing 'bbmdAcceptFDRegistrations' field")
+		return nil, errors.Wrap(_bbmdAcceptFDRegistrationsErr, "Error parsing 'bbmdAcceptFDRegistrations' field of BACnetConstructedDataBBMDAcceptFDRegistrations")
 	}
 	bbmdAcceptFDRegistrations := _bbmdAcceptFDRegistrations.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("bbmdAcceptFDRegistrations"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go
index 25a02c833..0af9446ce 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDBroadcastDistributionTable.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataBBMDBroadcastDistributionTableParse(readBuffer utils.R
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetBDTEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'bbmdBroadcastDistributionTable' field")
+				return nil, errors.Wrap(_err, "Error parsing 'bbmdBroadcastDistributionTable' field of BACnetConstructedDataBBMDBroadcastDistributionTable")
 			}
 			bbmdBroadcastDistributionTable = append(bbmdBroadcastDistributionTable, _item.(BACnetBDTEntry))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go
index b5571fbb2..c6a168a07 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBBMDForeignDeviceTable.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataBBMDForeignDeviceTableParse(readBuffer utils.ReadBuffe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetBDTEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'bbmdForeignDeviceTable' field")
+				return nil, errors.Wrap(_err, "Error parsing 'bbmdForeignDeviceTable' field of BACnetConstructedDataBBMDForeignDeviceTable")
 			}
 			bbmdForeignDeviceTable = append(bbmdForeignDeviceTable, _item.(BACnetBDTEntry))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go
index 4641fd74f..411c7325f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupAndRestoreState.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBackupAndRestoreStateParse(readBuffer utils.ReadBuffer
 	}
 	_backupAndRestoreState, _backupAndRestoreStateErr := BACnetBackupStateTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _backupAndRestoreStateErr != nil {
-		return nil, errors.Wrap(_backupAndRestoreStateErr, "Error parsing 'backupAndRestoreState' field")
+		return nil, errors.Wrap(_backupAndRestoreStateErr, "Error parsing 'backupAndRestoreState' field of BACnetConstructedDataBackupAndRestoreState")
 	}
 	backupAndRestoreState := _backupAndRestoreState.(BACnetBackupStateTagged)
 	if closeErr := readBuffer.CloseContext("backupAndRestoreState"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go
index 1f5658000..11d094816 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupFailureTimeout.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBackupFailureTimeoutParse(readBuffer utils.ReadBuffer,
 	}
 	_backupFailureTimeout, _backupFailureTimeoutErr := BACnetApplicationTagParse(readBuffer)
 	if _backupFailureTimeoutErr != nil {
-		return nil, errors.Wrap(_backupFailureTimeoutErr, "Error parsing 'backupFailureTimeout' field")
+		return nil, errors.Wrap(_backupFailureTimeoutErr, "Error parsing 'backupFailureTimeout' field of BACnetConstructedDataBackupFailureTimeout")
 	}
 	backupFailureTimeout := _backupFailureTimeout.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("backupFailureTimeout"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go
index 1d892b6c5..513c1321e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBackupPreparationTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBackupPreparationTimeParse(readBuffer utils.ReadBuffer
 	}
 	_backupPreparationTime, _backupPreparationTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _backupPreparationTimeErr != nil {
-		return nil, errors.Wrap(_backupPreparationTimeErr, "Error parsing 'backupPreparationTime' field")
+		return nil, errors.Wrap(_backupPreparationTimeErr, "Error parsing 'backupPreparationTime' field of BACnetConstructedDataBackupPreparationTime")
 	}
 	backupPreparationTime := _backupPreparationTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("backupPreparationTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go
index 3b0f674f3..92db8d7b6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBaseDeviceSecurityPolicy.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBaseDeviceSecurityPolicyParse(readBuffer utils.ReadBuf
 	}
 	_baseDeviceSecurityPolicy, _baseDeviceSecurityPolicyErr := BACnetSecurityLevelTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _baseDeviceSecurityPolicyErr != nil {
-		return nil, errors.Wrap(_baseDeviceSecurityPolicyErr, "Error parsing 'baseDeviceSecurityPolicy' field")
+		return nil, errors.Wrap(_baseDeviceSecurityPolicyErr, "Error parsing 'baseDeviceSecurityPolicy' field of BACnetConstructedDataBaseDeviceSecurityPolicy")
 	}
 	baseDeviceSecurityPolicy := _baseDeviceSecurityPolicy.(BACnetSecurityLevelTagged)
 	if closeErr := readBuffer.CloseContext("baseDeviceSecurityPolicy"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go
index 74c0b7f6c..6cac44f01 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBelongsTo.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBelongsToParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_belongsTo, _belongsToErr := BACnetDeviceObjectReferenceParse(readBuffer)
 	if _belongsToErr != nil {
-		return nil, errors.Wrap(_belongsToErr, "Error parsing 'belongsTo' field")
+		return nil, errors.Wrap(_belongsToErr, "Error parsing 'belongsTo' field of BACnetConstructedDataBelongsTo")
 	}
 	belongsTo := _belongsTo.(BACnetDeviceObjectReference)
 	if closeErr := readBuffer.CloseContext("belongsTo"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go
index c95508538..e3edfc5f7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBias.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBiasParse(readBuffer utils.ReadBuffer, tagNumber uint8
 	}
 	_bias, _biasErr := BACnetApplicationTagParse(readBuffer)
 	if _biasErr != nil {
-		return nil, errors.Wrap(_biasErr, "Error parsing 'bias' field")
+		return nil, errors.Wrap(_biasErr, "Error parsing 'bias' field of BACnetConstructedDataBias")
 	}
 	bias := _bias.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("bias"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go
index 45f31b60d..c32517baf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputInterfaceValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryInputInterfaceValueParse(readBuffer utils.ReadBu
 	}
 	_interfaceValue, _interfaceValueErr := BACnetOptionalBinaryPVParse(readBuffer)
 	if _interfaceValueErr != nil {
-		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field")
+		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field of BACnetConstructedDataBinaryInputInterfaceValue")
 	}
 	interfaceValue := _interfaceValue.(BACnetOptionalBinaryPV)
 	if closeErr := readBuffer.CloseContext("interfaceValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go
index efa30a821..41e8953eb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryInputPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryInputPresentValueParse(readBuffer utils.ReadBuff
 	}
 	_presentValue, _presentValueErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataBinaryInputPresentValue")
 	}
 	presentValue := _presentValue.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go
index 40a6cabe2..1a243a998 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputFeedbackValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryLightingOutputFeedbackValueParse(readBuffer util
 	}
 	_feedbackValue, _feedbackValueErr := BACnetBinaryLightingPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _feedbackValueErr != nil {
-		return nil, errors.Wrap(_feedbackValueErr, "Error parsing 'feedbackValue' field")
+		return nil, errors.Wrap(_feedbackValueErr, "Error parsing 'feedbackValue' field of BACnetConstructedDataBinaryLightingOutputFeedbackValue")
 	}
 	feedbackValue := _feedbackValue.(BACnetBinaryLightingPVTagged)
 	if closeErr := readBuffer.CloseContext("feedbackValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go
index e0cf9255c..0ce815a9d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryLightingOutputPresentValueParse(readBuffer utils
 	}
 	_presentValue, _presentValueErr := BACnetBinaryLightingPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataBinaryLightingOutputPresentValue")
 	}
 	presentValue := _presentValue.(BACnetBinaryLightingPVTagged)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go
index 0cdf516ea..ab6a81e2a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryLightingOutputRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryLightingOutputRelinquishDefaultParse(readBuffer
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetBinaryLightingPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataBinaryLightingOutputRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetBinaryLightingPVTagged)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go
index f17602cf7..30f9c1ccd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputFeedbackValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryOutputFeedbackValueParse(readBuffer utils.ReadBu
 	}
 	_feedbackValue, _feedbackValueErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _feedbackValueErr != nil {
-		return nil, errors.Wrap(_feedbackValueErr, "Error parsing 'feedbackValue' field")
+		return nil, errors.Wrap(_feedbackValueErr, "Error parsing 'feedbackValue' field of BACnetConstructedDataBinaryOutputFeedbackValue")
 	}
 	feedbackValue := _feedbackValue.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("feedbackValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go
index 10602cda6..463915a5d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputInterfaceValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryOutputInterfaceValueParse(readBuffer utils.ReadB
 	}
 	_interfaceValue, _interfaceValueErr := BACnetOptionalBinaryPVParse(readBuffer)
 	if _interfaceValueErr != nil {
-		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field")
+		return nil, errors.Wrap(_interfaceValueErr, "Error parsing 'interfaceValue' field of BACnetConstructedDataBinaryOutputInterfaceValue")
 	}
 	interfaceValue := _interfaceValue.(BACnetOptionalBinaryPV)
 	if closeErr := readBuffer.CloseContext("interfaceValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go
index 91e02bb1c..392c77dcd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryOutputPresentValueParse(readBuffer utils.ReadBuf
 	}
 	_presentValue, _presentValueErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataBinaryOutputPresentValue")
 	}
 	presentValue := _presentValue.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go
index aff67b4d5..a5ea01af0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryOutputRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryOutputRelinquishDefaultParse(readBuffer utils.Re
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataBinaryOutputRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go
index 11b922f76..01c3fb034 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryValuePresentValueParse(readBuffer utils.ReadBuff
 	}
 	_presentValue, _presentValueErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataBinaryValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go
index 3c01b815a..e88b22186 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBinaryValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBinaryValueRelinquishDefaultParse(readBuffer utils.Rea
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataBinaryValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go
index caf68fa54..25811f69e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitMask.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBitMaskParse(readBuffer utils.ReadBuffer, tagNumber ui
 	}
 	_bitString, _bitStringErr := BACnetApplicationTagParse(readBuffer)
 	if _bitStringErr != nil {
-		return nil, errors.Wrap(_bitStringErr, "Error parsing 'bitString' field")
+		return nil, errors.Wrap(_bitStringErr, "Error parsing 'bitString' field of BACnetConstructedDataBitMask")
 	}
 	bitString := _bitString.(BACnetApplicationTagBitString)
 	if closeErr := readBuffer.CloseContext("bitString"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go
index 574d3e501..58dd3b531 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueAlarmValues.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataBitStringValueAlarmValuesParse(readBuffer utils.ReadBu
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataBitStringValueAlarmValues")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataBitStringValueAlarmValuesParse(readBuffer utils.ReadBu
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field of BACnetConstructedDataBitStringValueAlarmValues")
 			}
 			alarmValues = append(alarmValues, _item.(BACnetApplicationTagBitString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go
index df09fd224..4c67a3b49 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBitStringValuePresentValueParse(readBuffer utils.ReadB
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataBitStringValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagBitString)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go
index 15727530d..e4f6512ae 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitStringValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBitStringValueRelinquishDefaultParse(readBuffer utils.
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetApplicationTagParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataBitStringValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetApplicationTagBitString)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go
index 6c3e9ace9..27cb32405 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBitText.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataBitTextParse(readBuffer utils.ReadBuffer, tagNumber ui
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataBitText")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataBitTextParse(readBuffer utils.ReadBuffer, tagNumber ui
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'bitText' field")
+				return nil, errors.Wrap(_err, "Error parsing 'bitText' field of BACnetConstructedDataBitText")
 			}
 			bitText = append(bitText, _item.(BACnetApplicationTagCharacterString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go
index 1d77968b4..ba6bf0e1a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBlinkWarnEnable.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBlinkWarnEnableParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_blinkWarnEnable, _blinkWarnEnableErr := BACnetApplicationTagParse(readBuffer)
 	if _blinkWarnEnableErr != nil {
-		return nil, errors.Wrap(_blinkWarnEnableErr, "Error parsing 'blinkWarnEnable' field")
+		return nil, errors.Wrap(_blinkWarnEnableErr, "Error parsing 'blinkWarnEnable' field of BACnetConstructedDataBlinkWarnEnable")
 	}
 	blinkWarnEnable := _blinkWarnEnable.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("blinkWarnEnable"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go
index ee7017644..845ef2bfb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataBufferSize.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataBufferSizeParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_bufferSize, _bufferSizeErr := BACnetApplicationTagParse(readBuffer)
 	if _bufferSizeErr != nil {
-		return nil, errors.Wrap(_bufferSizeErr, "Error parsing 'bufferSize' field")
+		return nil, errors.Wrap(_bufferSizeErr, "Error parsing 'bufferSize' field of BACnetConstructedDataBufferSize")
 	}
 	bufferSize := _bufferSize.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("bufferSize"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go
index 8facdb3ab..61ffc2d51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVIncrement.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCOVIncrementParse(readBuffer utils.ReadBuffer, tagNumb
 	}
 	_covIncrement, _covIncrementErr := BACnetApplicationTagParse(readBuffer)
 	if _covIncrementErr != nil {
-		return nil, errors.Wrap(_covIncrementErr, "Error parsing 'covIncrement' field")
+		return nil, errors.Wrap(_covIncrementErr, "Error parsing 'covIncrement' field of BACnetConstructedDataCOVIncrement")
 	}
 	covIncrement := _covIncrement.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("covIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go
index 3159baa08..8280017c3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVPeriod.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCOVPeriodParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_covPeriod, _covPeriodErr := BACnetApplicationTagParse(readBuffer)
 	if _covPeriodErr != nil {
-		return nil, errors.Wrap(_covPeriodErr, "Error parsing 'covPeriod' field")
+		return nil, errors.Wrap(_covPeriodErr, "Error parsing 'covPeriod' field of BACnetConstructedDataCOVPeriod")
 	}
 	covPeriod := _covPeriod.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("covPeriod"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go
index a0de6f3c4..7a1b732e7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVResubscriptionInterval.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCOVResubscriptionIntervalParse(readBuffer utils.ReadBu
 	}
 	_covResubscriptionInterval, _covResubscriptionIntervalErr := BACnetApplicationTagParse(readBuffer)
 	if _covResubscriptionIntervalErr != nil {
-		return nil, errors.Wrap(_covResubscriptionIntervalErr, "Error parsing 'covResubscriptionInterval' field")
+		return nil, errors.Wrap(_covResubscriptionIntervalErr, "Error parsing 'covResubscriptionInterval' field of BACnetConstructedDataCOVResubscriptionInterval")
 	}
 	covResubscriptionInterval := _covResubscriptionInterval.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("covResubscriptionInterval"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go
index 37438ef80..6aa31435c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVUPeriod.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCOVUPeriodParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_covuPeriod, _covuPeriodErr := BACnetApplicationTagParse(readBuffer)
 	if _covuPeriodErr != nil {
-		return nil, errors.Wrap(_covuPeriodErr, "Error parsing 'covuPeriod' field")
+		return nil, errors.Wrap(_covuPeriodErr, "Error parsing 'covuPeriod' field of BACnetConstructedDataCOVUPeriod")
 	}
 	covuPeriod := _covuPeriod.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("covuPeriod"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go
index 6690a0f2d..d559caee4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCOVURecipients.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataCOVURecipientsParse(readBuffer utils.ReadBuffer, tagNu
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetRecipientParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'covuRecipients' field")
+				return nil, errors.Wrap(_err, "Error parsing 'covuRecipients' field of BACnetConstructedDataCOVURecipients")
 			}
 			covuRecipients = append(covuRecipients, _item.(BACnetRecipient))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go
index 111b3596d..732586ca1 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCalendarPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCalendarPresentValueParse(readBuffer utils.ReadBuffer,
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataCalendarPresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go
index 0157f5b2b..276af4f96 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarAssignedDirection.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarAssignedDirectionParse(readBuffer utils.ReadBuffer,
 	}
 	_assignedDirection, _assignedDirectionErr := BACnetLiftCarDirectionTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _assignedDirectionErr != nil {
-		return nil, errors.Wrap(_assignedDirectionErr, "Error parsing 'assignedDirection' field")
+		return nil, errors.Wrap(_assignedDirectionErr, "Error parsing 'assignedDirection' field of BACnetConstructedDataCarAssignedDirection")
 	}
 	assignedDirection := _assignedDirection.(BACnetLiftCarDirectionTagged)
 	if closeErr := readBuffer.CloseContext("assignedDirection"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go
index c9742517b..bff668be5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorCommand.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCarDoorCommandParse(readBuffer utils.ReadBuffer, tagNu
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCarDoorCommand")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCarDoorCommandParse(readBuffer utils.ReadBuffer, tagNu
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetLiftCarDoorCommandTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'carDoorCommand' field")
+				return nil, errors.Wrap(_err, "Error parsing 'carDoorCommand' field of BACnetConstructedDataCarDoorCommand")
 			}
 			carDoorCommand = append(carDoorCommand, _item.(BACnetLiftCarDoorCommandTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go
index 544aff0f1..3d3705dac 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorStatus.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCarDoorStatusParse(readBuffer utils.ReadBuffer, tagNum
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCarDoorStatus")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCarDoorStatusParse(readBuffer utils.ReadBuffer, tagNum
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDoorStatusTaggedParse(readBuffer, uint8(0), TagClass_APPLICATION_TAGS)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'carDoorStatus' field")
+				return nil, errors.Wrap(_err, "Error parsing 'carDoorStatus' field of BACnetConstructedDataCarDoorStatus")
 			}
 			carDoorStatus = append(carDoorStatus, _item.(BACnetDoorStatusTagged))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go
index a4d09e01e..2564850d0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorText.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCarDoorTextParse(readBuffer utils.ReadBuffer, tagNumbe
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCarDoorText")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCarDoorTextParse(readBuffer utils.ReadBuffer, tagNumbe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'carDoorText' field")
+				return nil, errors.Wrap(_err, "Error parsing 'carDoorText' field of BACnetConstructedDataCarDoorText")
 			}
 			carDoorText = append(carDoorText, _item.(BACnetApplicationTagCharacterString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go
index ad56ac8ae..c980a9d40 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDoorZone.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarDoorZoneParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_carDoorZone, _carDoorZoneErr := BACnetApplicationTagParse(readBuffer)
 	if _carDoorZoneErr != nil {
-		return nil, errors.Wrap(_carDoorZoneErr, "Error parsing 'carDoorZone' field")
+		return nil, errors.Wrap(_carDoorZoneErr, "Error parsing 'carDoorZone' field of BACnetConstructedDataCarDoorZone")
 	}
 	carDoorZone := _carDoorZone.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("carDoorZone"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go
index 125a5ec1d..e9975c1e4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarDriveStatus.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarDriveStatusParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_carDriveStatus, _carDriveStatusErr := BACnetLiftCarDriveStatusTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _carDriveStatusErr != nil {
-		return nil, errors.Wrap(_carDriveStatusErr, "Error parsing 'carDriveStatus' field")
+		return nil, errors.Wrap(_carDriveStatusErr, "Error parsing 'carDriveStatus' field of BACnetConstructedDataCarDriveStatus")
 	}
 	carDriveStatus := _carDriveStatus.(BACnetLiftCarDriveStatusTagged)
 	if closeErr := readBuffer.CloseContext("carDriveStatus"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go
index 9bb3165b4..2875753b7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoad.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarLoadParse(readBuffer utils.ReadBuffer, tagNumber ui
 	}
 	_carLoad, _carLoadErr := BACnetApplicationTagParse(readBuffer)
 	if _carLoadErr != nil {
-		return nil, errors.Wrap(_carLoadErr, "Error parsing 'carLoad' field")
+		return nil, errors.Wrap(_carLoadErr, "Error parsing 'carLoad' field of BACnetConstructedDataCarLoad")
 	}
 	carLoad := _carLoad.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("carLoad"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go
index 654feed5a..b4144e697 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarLoadUnits.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarLoadUnitsParse(readBuffer utils.ReadBuffer, tagNumb
 	}
 	_units, _unitsErr := BACnetEngineeringUnitsTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _unitsErr != nil {
-		return nil, errors.Wrap(_unitsErr, "Error parsing 'units' field")
+		return nil, errors.Wrap(_unitsErr, "Error parsing 'units' field of BACnetConstructedDataCarLoadUnits")
 	}
 	units := _units.(BACnetEngineeringUnitsTagged)
 	if closeErr := readBuffer.CloseContext("units"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go
index af8b8b10d..93a548852 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMode.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarModeParse(readBuffer utils.ReadBuffer, tagNumber ui
 	}
 	_carMode, _carModeErr := BACnetLiftCarModeTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _carModeErr != nil {
-		return nil, errors.Wrap(_carModeErr, "Error parsing 'carMode' field")
+		return nil, errors.Wrap(_carModeErr, "Error parsing 'carMode' field of BACnetConstructedDataCarMode")
 	}
 	carMode := _carMode.(BACnetLiftCarModeTagged)
 	if closeErr := readBuffer.CloseContext("carMode"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go
index 30528b863..d58b2d217 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarMovingDirection.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarMovingDirectionParse(readBuffer utils.ReadBuffer, t
 	}
 	_carMovingDirection, _carMovingDirectionErr := BACnetLiftCarDirectionTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _carMovingDirectionErr != nil {
-		return nil, errors.Wrap(_carMovingDirectionErr, "Error parsing 'carMovingDirection' field")
+		return nil, errors.Wrap(_carMovingDirectionErr, "Error parsing 'carMovingDirection' field of BACnetConstructedDataCarMovingDirection")
 	}
 	carMovingDirection := _carMovingDirection.(BACnetLiftCarDirectionTagged)
 	if closeErr := readBuffer.CloseContext("carMovingDirection"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go
index 7f248d681..66fb70b62 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCarPosition.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCarPositionParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_carPosition, _carPositionErr := BACnetApplicationTagParse(readBuffer)
 	if _carPositionErr != nil {
-		return nil, errors.Wrap(_carPositionErr, "Error parsing 'carPosition' field")
+		return nil, errors.Wrap(_carPositionErr, "Error parsing 'carPosition' field of BACnetConstructedDataCarPosition")
 	}
 	carPosition := _carPosition.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("carPosition"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go
index d697b97fe..84b0cf53f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateCount.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataChangeOfStateCountParse(readBuffer utils.ReadBuffer, t
 	}
 	_changeIfStateCount, _changeIfStateCountErr := BACnetApplicationTagParse(readBuffer)
 	if _changeIfStateCountErr != nil {
-		return nil, errors.Wrap(_changeIfStateCountErr, "Error parsing 'changeIfStateCount' field")
+		return nil, errors.Wrap(_changeIfStateCountErr, "Error parsing 'changeIfStateCount' field of BACnetConstructedDataChangeOfStateCount")
 	}
 	changeIfStateCount := _changeIfStateCount.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("changeIfStateCount"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go
index 9f39072c2..554222b51 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangeOfStateTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataChangeOfStateTimeParse(readBuffer utils.ReadBuffer, ta
 	}
 	_changeOfStateTime, _changeOfStateTimeErr := BACnetDateTimeParse(readBuffer)
 	if _changeOfStateTimeErr != nil {
-		return nil, errors.Wrap(_changeOfStateTimeErr, "Error parsing 'changeOfStateTime' field")
+		return nil, errors.Wrap(_changeOfStateTimeErr, "Error parsing 'changeOfStateTime' field of BACnetConstructedDataChangeOfStateTime")
 	}
 	changeOfStateTime := _changeOfStateTime.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("changeOfStateTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go
index 6de4eaf72..2c2d10665 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChangesPending.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataChangesPendingParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_changesPending, _changesPendingErr := BACnetApplicationTagParse(readBuffer)
 	if _changesPendingErr != nil {
-		return nil, errors.Wrap(_changesPendingErr, "Error parsing 'changesPending' field")
+		return nil, errors.Wrap(_changesPendingErr, "Error parsing 'changesPending' field of BACnetConstructedDataChangesPending")
 	}
 	changesPending := _changesPending.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("changesPending"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go
index 61c26dabf..e8216db88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelListOfObjectPropertyReferences.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataChannelListOfObjectPropertyReferencesParse(readBuffer
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataChannelListOfObjectPropertyReferences")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataChannelListOfObjectPropertyReferencesParse(readBuffer
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDeviceObjectPropertyReferenceParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'references' field")
+				return nil, errors.Wrap(_err, "Error parsing 'references' field of BACnetConstructedDataChannelListOfObjectPropertyReferences")
 			}
 			references = append(references, _item.(BACnetDeviceObjectPropertyReference))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go
index ad9bc37bc..7c37490eb 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelNumber.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataChannelNumberParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_channelNumber, _channelNumberErr := BACnetApplicationTagParse(readBuffer)
 	if _channelNumberErr != nil {
-		return nil, errors.Wrap(_channelNumberErr, "Error parsing 'channelNumber' field")
+		return nil, errors.Wrap(_channelNumberErr, "Error parsing 'channelNumber' field of BACnetConstructedDataChannelNumber")
 	}
 	channelNumber := _channelNumber.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("channelNumber"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go
index e8a25191e..4ba3d9b5f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataChannelPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataChannelPresentValueParse(readBuffer utils.ReadBuffer,
 	}
 	_presentValue, _presentValueErr := BACnetChannelValueParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataChannelPresentValue")
 	}
 	presentValue := _presentValue.(BACnetChannelValue)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go
index 319e73992..f03de752e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueAlarmValues.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCharacterStringValueAlarmValuesParse(readBuffer utils.
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCharacterStringValueAlarmValues")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCharacterStringValueAlarmValuesParse(readBuffer utils.
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetOptionalCharacterStringParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'alarmValues' field of BACnetConstructedDataCharacterStringValueAlarmValues")
 			}
 			alarmValues = append(alarmValues, _item.(BACnetOptionalCharacterString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go
index 9487e664b..536569ffd 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueFaultValues.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCharacterStringValueFaultValuesParse(readBuffer utils.
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCharacterStringValueFaultValues")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCharacterStringValueFaultValuesParse(readBuffer utils.
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetOptionalCharacterStringParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'faultValues' field")
+				return nil, errors.Wrap(_err, "Error parsing 'faultValues' field of BACnetConstructedDataCharacterStringValueFaultValues")
 			}
 			faultValues = append(faultValues, _item.(BACnetOptionalCharacterString))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go
index 8d2497159..c6275ec9d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCharacterStringValuePresentValueParse(readBuffer utils
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataCharacterStringValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go
index c92e00ad2..b9cd4b24d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCharacterStringValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCharacterStringValueRelinquishDefaultParse(readBuffer
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetApplicationTagParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataCharacterStringValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go
index 4785148ee..29f017f7d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataClientCOVIncrement.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataClientCOVIncrementParse(readBuffer utils.ReadBuffer, t
 	}
 	_covIncrement, _covIncrementErr := BACnetClientCOVParse(readBuffer)
 	if _covIncrementErr != nil {
-		return nil, errors.Wrap(_covIncrementErr, "Error parsing 'covIncrement' field")
+		return nil, errors.Wrap(_covIncrementErr, "Error parsing 'covIncrement' field of BACnetConstructedDataClientCOVIncrement")
 	}
 	covIncrement := _covIncrement.(BACnetClientCOV)
 	if closeErr := readBuffer.CloseContext("covIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go
index 895b33be1..04a2db01d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommand.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCommandParse(readBuffer utils.ReadBuffer, tagNumber ui
 	}
 	_command, _commandErr := BACnetNetworkPortCommandTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _commandErr != nil {
-		return nil, errors.Wrap(_commandErr, "Error parsing 'command' field")
+		return nil, errors.Wrap(_commandErr, "Error parsing 'command' field of BACnetConstructedDataCommand")
 	}
 	command := _command.(BACnetNetworkPortCommandTagged)
 	if closeErr := readBuffer.CloseContext("command"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go
index 95898fe02..22950d007 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandAction.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCommandActionParse(readBuffer utils.ReadBuffer, tagNum
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCommandAction")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCommandActionParse(readBuffer utils.ReadBuffer, tagNum
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetActionListParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'actionLists' field")
+				return nil, errors.Wrap(_err, "Error parsing 'actionLists' field of BACnetConstructedDataCommandAction")
 			}
 			actionLists = append(actionLists, _item.(BACnetActionList))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go
index f3c8dcbec..68d271119 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCommandTimeArray.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataCommandTimeArrayParse(readBuffer utils.ReadBuffer, tag
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataCommandTimeArray")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataCommandTimeArrayParse(readBuffer utils.ReadBuffer, tag
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetTimeStampParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'commandTimeArray' field")
+				return nil, errors.Wrap(_err, "Error parsing 'commandTimeArray' field of BACnetConstructedDataCommandTimeArray")
 			}
 			commandTimeArray = append(commandTimeArray, _item.(BACnetTimeStamp))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go
index 497d2251c..683309a98 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataConfigurationFiles.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataConfigurationFilesParse(readBuffer utils.ReadBuffer, t
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataConfigurationFiles")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataConfigurationFilesParse(readBuffer utils.ReadBuffer, t
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'configurationFiles' field")
+				return nil, errors.Wrap(_err, "Error parsing 'configurationFiles' field of BACnetConstructedDataConfigurationFiles")
 			}
 			configurationFiles = append(configurationFiles, _item.(BACnetApplicationTagObjectIdentifier))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go
index 13b706749..434d500a5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlGroups.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataControlGroupsParse(readBuffer utils.ReadBuffer, tagNum
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataControlGroups")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataControlGroupsParse(readBuffer utils.ReadBuffer, tagNum
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'controlGroups' field")
+				return nil, errors.Wrap(_err, "Error parsing 'controlGroups' field of BACnetConstructedDataControlGroups")
 			}
 			controlGroups = append(controlGroups, _item.(BACnetApplicationTagUnsignedInteger))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go
index 23455d1f9..42807efce 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableReference.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataControlledVariableReferenceParse(readBuffer utils.Read
 	}
 	_controlledVariableReference, _controlledVariableReferenceErr := BACnetObjectPropertyReferenceParse(readBuffer)
 	if _controlledVariableReferenceErr != nil {
-		return nil, errors.Wrap(_controlledVariableReferenceErr, "Error parsing 'controlledVariableReference' field")
+		return nil, errors.Wrap(_controlledVariableReferenceErr, "Error parsing 'controlledVariableReference' field of BACnetConstructedDataControlledVariableReference")
 	}
 	controlledVariableReference := _controlledVariableReference.(BACnetObjectPropertyReference)
 	if closeErr := readBuffer.CloseContext("controlledVariableReference"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go
index 9765cc0ae..2b6721875 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableUnits.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataControlledVariableUnitsParse(readBuffer utils.ReadBuff
 	}
 	_units, _unitsErr := BACnetEngineeringUnitsTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _unitsErr != nil {
-		return nil, errors.Wrap(_unitsErr, "Error parsing 'units' field")
+		return nil, errors.Wrap(_unitsErr, "Error parsing 'units' field of BACnetConstructedDataControlledVariableUnits")
 	}
 	units := _units.(BACnetEngineeringUnitsTagged)
 	if closeErr := readBuffer.CloseContext("units"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go
index 5f6be3aee..cb39f8680 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataControlledVariableValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataControlledVariableValueParse(readBuffer utils.ReadBuff
 	}
 	_controlledVariableValue, _controlledVariableValueErr := BACnetApplicationTagParse(readBuffer)
 	if _controlledVariableValueErr != nil {
-		return nil, errors.Wrap(_controlledVariableValueErr, "Error parsing 'controlledVariableValue' field")
+		return nil, errors.Wrap(_controlledVariableValueErr, "Error parsing 'controlledVariableValue' field of BACnetConstructedDataControlledVariableValue")
 	}
 	controlledVariableValue := _controlledVariableValue.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("controlledVariableValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go
index c8728e893..74df86b1e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCount.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCountParse(readBuffer utils.ReadBuffer, tagNumber uint
 	}
 	_count, _countErr := BACnetApplicationTagParse(readBuffer)
 	if _countErr != nil {
-		return nil, errors.Wrap(_countErr, "Error parsing 'count' field")
+		return nil, errors.Wrap(_countErr, "Error parsing 'count' field of BACnetConstructedDataCount")
 	}
 	count := _count.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("count"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go
index 2a8298c93..686e28a79 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountBeforeChange.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCountBeforeChangeParse(readBuffer utils.ReadBuffer, ta
 	}
 	_countBeforeChange, _countBeforeChangeErr := BACnetApplicationTagParse(readBuffer)
 	if _countBeforeChangeErr != nil {
-		return nil, errors.Wrap(_countBeforeChangeErr, "Error parsing 'countBeforeChange' field")
+		return nil, errors.Wrap(_countBeforeChangeErr, "Error parsing 'countBeforeChange' field of BACnetConstructedDataCountBeforeChange")
 	}
 	countBeforeChange := _countBeforeChange.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("countBeforeChange"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go
index 4009de39a..c00e22f88 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCountChangeTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCountChangeTimeParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_countChangeTime, _countChangeTimeErr := BACnetDateTimeParse(readBuffer)
 	if _countChangeTimeErr != nil {
-		return nil, errors.Wrap(_countChangeTimeErr, "Error parsing 'countChangeTime' field")
+		return nil, errors.Wrap(_countChangeTimeErr, "Error parsing 'countChangeTime' field of BACnetConstructedDataCountChangeTime")
 	}
 	countChangeTime := _countChangeTime.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("countChangeTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go
index 318d348fc..0b0ef5be7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputPresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCredentialDataInputPresentValueParse(readBuffer utils.
 	}
 	_presentValue, _presentValueErr := BACnetAuthenticationFactorParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataCredentialDataInputPresentValue")
 	}
 	presentValue := _presentValue.(BACnetAuthenticationFactor)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go
index b5218c83f..f67451be7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDataInputUpdateTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCredentialDataInputUpdateTimeParse(readBuffer utils.Re
 	}
 	_updateTime, _updateTimeErr := BACnetTimeStampParse(readBuffer)
 	if _updateTimeErr != nil {
-		return nil, errors.Wrap(_updateTimeErr, "Error parsing 'updateTime' field")
+		return nil, errors.Wrap(_updateTimeErr, "Error parsing 'updateTime' field of BACnetConstructedDataCredentialDataInputUpdateTime")
 	}
 	updateTime := _updateTime.(BACnetTimeStamp)
 	if closeErr := readBuffer.CloseContext("updateTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go
index 7f3c231f1..76d477c2a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialDisable.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCredentialDisableParse(readBuffer utils.ReadBuffer, ta
 	}
 	_credentialDisable, _credentialDisableErr := BACnetAccessCredentialDisableTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _credentialDisableErr != nil {
-		return nil, errors.Wrap(_credentialDisableErr, "Error parsing 'credentialDisable' field")
+		return nil, errors.Wrap(_credentialDisableErr, "Error parsing 'credentialDisable' field of BACnetConstructedDataCredentialDisable")
 	}
 	credentialDisable := _credentialDisable.(BACnetAccessCredentialDisableTagged)
 	if closeErr := readBuffer.CloseContext("credentialDisable"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go
index 0641435b1..e0358f3ae 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialStatus.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCredentialStatusParse(readBuffer utils.ReadBuffer, tag
 	}
 	_binaryPv, _binaryPvErr := BACnetBinaryPVTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _binaryPvErr != nil {
-		return nil, errors.Wrap(_binaryPvErr, "Error parsing 'binaryPv' field")
+		return nil, errors.Wrap(_binaryPvErr, "Error parsing 'binaryPv' field of BACnetConstructedDataCredentialStatus")
 	}
 	binaryPv := _binaryPv.(BACnetBinaryPVTagged)
 	if closeErr := readBuffer.CloseContext("binaryPv"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go
index 292b40d4f..1bad1a0a3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentials.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataCredentialsParse(readBuffer utils.ReadBuffer, tagNumbe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDeviceObjectReferenceParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'credentials' field")
+				return nil, errors.Wrap(_err, "Error parsing 'credentials' field of BACnetConstructedDataCredentials")
 			}
 			credentials = append(credentials, _item.(BACnetDeviceObjectReference))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go
index c4c00dedb..65294ba9e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCredentialsInZone.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataCredentialsInZoneParse(readBuffer utils.ReadBuffer, ta
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDeviceObjectReferenceParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'credentialsInZone' field")
+				return nil, errors.Wrap(_err, "Error parsing 'credentialsInZone' field of BACnetConstructedDataCredentialsInZone")
 			}
 			credentialsInZone = append(credentialsInZone, _item.(BACnetDeviceObjectReference))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go
index f6e86b7b5..f1e84eefc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataCurrentCommandPriority.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataCurrentCommandPriorityParse(readBuffer utils.ReadBuffe
 	}
 	_currentCommandPriority, _currentCommandPriorityErr := BACnetOptionalUnsignedParse(readBuffer)
 	if _currentCommandPriorityErr != nil {
-		return nil, errors.Wrap(_currentCommandPriorityErr, "Error parsing 'currentCommandPriority' field")
+		return nil, errors.Wrap(_currentCommandPriorityErr, "Error parsing 'currentCommandPriority' field of BACnetConstructedDataCurrentCommandPriority")
 	}
 	currentCommandPriority := _currentCommandPriority.(BACnetOptionalUnsigned)
 	if closeErr := readBuffer.CloseContext("currentCommandPriority"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go
index efad7b0a6..b81147830 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatabaseRevision.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDatabaseRevisionParse(readBuffer utils.ReadBuffer, tag
 	}
 	_databaseRevision, _databaseRevisionErr := BACnetApplicationTagParse(readBuffer)
 	if _databaseRevisionErr != nil {
-		return nil, errors.Wrap(_databaseRevisionErr, "Error parsing 'databaseRevision' field")
+		return nil, errors.Wrap(_databaseRevisionErr, "Error parsing 'databaseRevision' field of BACnetConstructedDataDatabaseRevision")
 	}
 	databaseRevision := _databaseRevision.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("databaseRevision"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go
index e96a820b4..6a861a05a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateList.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataDateListParse(readBuffer utils.ReadBuffer, tagNumber u
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetCalendarEntryParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'dateList' field")
+				return nil, errors.Wrap(_err, "Error parsing 'dateList' field of BACnetConstructedDataDateList")
 			}
 			dateList = append(dateList, _item.(BACnetCalendarEntry))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go
index 10c6adb0a..3907566c5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDatePatternValuePresentValueParse(readBuffer utils.Rea
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataDatePatternValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagDate)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go
index 3af19c6f7..1197333fa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDatePatternValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDatePatternValueRelinquishDefaultParse(readBuffer util
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetApplicationTagParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataDatePatternValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetApplicationTagDate)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go
index 014369541..f7b02c0d2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDateTimePatternValuePresentValueParse(readBuffer utils
 	}
 	_presentValue, _presentValueErr := BACnetDateTimeParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataDateTimePatternValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go
index e0acf1c95..f98768b60 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimePatternValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDateTimePatternValueRelinquishDefaultParse(readBuffer
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetDateTimeParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataDateTimePatternValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go
index 272c0617c..d2aa1b0c8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDateTimeValuePresentValueParse(readBuffer utils.ReadBu
 	}
 	_presentValue, _presentValueErr := BACnetDateTimeParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataDateTimeValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go
index 3f2a13733..240cb12be 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateTimeValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDateTimeValueRelinquishDefaultParse(readBuffer utils.R
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetDateTimeParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataDateTimeValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetDateTime)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go
index 46fc7fd14..68ea55cd6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValuePresentValue.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDateValuePresentValueParse(readBuffer utils.ReadBuffer
 	}
 	_presentValue, _presentValueErr := BACnetApplicationTagParse(readBuffer)
 	if _presentValueErr != nil {
-		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field")
+		return nil, errors.Wrap(_presentValueErr, "Error parsing 'presentValue' field of BACnetConstructedDataDateValuePresentValue")
 	}
 	presentValue := _presentValue.(BACnetApplicationTagDate)
 	if closeErr := readBuffer.CloseContext("presentValue"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go
index e921d737d..c4467e7d6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDateValueRelinquishDefault.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDateValueRelinquishDefaultParse(readBuffer utils.ReadB
 	}
 	_relinquishDefault, _relinquishDefaultErr := BACnetApplicationTagParse(readBuffer)
 	if _relinquishDefaultErr != nil {
-		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field")
+		return nil, errors.Wrap(_relinquishDefaultErr, "Error parsing 'relinquishDefault' field of BACnetConstructedDataDateValueRelinquishDefault")
 	}
 	relinquishDefault := _relinquishDefault.(BACnetApplicationTagDate)
 	if closeErr := readBuffer.CloseContext("relinquishDefault"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go
index 42d80ecd7..917abe841 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaylightSavingsStatus.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDaylightSavingsStatusParse(readBuffer utils.ReadBuffer
 	}
 	_daylightSavingsStatus, _daylightSavingsStatusErr := BACnetApplicationTagParse(readBuffer)
 	if _daylightSavingsStatusErr != nil {
-		return nil, errors.Wrap(_daylightSavingsStatusErr, "Error parsing 'daylightSavingsStatus' field")
+		return nil, errors.Wrap(_daylightSavingsStatusErr, "Error parsing 'daylightSavingsStatus' field of BACnetConstructedDataDaylightSavingsStatus")
 	}
 	daylightSavingsStatus := _daylightSavingsStatus.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("daylightSavingsStatus"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go
index 732fc0a04..fd718b11f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDaysRemaining.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDaysRemainingParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_daysRemaining, _daysRemainingErr := BACnetApplicationTagParse(readBuffer)
 	if _daysRemainingErr != nil {
-		return nil, errors.Wrap(_daysRemainingErr, "Error parsing 'daysRemaining' field")
+		return nil, errors.Wrap(_daysRemainingErr, "Error parsing 'daysRemaining' field of BACnetConstructedDataDaysRemaining")
 	}
 	daysRemaining := _daysRemaining.(BACnetApplicationTagSignedInteger)
 	if closeErr := readBuffer.CloseContext("daysRemaining"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go
index 4566acdc5..16bc3925f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeadband.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDeadbandParse(readBuffer utils.ReadBuffer, tagNumber u
 	}
 	_deadband, _deadbandErr := BACnetApplicationTagParse(readBuffer)
 	if _deadbandErr != nil {
-		return nil, errors.Wrap(_deadbandErr, "Error parsing 'deadband' field")
+		return nil, errors.Wrap(_deadbandErr, "Error parsing 'deadband' field of BACnetConstructedDataDeadband")
 	}
 	deadband := _deadband.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("deadband"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go
index 3000efe67..5009e3ccc 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultFadeTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDefaultFadeTimeParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_defaultFadeTime, _defaultFadeTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _defaultFadeTimeErr != nil {
-		return nil, errors.Wrap(_defaultFadeTimeErr, "Error parsing 'defaultFadeTime' field")
+		return nil, errors.Wrap(_defaultFadeTimeErr, "Error parsing 'defaultFadeTime' field of BACnetConstructedDataDefaultFadeTime")
 	}
 	defaultFadeTime := _defaultFadeTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("defaultFadeTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go
index c88cdd2bb..2cb2126b5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultRampRate.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDefaultRampRateParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_defaultRampRate, _defaultRampRateErr := BACnetApplicationTagParse(readBuffer)
 	if _defaultRampRateErr != nil {
-		return nil, errors.Wrap(_defaultRampRateErr, "Error parsing 'defaultRampRate' field")
+		return nil, errors.Wrap(_defaultRampRateErr, "Error parsing 'defaultRampRate' field of BACnetConstructedDataDefaultRampRate")
 	}
 	defaultRampRate := _defaultRampRate.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("defaultRampRate"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go
index 1b6a4904b..7e6dcad21 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultStepIncrement.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDefaultStepIncrementParse(readBuffer utils.ReadBuffer,
 	}
 	_defaultStepIncrement, _defaultStepIncrementErr := BACnetApplicationTagParse(readBuffer)
 	if _defaultStepIncrementErr != nil {
-		return nil, errors.Wrap(_defaultStepIncrementErr, "Error parsing 'defaultStepIncrement' field")
+		return nil, errors.Wrap(_defaultStepIncrementErr, "Error parsing 'defaultStepIncrement' field of BACnetConstructedDataDefaultStepIncrement")
 	}
 	defaultStepIncrement := _defaultStepIncrement.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("defaultStepIncrement"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go
index ba4a0a644..31c501ea8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultSubordinateRelationship.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDefaultSubordinateRelationshipParse(readBuffer utils.R
 	}
 	_defaultSubordinateRelationship, _defaultSubordinateRelationshipErr := BACnetRelationshipTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _defaultSubordinateRelationshipErr != nil {
-		return nil, errors.Wrap(_defaultSubordinateRelationshipErr, "Error parsing 'defaultSubordinateRelationship' field")
+		return nil, errors.Wrap(_defaultSubordinateRelationshipErr, "Error parsing 'defaultSubordinateRelationship' field of BACnetConstructedDataDefaultSubordinateRelationship")
 	}
 	defaultSubordinateRelationship := _defaultSubordinateRelationship.(BACnetRelationshipTagged)
 	if closeErr := readBuffer.CloseContext("defaultSubordinateRelationship"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go
index d4577844c..e8b078a07 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDefaultTimeout.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDefaultTimeoutParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_defaultTimeout, _defaultTimeoutErr := BACnetApplicationTagParse(readBuffer)
 	if _defaultTimeoutErr != nil {
-		return nil, errors.Wrap(_defaultTimeoutErr, "Error parsing 'defaultTimeout' field")
+		return nil, errors.Wrap(_defaultTimeoutErr, "Error parsing 'defaultTimeout' field of BACnetConstructedDataDefaultTimeout")
 	}
 	defaultTimeout := _defaultTimeout.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("defaultTimeout"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go
index 434a15f43..de8a75a27 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeployedProfileLocation.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDeployedProfileLocationParse(readBuffer utils.ReadBuff
 	}
 	_deployedProfileLocation, _deployedProfileLocationErr := BACnetApplicationTagParse(readBuffer)
 	if _deployedProfileLocationErr != nil {
-		return nil, errors.Wrap(_deployedProfileLocationErr, "Error parsing 'deployedProfileLocation' field")
+		return nil, errors.Wrap(_deployedProfileLocationErr, "Error parsing 'deployedProfileLocation' field of BACnetConstructedDataDeployedProfileLocation")
 	}
 	deployedProfileLocation := _deployedProfileLocation.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("deployedProfileLocation"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go
index c05f2e583..9b0c25d3e 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstant.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDerivativeConstantParse(readBuffer utils.ReadBuffer, t
 	}
 	_derivativeConstant, _derivativeConstantErr := BACnetApplicationTagParse(readBuffer)
 	if _derivativeConstantErr != nil {
-		return nil, errors.Wrap(_derivativeConstantErr, "Error parsing 'derivativeConstant' field")
+		return nil, errors.Wrap(_derivativeConstantErr, "Error parsing 'derivativeConstant' field of BACnetConstructedDataDerivativeConstant")
 	}
 	derivativeConstant := _derivativeConstant.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("derivativeConstant"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go
index fca04a7a9..86c579ce3 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDerivativeConstantUnits.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDerivativeConstantUnitsParse(readBuffer utils.ReadBuff
 	}
 	_units, _unitsErr := BACnetEngineeringUnitsTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _unitsErr != nil {
-		return nil, errors.Wrap(_unitsErr, "Error parsing 'units' field")
+		return nil, errors.Wrap(_unitsErr, "Error parsing 'units' field of BACnetConstructedDataDerivativeConstantUnits")
 	}
 	units := _units.(BACnetEngineeringUnitsTagged)
 	if closeErr := readBuffer.CloseContext("units"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go
index 7966426da..f7fd1232a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescription.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDescriptionParse(readBuffer utils.ReadBuffer, tagNumbe
 	}
 	_description, _descriptionErr := BACnetApplicationTagParse(readBuffer)
 	if _descriptionErr != nil {
-		return nil, errors.Wrap(_descriptionErr, "Error parsing 'description' field")
+		return nil, errors.Wrap(_descriptionErr, "Error parsing 'description' field of BACnetConstructedDataDescription")
 	}
 	description := _description.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("description"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go
index 16a97e88d..602e5d5a2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDescriptionOfHalt.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDescriptionOfHaltParse(readBuffer utils.ReadBuffer, ta
 	}
 	_descriptionForHalt, _descriptionForHaltErr := BACnetApplicationTagParse(readBuffer)
 	if _descriptionForHaltErr != nil {
-		return nil, errors.Wrap(_descriptionForHaltErr, "Error parsing 'descriptionForHalt' field")
+		return nil, errors.Wrap(_descriptionForHaltErr, "Error parsing 'descriptionForHalt' field of BACnetConstructedDataDescriptionOfHalt")
 	}
 	descriptionForHalt := _descriptionForHalt.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("descriptionForHalt"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go
index 7fc94bef3..286e7fbb8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceAddressBinding.go
@@ -155,7 +155,7 @@ func BACnetConstructedDataDeviceAddressBindingParse(readBuffer utils.ReadBuffer,
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetAddressBindingParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'deviceAddressBinding' field")
+				return nil, errors.Wrap(_err, "Error parsing 'deviceAddressBinding' field of BACnetConstructedDataDeviceAddressBinding")
 			}
 			deviceAddressBinding = append(deviceAddressBinding, _item.(BACnetAddressBinding))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go
index 7ee1208d9..89f8f1523 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxInfoFrames.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDeviceMaxInfoFramesParse(readBuffer utils.ReadBuffer,
 	}
 	_maxInfoFrames, _maxInfoFramesErr := BACnetApplicationTagParse(readBuffer)
 	if _maxInfoFramesErr != nil {
-		return nil, errors.Wrap(_maxInfoFramesErr, "Error parsing 'maxInfoFrames' field")
+		return nil, errors.Wrap(_maxInfoFramesErr, "Error parsing 'maxInfoFrames' field of BACnetConstructedDataDeviceMaxInfoFrames")
 	}
 	maxInfoFrames := _maxInfoFrames.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("maxInfoFrames"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go
index 844b5fbde..606925ec4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceMaxMaster.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDeviceMaxMasterParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_maxMaster, _maxMasterErr := BACnetApplicationTagParse(readBuffer)
 	if _maxMasterErr != nil {
-		return nil, errors.Wrap(_maxMasterErr, "Error parsing 'maxMaster' field")
+		return nil, errors.Wrap(_maxMasterErr, "Error parsing 'maxMaster' field of BACnetConstructedDataDeviceMaxMaster")
 	}
 	maxMaster := _maxMaster.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("maxMaster"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go
index d8ef05fa0..a6e45f92b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDeviceType.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDeviceTypeParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_deviceType, _deviceTypeErr := BACnetApplicationTagParse(readBuffer)
 	if _deviceTypeErr != nil {
-		return nil, errors.Wrap(_deviceTypeErr, "Error parsing 'deviceType' field")
+		return nil, errors.Wrap(_deviceTypeErr, "Error parsing 'deviceType' field of BACnetConstructedDataDeviceType")
 	}
 	deviceType := _deviceType.(BACnetApplicationTagCharacterString)
 	if closeErr := readBuffer.CloseContext("deviceType"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go
index 077b883ae..4bff907a0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDirectReading.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDirectReadingParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_directReading, _directReadingErr := BACnetApplicationTagParse(readBuffer)
 	if _directReadingErr != nil {
-		return nil, errors.Wrap(_directReadingErr, "Error parsing 'directReading' field")
+		return nil, errors.Wrap(_directReadingErr, "Error parsing 'directReading' field of BACnetConstructedDataDirectReading")
 	}
 	directReading := _directReading.(BACnetApplicationTagReal)
 	if closeErr := readBuffer.CloseContext("directReading"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go
index 285e46f8e..f58070ea7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDistributionKeyRevision.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDistributionKeyRevisionParse(readBuffer utils.ReadBuff
 	}
 	_distributionKeyRevision, _distributionKeyRevisionErr := BACnetApplicationTagParse(readBuffer)
 	if _distributionKeyRevisionErr != nil {
-		return nil, errors.Wrap(_distributionKeyRevisionErr, "Error parsing 'distributionKeyRevision' field")
+		return nil, errors.Wrap(_distributionKeyRevisionErr, "Error parsing 'distributionKeyRevision' field of BACnetConstructedDataDistributionKeyRevision")
 	}
 	distributionKeyRevision := _distributionKeyRevision.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("distributionKeyRevision"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go
index 910bc8c88..0131eb561 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoNotHide.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoNotHideParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_doNotHide, _doNotHideErr := BACnetApplicationTagParse(readBuffer)
 	if _doNotHideErr != nil {
-		return nil, errors.Wrap(_doNotHideErr, "Error parsing 'doNotHide' field")
+		return nil, errors.Wrap(_doNotHideErr, "Error parsing 'doNotHide' field of BACnetConstructedDataDoNotHide")
 	}
 	doNotHide := _doNotHide.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("doNotHide"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go
index fdf55388b..e21656baf 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorAlarmState.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoorAlarmStateParse(readBuffer utils.ReadBuffer, tagNu
 	}
 	_doorAlarmState, _doorAlarmStateErr := BACnetDoorAlarmStateTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _doorAlarmStateErr != nil {
-		return nil, errors.Wrap(_doorAlarmStateErr, "Error parsing 'doorAlarmState' field")
+		return nil, errors.Wrap(_doorAlarmStateErr, "Error parsing 'doorAlarmState' field of BACnetConstructedDataDoorAlarmState")
 	}
 	doorAlarmState := _doorAlarmState.(BACnetDoorAlarmStateTagged)
 	if closeErr := readBuffer.CloseContext("doorAlarmState"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go
index 7bafcf68f..405481fc4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorExtendedPulseTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoorExtendedPulseTimeParse(readBuffer utils.ReadBuffer
 	}
 	_doorExtendedPulseTime, _doorExtendedPulseTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _doorExtendedPulseTimeErr != nil {
-		return nil, errors.Wrap(_doorExtendedPulseTimeErr, "Error parsing 'doorExtendedPulseTime' field")
+		return nil, errors.Wrap(_doorExtendedPulseTimeErr, "Error parsing 'doorExtendedPulseTime' field of BACnetConstructedDataDoorExtendedPulseTime")
 	}
 	doorExtendedPulseTime := _doorExtendedPulseTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("doorExtendedPulseTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go
index d4d53dde5..2f95b0a7d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorMembers.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataDoorMembersParse(readBuffer utils.ReadBuffer, tagNumbe
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataDoorMembers")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataDoorMembersParse(readBuffer utils.ReadBuffer, tagNumbe
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetDeviceObjectReferenceParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'doorMembers' field")
+				return nil, errors.Wrap(_err, "Error parsing 'doorMembers' field of BACnetConstructedDataDoorMembers")
 			}
 			doorMembers = append(doorMembers, _item.(BACnetDeviceObjectReference))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go
index 94f2a84d8..0b7369342 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorOpenTooLongTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoorOpenTooLongTimeParse(readBuffer utils.ReadBuffer,
 	}
 	_doorOpenTooLongTime, _doorOpenTooLongTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _doorOpenTooLongTimeErr != nil {
-		return nil, errors.Wrap(_doorOpenTooLongTimeErr, "Error parsing 'doorOpenTooLongTime' field")
+		return nil, errors.Wrap(_doorOpenTooLongTimeErr, "Error parsing 'doorOpenTooLongTime' field of BACnetConstructedDataDoorOpenTooLongTime")
 	}
 	doorOpenTooLongTime := _doorOpenTooLongTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("doorOpenTooLongTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go
index 77b51e503..3ed102581 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorPulseTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoorPulseTimeParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_doorPulseTime, _doorPulseTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _doorPulseTimeErr != nil {
-		return nil, errors.Wrap(_doorPulseTimeErr, "Error parsing 'doorPulseTime' field")
+		return nil, errors.Wrap(_doorPulseTimeErr, "Error parsing 'doorPulseTime' field of BACnetConstructedDataDoorPulseTime")
 	}
 	doorPulseTime := _doorPulseTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("doorPulseTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go
index ca0434a08..fb0c1ecf0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorStatus.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoorStatusParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_doorStatus, _doorStatusErr := BACnetDoorStatusTaggedParse(readBuffer, uint8(uint8(0)), TagClass(TagClass_APPLICATION_TAGS))
 	if _doorStatusErr != nil {
-		return nil, errors.Wrap(_doorStatusErr, "Error parsing 'doorStatus' field")
+		return nil, errors.Wrap(_doorStatusErr, "Error parsing 'doorStatus' field of BACnetConstructedDataDoorStatus")
 	}
 	doorStatus := _doorStatus.(BACnetDoorStatusTagged)
 	if closeErr := readBuffer.CloseContext("doorStatus"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go
index cf241adcb..000b4d0c5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDoorUnlockDelayTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDoorUnlockDelayTimeParse(readBuffer utils.ReadBuffer,
 	}
 	_doorUnlockDelayTime, _doorUnlockDelayTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _doorUnlockDelayTimeErr != nil {
-		return nil, errors.Wrap(_doorUnlockDelayTimeErr, "Error parsing 'doorUnlockDelayTime' field")
+		return nil, errors.Wrap(_doorUnlockDelayTimeErr, "Error parsing 'doorUnlockDelayTime' field of BACnetConstructedDataDoorUnlockDelayTime")
 	}
 	doorUnlockDelayTime := _doorUnlockDelayTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("doorUnlockDelayTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go
index 9f8a64bcc..0df85af49 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataDutyWindow.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataDutyWindowParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_dutyWindow, _dutyWindowErr := BACnetApplicationTagParse(readBuffer)
 	if _dutyWindowErr != nil {
-		return nil, errors.Wrap(_dutyWindowErr, "Error parsing 'dutyWindow' field")
+		return nil, errors.Wrap(_dutyWindowErr, "Error parsing 'dutyWindow' field of BACnetConstructedDataDutyWindow")
 	}
 	dutyWindow := _dutyWindow.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("dutyWindow"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go
index d4ff0816e..0e713f905 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEffectivePeriod.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataEffectivePeriodParse(readBuffer utils.ReadBuffer, tagN
 	}
 	_dateRange, _dateRangeErr := BACnetDateRangeParse(readBuffer)
 	if _dateRangeErr != nil {
-		return nil, errors.Wrap(_dateRangeErr, "Error parsing 'dateRange' field")
+		return nil, errors.Wrap(_dateRangeErr, "Error parsing 'dateRange' field of BACnetConstructedDataEffectivePeriod")
 	}
 	dateRange := _dateRange.(BACnetDateRange)
 	if closeErr := readBuffer.CloseContext("dateRange"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go
index f234539ed..4beeb35c6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressActive.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataEgressActiveParse(readBuffer utils.ReadBuffer, tagNumb
 	}
 	_egressActive, _egressActiveErr := BACnetApplicationTagParse(readBuffer)
 	if _egressActiveErr != nil {
-		return nil, errors.Wrap(_egressActiveErr, "Error parsing 'egressActive' field")
+		return nil, errors.Wrap(_egressActiveErr, "Error parsing 'egressActive' field of BACnetConstructedDataEgressActive")
 	}
 	egressActive := _egressActive.(BACnetApplicationTagBoolean)
 	if closeErr := readBuffer.CloseContext("egressActive"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go
index 9563cea1d..b3c97fdb5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEgressTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataEgressTimeParse(readBuffer utils.ReadBuffer, tagNumber
 	}
 	_egressTime, _egressTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _egressTimeErr != nil {
-		return nil, errors.Wrap(_egressTimeErr, "Error parsing 'egressTime' field")
+		return nil, errors.Wrap(_egressTimeErr, "Error parsing 'egressTime' field of BACnetConstructedDataEgressTime")
 	}
 	egressTime := _egressTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("egressTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go
index 4a123800f..862f7d1d4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElapsedActiveTime.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataElapsedActiveTimeParse(readBuffer utils.ReadBuffer, ta
 	}
 	_elapsedActiveTime, _elapsedActiveTimeErr := BACnetApplicationTagParse(readBuffer)
 	if _elapsedActiveTimeErr != nil {
-		return nil, errors.Wrap(_elapsedActiveTimeErr, "Error parsing 'elapsedActiveTime' field")
+		return nil, errors.Wrap(_elapsedActiveTimeErr, "Error parsing 'elapsedActiveTime' field of BACnetConstructedDataElapsedActiveTime")
 	}
 	elapsedActiveTime := _elapsedActiveTime.(BACnetApplicationTagUnsignedInteger)
 	if closeErr := readBuffer.CloseContext("elapsedActiveTime"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
index 7abce3a79..b86f6479d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElement.go
@@ -257,7 +257,7 @@ func BACnetConstructedDataElementParse(readBuffer utils.ReadBuffer, objectTypeAr
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'applicationTag' field")
+			return nil, errors.Wrap(_err, "Error parsing 'applicationTag' field of BACnetConstructedDataElement")
 		default:
 			applicationTag = _val.(BACnetApplicationTag)
 			if closeErr := readBuffer.CloseContext("applicationTag"); closeErr != nil {
@@ -279,7 +279,7 @@ func BACnetConstructedDataElementParse(readBuffer utils.ReadBuffer, objectTypeAr
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'contextTag' field")
+			return nil, errors.Wrap(_err, "Error parsing 'contextTag' field of BACnetConstructedDataElement")
 		default:
 			contextTag = _val.(BACnetContextTag)
 			if closeErr := readBuffer.CloseContext("contextTag"); closeErr != nil {
@@ -301,7 +301,7 @@ func BACnetConstructedDataElementParse(readBuffer utils.ReadBuffer, objectTypeAr
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'constructedData' field")
+			return nil, errors.Wrap(_err, "Error parsing 'constructedData' field of BACnetConstructedDataElement")
 		default:
 			constructedData = _val.(BACnetConstructedData)
 			if closeErr := readBuffer.CloseContext("constructedData"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go
index c387481f8..4114d0381 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroup.go
@@ -164,7 +164,7 @@ func BACnetConstructedDataElevatorGroupParse(readBuffer utils.ReadBuffer, tagNum
 	}
 	_elevatorGroup, _elevatorGroupErr := BACnetApplicationTagParse(readBuffer)
 	if _elevatorGroupErr != nil {
-		return nil, errors.Wrap(_elevatorGroupErr, "Error parsing 'elevatorGroup' field")
+		return nil, errors.Wrap(_elevatorGroupErr, "Error parsing 'elevatorGroup' field of BACnetConstructedDataElevatorGroup")
 	}
 	elevatorGroup := _elevatorGroup.(BACnetApplicationTagObjectIdentifier)
 	if closeErr := readBuffer.CloseContext("elevatorGroup"); closeErr != nil {
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go
index 6c8c9e27e..1cc4d6523 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataElevatorGroupGroupMembers.go
@@ -197,7 +197,7 @@ func BACnetConstructedDataElevatorGroupGroupMembersParse(readBuffer utils.ReadBu
 			log.Debug().Err(_err).Msg("Resetting position because optional threw an error")
 			readBuffer.Reset(currentPos)
 		case _err != nil:
-			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field")
+			return nil, errors.Wrap(_err, "Error parsing 'numberOfDataElements' field of BACnetConstructedDataElevatorGroupGroupMembers")
 		default:
 			numberOfDataElements = _val.(BACnetApplicationTagUnsignedInteger)
 			if closeErr := readBuffer.CloseContext("numberOfDataElements"); closeErr != nil {
@@ -216,7 +216,7 @@ func BACnetConstructedDataElevatorGroupGroupMembersParse(readBuffer utils.ReadBu
 		for !bool(IsBACnetConstructedDataClosingTag(readBuffer, false, tagNumber)) {
 			_item, _err := BACnetApplicationTagParse(readBuffer)
 			if _err != nil {
-				return nil, errors.Wrap(_err, "Error parsing 'groupMembers' field")
+				return nil, errors.Wrap(_err, "Error parsing 'groupMembers' field of BACnetConstructedDataElevatorGroupGroupMembers")
 			}
 			groupMembers = append(groupMembers, _item.(BACnetApplicationTagObjectIdentifier))
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnable.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedDataEnable.go
... 30054 lines suppressed ...


[plc4x] 01/06: feat(c-bus): refined c-bus mspec

Posted by sr...@apache.org.
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

commit ace05fb77d2211447c2c06db628853d3c89257c4
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Jul 1 11:48:42 2022 +0200

    feat(c-bus): refined c-bus mspec
---
 plc4go/protocols/cbus/readwrite/ParserHelper.go    |  10 +
 plc4go/protocols/cbus/readwrite/XmlParserHelper.go |   7 +
 plc4go/protocols/cbus/readwrite/model/CALReply.go  |  87 +++----
 .../protocols/cbus/readwrite/model/CALReplyLong.go |   7 +-
 .../cbus/readwrite/model/CALReplyReply.go          |   8 +-
 .../cbus/readwrite/model/CALReplyShort.go          |   7 +-
 .../protocols/cbus/readwrite/model/CBusCommand.go  |  56 ++++-
 .../readwrite/model/CBusCommandDeviceManagement.go | 253 +++++++++++++++++++++
 .../CBusCommandPointToPointToMultiPointNormal.go   |  42 +---
 .../CBusCommandPointToPointToMultiPointStatus.go   |  42 +---
 .../protocols/cbus/readwrite/model/CBusHeader.go   |  70 +++---
 .../cbus/readwrite/model/CBusMessageToClient.go    |  54 ++---
 .../cbus/readwrite/model/CBusMessageToServer.go    |  54 ++---
 .../model/CBusPointToMultiPointCommand.go          |  45 +++-
 .../model/CBusPointToMultiPointCommandNormal.go    |  42 +---
 .../model/CBusPointToMultiPointCommandStatus.go    |  42 +---
 .../readwrite/model/CBusPointToPointCommand.go     |  68 +++---
 .../model/CBusPointToPointCommandDirect.go         |   7 +-
 .../model/CBusPointToPointCommandIndirect.go       |   7 +-
 .../model/CBusPointToPointToMultipointCommand.go   |  45 +++-
 .../cbus/readwrite/model/ConfirmationReply.go      |   8 +-
 .../cbus/readwrite/model/ExclamationMarkReply.go   |   8 +-
 .../readwrite/model/ExtendedFormatStatusReply.go   |  79 +++----
 .../protocols/cbus/readwrite/model/MonitoredSAL.go |  87 +++----
 .../model/MonitoredSALLongFormSmartMode.go         |   7 +-
 .../cbus/readwrite/model/MonitoredSALReply.go      |   8 +-
 .../model/MonitoredSALShortFormBasicMode.go        |   7 +-
 .../cbus/readwrite/model/ParameterChange.go        |  80 ++++---
 .../cbus/readwrite/model/ParameterChangeReply.go   |   8 +-
 plc4go/protocols/cbus/readwrite/model/PowerUp.go   | 153 +++++++++----
 .../protocols/cbus/readwrite/model/PowerUpReply.go |   8 +-
 plc4go/protocols/cbus/readwrite/model/Reply.go     |  62 +++--
 .../cbus/readwrite/model/{Reply.go => Request.go}  | 129 ++++++-----
 .../cbus/readwrite/model/RequestCommand.go         | 203 +++++++++++++++++
 .../readwrite/model/RequestDirectCommandAccess.go  | 238 +++++++++++++++++++
 .../protocols/cbus/readwrite/model/RequestReset.go | 238 +++++++++++++++++++
 .../readwrite/model/RequestSmartConnectShortcut.go | 238 +++++++++++++++++++
 .../cbus/readwrite/model/RequestTermination.go     | 159 +++++++++++++
 .../model/{PowerUp.go => ResponseTermination.go}   | 107 ++++-----
 .../readwrite/model/StandardFormatStatusReply.go   |  79 +++----
 .../src/main/resources/protocols/cbus/c-bus.mspec  | 131 ++++++-----
 41 files changed, 2162 insertions(+), 828 deletions(-)

diff --git a/plc4go/protocols/cbus/readwrite/ParserHelper.go b/plc4go/protocols/cbus/readwrite/ParserHelper.go
index 5b8dd0adf..f1b65d3e3 100644
--- a/plc4go/protocols/cbus/readwrite/ParserHelper.go
+++ b/plc4go/protocols/cbus/readwrite/ParserHelper.go
@@ -44,6 +44,8 @@ func (m CbusParserHelper) Parse(typeName string, arguments []string, io utils.Re
 		return model.NetworkRouteParse(io)
 	case "NetworkNumber":
 		return model.NetworkNumberParse(io)
+	case "RequestTermination":
+		return model.RequestTerminationParse(io)
 	case "StandardFormatStatusReply":
 		return model.StandardFormatStatusReplyParse(io)
 	case "CBusMessage":
@@ -56,6 +58,8 @@ func (m CbusParserHelper) Parse(typeName string, arguments []string, io utils.Re
 			return nil, errors.Wrap(err, "Error parsing")
 		}
 		return model.CBusMessageParse(io, response, srchk)
+	case "ResponseTermination":
+		return model.ResponseTerminationParse(io)
 	case "CBusOptions":
 		return model.CBusOptionsParse(io)
 	case "SALData":
@@ -113,6 +117,12 @@ func (m CbusParserHelper) Parse(typeName string, arguments []string, io utils.Re
 		return model.ExtendedFormatStatusReplyParse(io)
 	case "CBusHeader":
 		return model.CBusHeaderParse(io)
+	case "Request":
+		srchk, err := utils.StrToBool(arguments[0])
+		if err != nil {
+			return nil, errors.Wrap(err, "Error parsing")
+		}
+		return model.RequestParse(io, srchk)
 	case "CBusPointToPointCommand":
 		srchk, err := utils.StrToBool(arguments[0])
 		if err != nil {
diff --git a/plc4go/protocols/cbus/readwrite/XmlParserHelper.go b/plc4go/protocols/cbus/readwrite/XmlParserHelper.go
index 79f4224d1..0f505af0c 100644
--- a/plc4go/protocols/cbus/readwrite/XmlParserHelper.go
+++ b/plc4go/protocols/cbus/readwrite/XmlParserHelper.go
@@ -54,12 +54,16 @@ func (m CbusXmlParserHelper) Parse(typeName string, xmlString string, parserArgu
 		return model.NetworkRouteParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
 	case "NetworkNumber":
 		return model.NetworkNumberParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "RequestTermination":
+		return model.RequestTerminationParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
 	case "StandardFormatStatusReply":
 		return model.StandardFormatStatusReplyParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
 	case "CBusMessage":
 		response := parserArguments[0] == "true"
 		srchk := parserArguments[1] == "true"
 		return model.CBusMessageParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), response, srchk)
+	case "ResponseTermination":
+		return model.ResponseTerminationParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
 	case "CBusOptions":
 		return model.CBusOptionsParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
 	case "SALData":
@@ -111,6 +115,9 @@ func (m CbusXmlParserHelper) Parse(typeName string, xmlString string, parserArgu
 		return model.ExtendedFormatStatusReplyParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
 	case "CBusHeader":
 		return model.CBusHeaderParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)))
+	case "Request":
+		srchk := parserArguments[0] == "true"
+		return model.RequestParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), srchk)
 	case "CBusPointToPointCommand":
 		srchk := parserArguments[0] == "true"
 		return model.CBusPointToPointCommandParse(utils.NewXmlReadBuffer(strings.NewReader(xmlString)), srchk)
diff --git a/plc4go/protocols/cbus/readwrite/model/CALReply.go b/plc4go/protocols/cbus/readwrite/model/CALReply.go
index eb8853fb3..b5d617fab 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALReply.go
@@ -20,17 +20,12 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 )
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const CALReply_CR byte = 0x0D
-const CALReply_LF byte = 0x0A
-
 // CALReply is the corresponding interface of CALReply
 type CALReply interface {
 	utils.LengthAware
@@ -39,6 +34,8 @@ type CALReply interface {
 	GetCalType() byte
 	// GetCalData returns CalData (property field)
 	GetCalData() CALData
+	// GetTermination returns Termination (property field)
+	GetTermination() ResponseTermination
 }
 
 // CALReplyExactly can be used when we want exactly this type and not a type which fulfills CALReply.
@@ -51,8 +48,9 @@ type CALReplyExactly interface {
 // _CALReply is the data-structure of this message
 type _CALReply struct {
 	_CALReplyChildRequirements
-	CalType byte
-	CalData CALData
+	CalType     byte
+	CalData     CALData
+	Termination ResponseTermination
 }
 
 type _CALReplyChildRequirements interface {
@@ -68,7 +66,7 @@ type CALReplyParent interface {
 
 type CALReplyChild interface {
 	utils.Serializable
-	InitializeParent(parent CALReply, calType byte, calData CALData)
+	InitializeParent(parent CALReply, calType byte, calData CALData, termination ResponseTermination)
 	GetParent() *CALReply
 
 	GetTypeName() string
@@ -88,21 +86,8 @@ func (m *_CALReply) GetCalData() CALData {
 	return m.CalData
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_CALReply) GetCr() byte {
-	return CALReply_CR
-}
-
-func (m *_CALReply) GetLf() byte {
-	return CALReply_LF
+func (m *_CALReply) GetTermination() ResponseTermination {
+	return m.Termination
 }
 
 ///////////////////////
@@ -111,8 +96,8 @@ func (m *_CALReply) GetLf() byte {
 ///////////////////////////////////////////////////////////
 
 // NewCALReply factory function for _CALReply
-func NewCALReply(calType byte, calData CALData) *_CALReply {
-	return &_CALReply{CalType: calType, CalData: calData}
+func NewCALReply(calType byte, calData CALData, termination ResponseTermination) *_CALReply {
+	return &_CALReply{CalType: calType, CalData: calData, Termination: termination}
 }
 
 // Deprecated: use the interface for direct cast
@@ -136,11 +121,8 @@ func (m *_CALReply) GetParentLengthInBits() uint16 {
 	// Simple field (calData)
 	lengthInBits += m.CalData.GetLengthInBits()
 
-	// Const Field (cr)
-	lengthInBits += 8
-
-	// Const Field (lf)
-	lengthInBits += 8
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -170,7 +152,7 @@ func CALReplyParse(readBuffer utils.ReadBuffer) (CALReply, error) {
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	type CALReplyChildSerializeRequirement interface {
 		CALReply
-		InitializeParent(CALReply, byte, CALData)
+		InitializeParent(CALReply, byte, CALData, ResponseTermination)
 		GetParent() CALReply
 	}
 	var _childTemp interface{}
@@ -203,22 +185,17 @@ func CALReplyParse(readBuffer utils.ReadBuffer) (CALReply, error) {
 		return nil, errors.Wrap(closeErr, "Error closing for calData")
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
 	}
-	if cr != CALReply_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CALReply_CR) + " but got " + fmt.Sprintf("%d", cr))
+	_termination, _terminationErr := ResponseTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
 	}
-
-	// Const Field (lf)
-	lf, _lfErr := readBuffer.ReadByte("lf")
-	if _lfErr != nil {
-		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
-	}
-	if lf != CALReply_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CALReply_LF) + " but got " + fmt.Sprintf("%d", lf))
+	termination := _termination.(ResponseTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
 	}
 
 	if closeErr := readBuffer.CloseContext("CALReply"); closeErr != nil {
@@ -226,7 +203,7 @@ func CALReplyParse(readBuffer utils.ReadBuffer) (CALReply, error) {
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, calType, calData)
+	_child.InitializeParent(_child, calType, calData, termination)
 	return _child, nil
 }
 
@@ -257,16 +234,16 @@ func (pm *_CALReply) SerializeParent(writeBuffer utils.WriteBuffer, child CALRep
 		return errors.Wrap(_calDataErr, "Error serializing 'calData' field")
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0x0D)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
 	}
-
-	// Const Field (lf)
-	_lfErr := writeBuffer.WriteByte("lf", 0x0A)
-	if _lfErr != nil {
-		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("CALReply"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/CALReplyLong.go b/plc4go/protocols/cbus/readwrite/model/CALReplyLong.go
index 492c7db06..a1d60ae09 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALReplyLong.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALReplyLong.go
@@ -77,9 +77,10 @@ type _CALReplyLong struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CALReplyLong) InitializeParent(parent CALReply, calType byte, calData CALData) {
+func (m *_CALReplyLong) InitializeParent(parent CALReply, calType byte, calData CALData, termination ResponseTermination) {
 	m.CalType = calType
 	m.CalData = calData
+	m.Termination = termination
 }
 
 func (m *_CALReplyLong) GetParent() CALReply {
@@ -142,7 +143,7 @@ func (m *_CALReplyLong) GetIsUnitAddress() bool {
 ///////////////////////////////////////////////////////////
 
 // NewCALReplyLong factory function for _CALReplyLong
-func NewCALReplyLong(terminatingByte uint32, unitAddress UnitAddress, bridgeAddress BridgeAddress, serialInterfaceAddress SerialInterfaceAddress, reservedByte *byte, replyNetwork ReplyNetwork, calType byte, calData CALData) *_CALReplyLong {
+func NewCALReplyLong(terminatingByte uint32, unitAddress UnitAddress, bridgeAddress BridgeAddress, serialInterfaceAddress SerialInterfaceAddress, reservedByte *byte, replyNetwork ReplyNetwork, calType byte, calData CALData, termination ResponseTermination) *_CALReplyLong {
 	_result := &_CALReplyLong{
 		TerminatingByte:        terminatingByte,
 		UnitAddress:            unitAddress,
@@ -150,7 +151,7 @@ func NewCALReplyLong(terminatingByte uint32, unitAddress UnitAddress, bridgeAddr
 		SerialInterfaceAddress: serialInterfaceAddress,
 		ReservedByte:           reservedByte,
 		ReplyNetwork:           replyNetwork,
-		_CALReply:              NewCALReply(calType, calData),
+		_CALReply:              NewCALReply(calType, calData, termination),
 	}
 	_result._CALReply._CALReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/CALReplyReply.go b/plc4go/protocols/cbus/readwrite/model/CALReplyReply.go
index 354bd141e..77847fed5 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALReplyReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALReplyReply.go
@@ -58,8 +58,8 @@ type _CALReplyReply struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CALReplyReply) InitializeParent(parent Reply, magicByte byte) {
-	m.MagicByte = magicByte
+func (m *_CALReplyReply) InitializeParent(parent Reply, peekedByte byte) {
+	m.PeekedByte = peekedByte
 }
 
 func (m *_CALReplyReply) GetParent() Reply {
@@ -81,10 +81,10 @@ func (m *_CALReplyReply) GetIsA() CALReply {
 ///////////////////////////////////////////////////////////
 
 // NewCALReplyReply factory function for _CALReplyReply
-func NewCALReplyReply(isA CALReply, magicByte byte) *_CALReplyReply {
+func NewCALReplyReply(isA CALReply, peekedByte byte) *_CALReplyReply {
 	_result := &_CALReplyReply{
 		IsA:    isA,
-		_Reply: NewReply(magicByte),
+		_Reply: NewReply(peekedByte),
 	}
 	_result._Reply._ReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/CALReplyShort.go b/plc4go/protocols/cbus/readwrite/model/CALReplyShort.go
index 2aea990ba..57b8355b5 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALReplyShort.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALReplyShort.go
@@ -55,9 +55,10 @@ type _CALReplyShort struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CALReplyShort) InitializeParent(parent CALReply, calType byte, calData CALData) {
+func (m *_CALReplyShort) InitializeParent(parent CALReply, calType byte, calData CALData, termination ResponseTermination) {
 	m.CalType = calType
 	m.CalData = calData
+	m.Termination = termination
 }
 
 func (m *_CALReplyShort) GetParent() CALReply {
@@ -65,9 +66,9 @@ func (m *_CALReplyShort) GetParent() CALReply {
 }
 
 // NewCALReplyShort factory function for _CALReplyShort
-func NewCALReplyShort(calType byte, calData CALData) *_CALReplyShort {
+func NewCALReplyShort(calType byte, calData CALData, termination ResponseTermination) *_CALReplyShort {
 	_result := &_CALReplyShort{
-		_CALReply: NewCALReply(calType, calData),
+		_CALReply: NewCALReply(calType, calData, termination),
 	}
 	_result._CALReply._CALReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
index 0150558c4..ef87910ea 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
@@ -20,18 +20,24 @@
 package model
 
 import (
+	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 )
 
 // Code generated by code-generation. DO NOT EDIT.
 
+// Constant values.
+const CBusCommand_INITIATOR byte = 0x5C
+
 // CBusCommand is the corresponding interface of CBusCommand
 type CBusCommand interface {
 	utils.LengthAware
 	utils.Serializable
 	// GetHeader returns Header (property field)
 	GetHeader() CBusHeader
+	// GetIsDeviceManagement returns IsDeviceManagement (virtual field)
+	GetIsDeviceManagement() bool
 	// GetDestinationAddressType returns DestinationAddressType (virtual field)
 	GetDestinationAddressType() DestinationAddressType
 }
@@ -90,10 +96,27 @@ func (m *_CBusCommand) GetHeader() CBusHeader {
 /////////////////////// Accessors for virtual fields.
 ///////////////////////
 
+func (m *_CBusCommand) GetIsDeviceManagement() bool {
+	return bool(m.GetHeader().GetDp())
+}
+
 func (m *_CBusCommand) GetDestinationAddressType() DestinationAddressType {
 	return CastDestinationAddressType(m.GetHeader().GetDestinationAddressType())
 }
 
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_CBusCommand) GetInitiator() byte {
+	return CBusCommand_INITIATOR
+}
+
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
@@ -122,11 +145,16 @@ func (m *_CBusCommand) GetTypeName() string {
 func (m *_CBusCommand) GetParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 
+	// Const Field (initiator)
+	lengthInBits += 8
+
 	// Simple field (header)
 	lengthInBits += m.Header.GetLengthInBits()
 
 	// A virtual field doesn't have any in- or output.
 
+	// A virtual field doesn't have any in- or output.
+
 	return lengthInBits
 }
 
@@ -143,6 +171,15 @@ func CBusCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBusCommand, err
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
+	// Const Field (initiator)
+	initiator, _initiatorErr := readBuffer.ReadByte("initiator")
+	if _initiatorErr != nil {
+		return nil, errors.Wrap(_initiatorErr, "Error parsing 'initiator' field")
+	}
+	if initiator != CBusCommand_INITIATOR {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusCommand_INITIATOR) + " but got " + fmt.Sprintf("%d", initiator))
+	}
+
 	// Simple Field (header)
 	if pullErr := readBuffer.PullContext("header"); pullErr != nil {
 		return nil, errors.Wrap(pullErr, "Error pulling for header")
@@ -156,6 +193,11 @@ func CBusCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBusCommand, err
 		return nil, errors.Wrap(closeErr, "Error closing for header")
 	}
 
+	// Virtual field
+	_isDeviceManagement := header.GetDp()
+	isDeviceManagement := bool(_isDeviceManagement)
+	_ = isDeviceManagement
+
 	// Virtual field
 	_destinationAddressType := header.GetDestinationAddressType()
 	destinationAddressType := DestinationAddressType(_destinationAddressType)
@@ -171,6 +213,8 @@ func CBusCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBusCommand, err
 	var _child CBusCommandChildSerializeRequirement
 	var typeSwitchError error
 	switch {
+	case true && isDeviceManagement == bool(true): // CBusCommandDeviceManagement
+		_childTemp, typeSwitchError = CBusCommandDeviceManagementParse(readBuffer, srchk)
 	case destinationAddressType == DestinationAddressType_PointToPointToMultiPoint: // CBusCommandPointToPointToMultiPoint
 		_childTemp, typeSwitchError = CBusCommandPointToPointToMultiPointParse(readBuffer, srchk)
 	case destinationAddressType == DestinationAddressType_PointToMultiPoint: // CBusCommandPointToMultiPoint
@@ -179,7 +223,7 @@ func CBusCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBusCommand, err
 		_childTemp, typeSwitchError = CBusCommandPointToPointParse(readBuffer, srchk)
 	default:
 		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for destinationAddressType:%v isDeviceManagement:%v", destinationAddressType, isDeviceManagement)
 	}
 	if typeSwitchError != nil {
 		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
@@ -205,6 +249,12 @@ func (pm *_CBusCommand) SerializeParent(writeBuffer utils.WriteBuffer, child CBu
 		return errors.Wrap(pushErr, "Error pushing for CBusCommand")
 	}
 
+	// Const Field (initiator)
+	_initiatorErr := writeBuffer.WriteByte("initiator", 0x5C)
+	if _initiatorErr != nil {
+		return errors.Wrap(_initiatorErr, "Error serializing 'initiator' field")
+	}
+
 	// Simple Field (header)
 	if pushErr := writeBuffer.PushContext("header"); pushErr != nil {
 		return errors.Wrap(pushErr, "Error pushing for header")
@@ -217,6 +267,10 @@ func (pm *_CBusCommand) SerializeParent(writeBuffer utils.WriteBuffer, child CBu
 		return errors.Wrap(_headerErr, "Error serializing 'header' field")
 	}
 	// Virtual field
+	if _isDeviceManagementErr := writeBuffer.WriteVirtual("isDeviceManagement", m.GetIsDeviceManagement()); _isDeviceManagementErr != nil {
+		return errors.Wrap(_isDeviceManagementErr, "Error serializing 'isDeviceManagement' field")
+	}
+	// Virtual field
 	if _destinationAddressTypeErr := writeBuffer.WriteVirtual("destinationAddressType", m.GetDestinationAddressType()); _destinationAddressTypeErr != nil {
 		return errors.Wrap(_destinationAddressTypeErr, "Error serializing 'destinationAddressType' field")
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusCommandDeviceManagement.go b/plc4go/protocols/cbus/readwrite/model/CBusCommandDeviceManagement.go
new file mode 100644
index 000000000..32f1bed48
--- /dev/null
+++ b/plc4go/protocols/cbus/readwrite/model/CBusCommandDeviceManagement.go
@@ -0,0 +1,253 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package model
+
+import (
+	"fmt"
+	"github.com/apache/plc4x/plc4go/internal/spi/utils"
+	"github.com/pkg/errors"
+)
+
+// Code generated by code-generation. DO NOT EDIT.
+
+// Constant values.
+const CBusCommandDeviceManagement_DELIMITER byte = 0x0
+
+// CBusCommandDeviceManagement is the corresponding interface of CBusCommandDeviceManagement
+type CBusCommandDeviceManagement interface {
+	utils.LengthAware
+	utils.Serializable
+	CBusCommand
+	// GetParameterNumber returns ParameterNumber (property field)
+	GetParameterNumber() uint8
+	// GetParameterValue returns ParameterValue (property field)
+	GetParameterValue() byte
+}
+
+// CBusCommandDeviceManagementExactly can be used when we want exactly this type and not a type which fulfills CBusCommandDeviceManagement.
+// This is useful for switch cases.
+type CBusCommandDeviceManagementExactly interface {
+	CBusCommandDeviceManagement
+	isCBusCommandDeviceManagement() bool
+}
+
+// _CBusCommandDeviceManagement is the data-structure of this message
+type _CBusCommandDeviceManagement struct {
+	*_CBusCommand
+	ParameterNumber uint8
+	ParameterValue  byte
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for discriminator values.
+///////////////////////
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+func (m *_CBusCommandDeviceManagement) InitializeParent(parent CBusCommand, header CBusHeader) {
+	m.Header = header
+}
+
+func (m *_CBusCommandDeviceManagement) GetParent() CBusCommand {
+	return m._CBusCommand
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for property fields.
+///////////////////////
+
+func (m *_CBusCommandDeviceManagement) GetParameterNumber() uint8 {
+	return m.ParameterNumber
+}
+
+func (m *_CBusCommandDeviceManagement) GetParameterValue() byte {
+	return m.ParameterValue
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_CBusCommandDeviceManagement) GetDelimiter() byte {
+	return CBusCommandDeviceManagement_DELIMITER
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+// NewCBusCommandDeviceManagement factory function for _CBusCommandDeviceManagement
+func NewCBusCommandDeviceManagement(parameterNumber uint8, parameterValue byte, header CBusHeader, srchk bool) *_CBusCommandDeviceManagement {
+	_result := &_CBusCommandDeviceManagement{
+		ParameterNumber: parameterNumber,
+		ParameterValue:  parameterValue,
+		_CBusCommand:    NewCBusCommand(header, srchk),
+	}
+	_result._CBusCommand._CBusCommandChildRequirements = _result
+	return _result
+}
+
+// Deprecated: use the interface for direct cast
+func CastCBusCommandDeviceManagement(structType interface{}) CBusCommandDeviceManagement {
+	if casted, ok := structType.(CBusCommandDeviceManagement); ok {
+		return casted
+	}
+	if casted, ok := structType.(*CBusCommandDeviceManagement); ok {
+		return *casted
+	}
+	return nil
+}
+
+func (m *_CBusCommandDeviceManagement) GetTypeName() string {
+	return "CBusCommandDeviceManagement"
+}
+
+func (m *_CBusCommandDeviceManagement) GetLengthInBits() uint16 {
+	return m.GetLengthInBitsConditional(false)
+}
+
+func (m *_CBusCommandDeviceManagement) GetLengthInBitsConditional(lastItem bool) uint16 {
+	lengthInBits := uint16(m.GetParentLengthInBits())
+
+	// Simple field (parameterNumber)
+	lengthInBits += 8
+
+	// Const Field (delimiter)
+	lengthInBits += 8
+
+	// Simple field (parameterValue)
+	lengthInBits += 8
+
+	return lengthInBits
+}
+
+func (m *_CBusCommandDeviceManagement) GetLengthInBytes() uint16 {
+	return m.GetLengthInBits() / 8
+}
+
+func CBusCommandDeviceManagementParse(readBuffer utils.ReadBuffer, srchk bool) (CBusCommandDeviceManagement, error) {
+	positionAware := readBuffer
+	_ = positionAware
+	if pullErr := readBuffer.PullContext("CBusCommandDeviceManagement"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for CBusCommandDeviceManagement")
+	}
+	currentPos := positionAware.GetPos()
+	_ = currentPos
+
+	// Simple Field (parameterNumber)
+	_parameterNumber, _parameterNumberErr := readBuffer.ReadUint8("parameterNumber", 8)
+	if _parameterNumberErr != nil {
+		return nil, errors.Wrap(_parameterNumberErr, "Error parsing 'parameterNumber' field")
+	}
+	parameterNumber := _parameterNumber
+
+	// Const Field (delimiter)
+	delimiter, _delimiterErr := readBuffer.ReadByte("delimiter")
+	if _delimiterErr != nil {
+		return nil, errors.Wrap(_delimiterErr, "Error parsing 'delimiter' field")
+	}
+	if delimiter != CBusCommandDeviceManagement_DELIMITER {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusCommandDeviceManagement_DELIMITER) + " but got " + fmt.Sprintf("%d", delimiter))
+	}
+
+	// Simple Field (parameterValue)
+	_parameterValue, _parameterValueErr := readBuffer.ReadByte("parameterValue")
+	if _parameterValueErr != nil {
+		return nil, errors.Wrap(_parameterValueErr, "Error parsing 'parameterValue' field")
+	}
+	parameterValue := _parameterValue
+
+	if closeErr := readBuffer.CloseContext("CBusCommandDeviceManagement"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for CBusCommandDeviceManagement")
+	}
+
+	// Create a partially initialized instance
+	_child := &_CBusCommandDeviceManagement{
+		ParameterNumber: parameterNumber,
+		ParameterValue:  parameterValue,
+		_CBusCommand: &_CBusCommand{
+			Srchk: srchk,
+		},
+	}
+	_child._CBusCommand._CBusCommandChildRequirements = _child
+	return _child, nil
+}
+
+func (m *_CBusCommandDeviceManagement) Serialize(writeBuffer utils.WriteBuffer) error {
+	positionAware := writeBuffer
+	_ = positionAware
+	ser := func() error {
+		if pushErr := writeBuffer.PushContext("CBusCommandDeviceManagement"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for CBusCommandDeviceManagement")
+		}
+
+		// Simple Field (parameterNumber)
+		parameterNumber := uint8(m.GetParameterNumber())
+		_parameterNumberErr := writeBuffer.WriteUint8("parameterNumber", 8, (parameterNumber))
+		if _parameterNumberErr != nil {
+			return errors.Wrap(_parameterNumberErr, "Error serializing 'parameterNumber' field")
+		}
+
+		// Const Field (delimiter)
+		_delimiterErr := writeBuffer.WriteByte("delimiter", 0x0)
+		if _delimiterErr != nil {
+			return errors.Wrap(_delimiterErr, "Error serializing 'delimiter' field")
+		}
+
+		// Simple Field (parameterValue)
+		parameterValue := byte(m.GetParameterValue())
+		_parameterValueErr := writeBuffer.WriteByte("parameterValue", (parameterValue))
+		if _parameterValueErr != nil {
+			return errors.Wrap(_parameterValueErr, "Error serializing 'parameterValue' field")
+		}
+
+		if popErr := writeBuffer.PopContext("CBusCommandDeviceManagement"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for CBusCommandDeviceManagement")
+		}
+		return nil
+	}
+	return m.SerializeParent(writeBuffer, m, ser)
+}
+
+func (m *_CBusCommandDeviceManagement) isCBusCommandDeviceManagement() bool {
+	return true
+}
+
+func (m *_CBusCommandDeviceManagement) String() string {
+	if m == nil {
+		return "<nil>"
+	}
+	writeBuffer := utils.NewBoxedWriteBufferWithOptions(true, true)
+	if err := writeBuffer.WriteSerializable(m); err != nil {
+		return err.Error()
+	}
+	return writeBuffer.GetBox().String()
+}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointNormal.go b/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointNormal.go
index 9a174a52b..ca973ffad 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointNormal.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointNormal.go
@@ -20,7 +20,6 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
@@ -29,9 +28,6 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const CBusCommandPointToPointToMultiPointNormal_CR byte = 0xD
-
 // CBusCommandPointToPointToMultiPointNormal is the corresponding interface of CBusCommandPointToPointToMultiPointNormal
 type CBusCommandPointToPointToMultiPointNormal interface {
 	utils.LengthAware
@@ -76,10 +72,11 @@ type _CBusCommandPointToPointToMultiPointNormal struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CBusCommandPointToPointToMultiPointNormal) InitializeParent(parent CBusPointToPointToMultipointCommand, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte) {
+func (m *_CBusCommandPointToPointToMultiPointNormal) InitializeParent(parent CBusPointToPointToMultipointCommand, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, termination RequestTermination) {
 	m.BridgeAddress = bridgeAddress
 	m.NetworkRoute = networkRoute
 	m.PeekedApplication = peekedApplication
+	m.Termination = termination
 }
 
 func (m *_CBusCommandPointToPointToMultiPointNormal) GetParent() CBusPointToPointToMultipointCommand {
@@ -111,33 +108,20 @@ func (m *_CBusCommandPointToPointToMultiPointNormal) GetAlpha() Alpha {
 	return m.Alpha
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_CBusCommandPointToPointToMultiPointNormal) GetCr() byte {
-	return CBusCommandPointToPointToMultiPointNormal_CR
-}
-
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusCommandPointToPointToMultiPointNormal factory function for _CBusCommandPointToPointToMultiPointNormal
-func NewCBusCommandPointToPointToMultiPointNormal(application ApplicationIdContainer, salData SALData, crc Checksum, peekAlpha byte, alpha Alpha, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, srchk bool) *_CBusCommandPointToPointToMultiPointNormal {
+func NewCBusCommandPointToPointToMultiPointNormal(application ApplicationIdContainer, salData SALData, crc Checksum, peekAlpha byte, alpha Alpha, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, termination RequestTermination, srchk bool) *_CBusCommandPointToPointToMultiPointNormal {
 	_result := &_CBusCommandPointToPointToMultiPointNormal{
 		Application:                          application,
 		SalData:                              salData,
 		Crc:                                  crc,
 		PeekAlpha:                            peekAlpha,
 		Alpha:                                alpha,
-		_CBusPointToPointToMultipointCommand: NewCBusPointToPointToMultipointCommand(bridgeAddress, networkRoute, peekedApplication, srchk),
+		_CBusPointToPointToMultipointCommand: NewCBusPointToPointToMultipointCommand(bridgeAddress, networkRoute, peekedApplication, termination, srchk),
 	}
 	_result._CBusPointToPointToMultipointCommand._CBusPointToPointToMultipointCommandChildRequirements = _result
 	return _result
@@ -181,9 +165,6 @@ func (m *_CBusCommandPointToPointToMultiPointNormal) GetLengthInBitsConditional(
 		lengthInBits += m.Alpha.GetLengthInBits()
 	}
 
-	// Const Field (cr)
-	lengthInBits += 8
-
 	return lengthInBits
 }
 
@@ -279,15 +260,6 @@ func CBusCommandPointToPointToMultiPointNormalParse(readBuffer utils.ReadBuffer,
 		}
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
-	}
-	if cr != CBusCommandPointToPointToMultiPointNormal_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusCommandPointToPointToMultiPointNormal_CR) + " but got " + fmt.Sprintf("%d", cr))
-	}
-
 	if closeErr := readBuffer.CloseContext("CBusCommandPointToPointToMultiPointNormal"); closeErr != nil {
 		return nil, errors.Wrap(closeErr, "Error closing for CBusCommandPointToPointToMultiPointNormal")
 	}
@@ -371,12 +343,6 @@ func (m *_CBusCommandPointToPointToMultiPointNormal) Serialize(writeBuffer utils
 			}
 		}
 
-		// Const Field (cr)
-		_crErr := writeBuffer.WriteByte("cr", 0xD)
-		if _crErr != nil {
-			return errors.Wrap(_crErr, "Error serializing 'cr' field")
-		}
-
 		if popErr := writeBuffer.PopContext("CBusCommandPointToPointToMultiPointNormal"); popErr != nil {
 			return errors.Wrap(popErr, "Error popping for CBusCommandPointToPointToMultiPointNormal")
 		}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointStatus.go b/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointStatus.go
index e548f7fee..e795e1d2e 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointStatus.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusCommandPointToPointToMultiPointStatus.go
@@ -20,7 +20,6 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
@@ -29,9 +28,6 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const CBusCommandPointToPointToMultiPointStatus_CR byte = 0xD
-
 // CBusCommandPointToPointToMultiPointStatus is the corresponding interface of CBusCommandPointToPointToMultiPointStatus
 type CBusCommandPointToPointToMultiPointStatus interface {
 	utils.LengthAware
@@ -73,10 +69,11 @@ type _CBusCommandPointToPointToMultiPointStatus struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CBusCommandPointToPointToMultiPointStatus) InitializeParent(parent CBusPointToPointToMultipointCommand, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte) {
+func (m *_CBusCommandPointToPointToMultiPointStatus) InitializeParent(parent CBusPointToPointToMultipointCommand, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, termination RequestTermination) {
 	m.BridgeAddress = bridgeAddress
 	m.NetworkRoute = networkRoute
 	m.PeekedApplication = peekedApplication
+	m.Termination = termination
 }
 
 func (m *_CBusCommandPointToPointToMultiPointStatus) GetParent() CBusPointToPointToMultipointCommand {
@@ -104,32 +101,19 @@ func (m *_CBusCommandPointToPointToMultiPointStatus) GetAlpha() Alpha {
 	return m.Alpha
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_CBusCommandPointToPointToMultiPointStatus) GetCr() byte {
-	return CBusCommandPointToPointToMultiPointStatus_CR
-}
-
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusCommandPointToPointToMultiPointStatus factory function for _CBusCommandPointToPointToMultiPointStatus
-func NewCBusCommandPointToPointToMultiPointStatus(statusRequest StatusRequest, crc Checksum, peekAlpha byte, alpha Alpha, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, srchk bool) *_CBusCommandPointToPointToMultiPointStatus {
+func NewCBusCommandPointToPointToMultiPointStatus(statusRequest StatusRequest, crc Checksum, peekAlpha byte, alpha Alpha, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, termination RequestTermination, srchk bool) *_CBusCommandPointToPointToMultiPointStatus {
 	_result := &_CBusCommandPointToPointToMultiPointStatus{
 		StatusRequest:                        statusRequest,
 		Crc:                                  crc,
 		PeekAlpha:                            peekAlpha,
 		Alpha:                                alpha,
-		_CBusPointToPointToMultipointCommand: NewCBusPointToPointToMultipointCommand(bridgeAddress, networkRoute, peekedApplication, srchk),
+		_CBusPointToPointToMultipointCommand: NewCBusPointToPointToMultipointCommand(bridgeAddress, networkRoute, peekedApplication, termination, srchk),
 	}
 	_result._CBusPointToPointToMultipointCommand._CBusPointToPointToMultipointCommandChildRequirements = _result
 	return _result
@@ -173,9 +157,6 @@ func (m *_CBusCommandPointToPointToMultiPointStatus) GetLengthInBitsConditional(
 		lengthInBits += m.Alpha.GetLengthInBits()
 	}
 
-	// Const Field (cr)
-	lengthInBits += 8
-
 	return lengthInBits
 }
 
@@ -272,15 +253,6 @@ func CBusCommandPointToPointToMultiPointStatusParse(readBuffer utils.ReadBuffer,
 		}
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
-	}
-	if cr != CBusCommandPointToPointToMultiPointStatus_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusCommandPointToPointToMultiPointStatus_CR) + " but got " + fmt.Sprintf("%d", cr))
-	}
-
 	if closeErr := readBuffer.CloseContext("CBusCommandPointToPointToMultiPointStatus"); closeErr != nil {
 		return nil, errors.Wrap(closeErr, "Error closing for CBusCommandPointToPointToMultiPointStatus")
 	}
@@ -359,12 +331,6 @@ func (m *_CBusCommandPointToPointToMultiPointStatus) Serialize(writeBuffer utils
 			}
 		}
 
-		// Const Field (cr)
-		_crErr := writeBuffer.WriteByte("cr", 0xD)
-		if _crErr != nil {
-			return errors.Wrap(_crErr, "Error serializing 'cr' field")
-		}
-
 		if popErr := writeBuffer.PopContext("CBusCommandPointToPointToMultiPointStatus"); popErr != nil {
 			return errors.Wrap(popErr, "Error popping for CBusCommandPointToPointToMultiPointStatus")
 		}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusHeader.go b/plc4go/protocols/cbus/readwrite/model/CBusHeader.go
index 80b131597..c1ccfba62 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusHeader.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusHeader.go
@@ -32,10 +32,10 @@ type CBusHeader interface {
 	utils.Serializable
 	// GetPriorityClass returns PriorityClass (property field)
 	GetPriorityClass() PriorityClass
-	// GetDpReservedManagement returns DpReservedManagement (property field)
-	GetDpReservedManagement() bool
-	// GetRcReservedManagement returns RcReservedManagement (property field)
-	GetRcReservedManagement() uint8
+	// GetDp returns Dp (property field)
+	GetDp() bool
+	// GetRc returns Rc (property field)
+	GetRc() uint8
 	// GetDestinationAddressType returns DestinationAddressType (property field)
 	GetDestinationAddressType() DestinationAddressType
 }
@@ -50,8 +50,8 @@ type CBusHeaderExactly interface {
 // _CBusHeader is the data-structure of this message
 type _CBusHeader struct {
 	PriorityClass          PriorityClass
-	DpReservedManagement   bool
-	RcReservedManagement   uint8
+	Dp                     bool
+	Rc                     uint8
 	DestinationAddressType DestinationAddressType
 }
 
@@ -64,12 +64,12 @@ func (m *_CBusHeader) GetPriorityClass() PriorityClass {
 	return m.PriorityClass
 }
 
-func (m *_CBusHeader) GetDpReservedManagement() bool {
-	return m.DpReservedManagement
+func (m *_CBusHeader) GetDp() bool {
+	return m.Dp
 }
 
-func (m *_CBusHeader) GetRcReservedManagement() uint8 {
-	return m.RcReservedManagement
+func (m *_CBusHeader) GetRc() uint8 {
+	return m.Rc
 }
 
 func (m *_CBusHeader) GetDestinationAddressType() DestinationAddressType {
@@ -82,8 +82,8 @@ func (m *_CBusHeader) GetDestinationAddressType() DestinationAddressType {
 ///////////////////////////////////////////////////////////
 
 // NewCBusHeader factory function for _CBusHeader
-func NewCBusHeader(priorityClass PriorityClass, dpReservedManagement bool, rcReservedManagement uint8, destinationAddressType DestinationAddressType) *_CBusHeader {
-	return &_CBusHeader{PriorityClass: priorityClass, DpReservedManagement: dpReservedManagement, RcReservedManagement: rcReservedManagement, DestinationAddressType: destinationAddressType}
+func NewCBusHeader(priorityClass PriorityClass, dp bool, rc uint8, destinationAddressType DestinationAddressType) *_CBusHeader {
+	return &_CBusHeader{PriorityClass: priorityClass, Dp: dp, Rc: rc, DestinationAddressType: destinationAddressType}
 }
 
 // Deprecated: use the interface for direct cast
@@ -111,10 +111,10 @@ func (m *_CBusHeader) GetLengthInBitsConditional(lastItem bool) uint16 {
 	// Simple field (priorityClass)
 	lengthInBits += 2
 
-	// Simple field (dpReservedManagement)
+	// Simple field (dp)
 	lengthInBits += 1
 
-	// Simple field (rcReservedManagement)
+	// Simple field (rc)
 	lengthInBits += 2
 
 	// Simple field (destinationAddressType)
@@ -149,19 +149,19 @@ func CBusHeaderParse(readBuffer utils.ReadBuffer) (CBusHeader, error) {
 		return nil, errors.Wrap(closeErr, "Error closing for priorityClass")
 	}
 
-	// Simple Field (dpReservedManagement)
-	_dpReservedManagement, _dpReservedManagementErr := readBuffer.ReadBit("dpReservedManagement")
-	if _dpReservedManagementErr != nil {
-		return nil, errors.Wrap(_dpReservedManagementErr, "Error parsing 'dpReservedManagement' field")
+	// Simple Field (dp)
+	_dp, _dpErr := readBuffer.ReadBit("dp")
+	if _dpErr != nil {
+		return nil, errors.Wrap(_dpErr, "Error parsing 'dp' field")
 	}
-	dpReservedManagement := _dpReservedManagement
+	dp := _dp
 
-	// Simple Field (rcReservedManagement)
-	_rcReservedManagement, _rcReservedManagementErr := readBuffer.ReadUint8("rcReservedManagement", 2)
-	if _rcReservedManagementErr != nil {
-		return nil, errors.Wrap(_rcReservedManagementErr, "Error parsing 'rcReservedManagement' field")
+	// Simple Field (rc)
+	_rc, _rcErr := readBuffer.ReadUint8("rc", 2)
+	if _rcErr != nil {
+		return nil, errors.Wrap(_rcErr, "Error parsing 'rc' field")
 	}
-	rcReservedManagement := _rcReservedManagement
+	rc := _rc
 
 	// Simple Field (destinationAddressType)
 	if pullErr := readBuffer.PullContext("destinationAddressType"); pullErr != nil {
@@ -181,7 +181,7 @@ func CBusHeaderParse(readBuffer utils.ReadBuffer) (CBusHeader, error) {
 	}
 
 	// Create the instance
-	return NewCBusHeader(priorityClass, dpReservedManagement, rcReservedManagement, destinationAddressType), nil
+	return NewCBusHeader(priorityClass, dp, rc, destinationAddressType), nil
 }
 
 func (m *_CBusHeader) Serialize(writeBuffer utils.WriteBuffer) error {
@@ -203,18 +203,18 @@ func (m *_CBusHeader) Serialize(writeBuffer utils.WriteBuffer) error {
 		return errors.Wrap(_priorityClassErr, "Error serializing 'priorityClass' field")
 	}
 
-	// Simple Field (dpReservedManagement)
-	dpReservedManagement := bool(m.GetDpReservedManagement())
-	_dpReservedManagementErr := writeBuffer.WriteBit("dpReservedManagement", (dpReservedManagement))
-	if _dpReservedManagementErr != nil {
-		return errors.Wrap(_dpReservedManagementErr, "Error serializing 'dpReservedManagement' field")
+	// Simple Field (dp)
+	dp := bool(m.GetDp())
+	_dpErr := writeBuffer.WriteBit("dp", (dp))
+	if _dpErr != nil {
+		return errors.Wrap(_dpErr, "Error serializing 'dp' field")
 	}
 
-	// Simple Field (rcReservedManagement)
-	rcReservedManagement := uint8(m.GetRcReservedManagement())
-	_rcReservedManagementErr := writeBuffer.WriteUint8("rcReservedManagement", 2, (rcReservedManagement))
-	if _rcReservedManagementErr != nil {
-		return errors.Wrap(_rcReservedManagementErr, "Error serializing 'rcReservedManagement' field")
+	// Simple Field (rc)
+	rc := uint8(m.GetRc())
+	_rcErr := writeBuffer.WriteUint8("rc", 2, (rc))
+	if _rcErr != nil {
+		return errors.Wrap(_rcErr, "Error serializing 'rc' field")
 	}
 
 	// Simple Field (destinationAddressType)
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusMessageToClient.go b/plc4go/protocols/cbus/readwrite/model/CBusMessageToClient.go
index 9943c38b0..c1a9aee62 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusMessageToClient.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusMessageToClient.go
@@ -31,8 +31,8 @@ type CBusMessageToClient interface {
 	utils.LengthAware
 	utils.Serializable
 	CBusMessage
-	// GetConfirmation returns Confirmation (property field)
-	GetConfirmation() Confirmation
+	// GetReply returns Reply (property field)
+	GetReply() Reply
 }
 
 // CBusMessageToClientExactly can be used when we want exactly this type and not a type which fulfills CBusMessageToClient.
@@ -45,7 +45,7 @@ type CBusMessageToClientExactly interface {
 // _CBusMessageToClient is the data-structure of this message
 type _CBusMessageToClient struct {
 	*_CBusMessage
-	Confirmation Confirmation
+	Reply Reply
 }
 
 ///////////////////////////////////////////////////////////
@@ -73,8 +73,8 @@ func (m *_CBusMessageToClient) GetParent() CBusMessage {
 /////////////////////// Accessors for property fields.
 ///////////////////////
 
-func (m *_CBusMessageToClient) GetConfirmation() Confirmation {
-	return m.Confirmation
+func (m *_CBusMessageToClient) GetReply() Reply {
+	return m.Reply
 }
 
 ///////////////////////
@@ -83,9 +83,9 @@ func (m *_CBusMessageToClient) GetConfirmation() Confirmation {
 ///////////////////////////////////////////////////////////
 
 // NewCBusMessageToClient factory function for _CBusMessageToClient
-func NewCBusMessageToClient(confirmation Confirmation, srchk bool) *_CBusMessageToClient {
+func NewCBusMessageToClient(reply Reply, srchk bool) *_CBusMessageToClient {
 	_result := &_CBusMessageToClient{
-		Confirmation: confirmation,
+		Reply:        reply,
 		_CBusMessage: NewCBusMessage(srchk),
 	}
 	_result._CBusMessage._CBusMessageChildRequirements = _result
@@ -114,8 +114,8 @@ func (m *_CBusMessageToClient) GetLengthInBits() uint16 {
 func (m *_CBusMessageToClient) GetLengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.GetParentLengthInBits())
 
-	// Simple field (confirmation)
-	lengthInBits += m.Confirmation.GetLengthInBits()
+	// Simple field (reply)
+	lengthInBits += m.Reply.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -133,17 +133,17 @@ func CBusMessageToClientParse(readBuffer utils.ReadBuffer, response bool, srchk
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
-	// Simple Field (confirmation)
-	if pullErr := readBuffer.PullContext("confirmation"); pullErr != nil {
-		return nil, errors.Wrap(pullErr, "Error pulling for confirmation")
+	// Simple Field (reply)
+	if pullErr := readBuffer.PullContext("reply"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for reply")
 	}
-	_confirmation, _confirmationErr := ConfirmationParse(readBuffer)
-	if _confirmationErr != nil {
-		return nil, errors.Wrap(_confirmationErr, "Error parsing 'confirmation' field")
+	_reply, _replyErr := ReplyParse(readBuffer)
+	if _replyErr != nil {
+		return nil, errors.Wrap(_replyErr, "Error parsing 'reply' field")
 	}
-	confirmation := _confirmation.(Confirmation)
-	if closeErr := readBuffer.CloseContext("confirmation"); closeErr != nil {
-		return nil, errors.Wrap(closeErr, "Error closing for confirmation")
+	reply := _reply.(Reply)
+	if closeErr := readBuffer.CloseContext("reply"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for reply")
 	}
 
 	if closeErr := readBuffer.CloseContext("CBusMessageToClient"); closeErr != nil {
@@ -152,7 +152,7 @@ func CBusMessageToClientParse(readBuffer utils.ReadBuffer, response bool, srchk
 
 	// Create a partially initialized instance
 	_child := &_CBusMessageToClient{
-		Confirmation: confirmation,
+		Reply: reply,
 		_CBusMessage: &_CBusMessage{
 			Srchk: srchk,
 		},
@@ -169,16 +169,16 @@ func (m *_CBusMessageToClient) Serialize(writeBuffer utils.WriteBuffer) error {
 			return errors.Wrap(pushErr, "Error pushing for CBusMessageToClient")
 		}
 
-		// Simple Field (confirmation)
-		if pushErr := writeBuffer.PushContext("confirmation"); pushErr != nil {
-			return errors.Wrap(pushErr, "Error pushing for confirmation")
+		// Simple Field (reply)
+		if pushErr := writeBuffer.PushContext("reply"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for reply")
 		}
-		_confirmationErr := writeBuffer.WriteSerializable(m.GetConfirmation())
-		if popErr := writeBuffer.PopContext("confirmation"); popErr != nil {
-			return errors.Wrap(popErr, "Error popping for confirmation")
+		_replyErr := writeBuffer.WriteSerializable(m.GetReply())
+		if popErr := writeBuffer.PopContext("reply"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for reply")
 		}
-		if _confirmationErr != nil {
-			return errors.Wrap(_confirmationErr, "Error serializing 'confirmation' field")
+		if _replyErr != nil {
+			return errors.Wrap(_replyErr, "Error serializing 'reply' field")
 		}
 
 		if popErr := writeBuffer.PopContext("CBusMessageToClient"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusMessageToServer.go b/plc4go/protocols/cbus/readwrite/model/CBusMessageToServer.go
index aa2468fe1..5ac03d7dd 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusMessageToServer.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusMessageToServer.go
@@ -31,8 +31,8 @@ type CBusMessageToServer interface {
 	utils.LengthAware
 	utils.Serializable
 	CBusMessage
-	// GetCommand returns Command (property field)
-	GetCommand() CBusCommand
+	// GetRequest returns Request (property field)
+	GetRequest() Request
 }
 
 // CBusMessageToServerExactly can be used when we want exactly this type and not a type which fulfills CBusMessageToServer.
@@ -45,7 +45,7 @@ type CBusMessageToServerExactly interface {
 // _CBusMessageToServer is the data-structure of this message
 type _CBusMessageToServer struct {
 	*_CBusMessage
-	Command CBusCommand
+	Request Request
 }
 
 ///////////////////////////////////////////////////////////
@@ -73,8 +73,8 @@ func (m *_CBusMessageToServer) GetParent() CBusMessage {
 /////////////////////// Accessors for property fields.
 ///////////////////////
 
-func (m *_CBusMessageToServer) GetCommand() CBusCommand {
-	return m.Command
+func (m *_CBusMessageToServer) GetRequest() Request {
+	return m.Request
 }
 
 ///////////////////////
@@ -83,9 +83,9 @@ func (m *_CBusMessageToServer) GetCommand() CBusCommand {
 ///////////////////////////////////////////////////////////
 
 // NewCBusMessageToServer factory function for _CBusMessageToServer
-func NewCBusMessageToServer(command CBusCommand, srchk bool) *_CBusMessageToServer {
+func NewCBusMessageToServer(request Request, srchk bool) *_CBusMessageToServer {
 	_result := &_CBusMessageToServer{
-		Command:      command,
+		Request:      request,
 		_CBusMessage: NewCBusMessage(srchk),
 	}
 	_result._CBusMessage._CBusMessageChildRequirements = _result
@@ -114,8 +114,8 @@ func (m *_CBusMessageToServer) GetLengthInBits() uint16 {
 func (m *_CBusMessageToServer) GetLengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(m.GetParentLengthInBits())
 
-	// Simple field (command)
-	lengthInBits += m.Command.GetLengthInBits()
+	// Simple field (request)
+	lengthInBits += m.Request.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -133,17 +133,17 @@ func CBusMessageToServerParse(readBuffer utils.ReadBuffer, response bool, srchk
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
-	// Simple Field (command)
-	if pullErr := readBuffer.PullContext("command"); pullErr != nil {
-		return nil, errors.Wrap(pullErr, "Error pulling for command")
+	// Simple Field (request)
+	if pullErr := readBuffer.PullContext("request"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for request")
 	}
-	_command, _commandErr := CBusCommandParse(readBuffer, bool(srchk))
-	if _commandErr != nil {
-		return nil, errors.Wrap(_commandErr, "Error parsing 'command' field")
+	_request, _requestErr := RequestParse(readBuffer, bool(srchk))
+	if _requestErr != nil {
+		return nil, errors.Wrap(_requestErr, "Error parsing 'request' field")
 	}
-	command := _command.(CBusCommand)
-	if closeErr := readBuffer.CloseContext("command"); closeErr != nil {
-		return nil, errors.Wrap(closeErr, "Error closing for command")
+	request := _request.(Request)
+	if closeErr := readBuffer.CloseContext("request"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for request")
 	}
 
 	if closeErr := readBuffer.CloseContext("CBusMessageToServer"); closeErr != nil {
@@ -152,7 +152,7 @@ func CBusMessageToServerParse(readBuffer utils.ReadBuffer, response bool, srchk
 
 	// Create a partially initialized instance
 	_child := &_CBusMessageToServer{
-		Command: command,
+		Request: request,
 		_CBusMessage: &_CBusMessage{
 			Srchk: srchk,
 		},
@@ -169,16 +169,16 @@ func (m *_CBusMessageToServer) Serialize(writeBuffer utils.WriteBuffer) error {
 			return errors.Wrap(pushErr, "Error pushing for CBusMessageToServer")
 		}
 
-		// Simple Field (command)
-		if pushErr := writeBuffer.PushContext("command"); pushErr != nil {
-			return errors.Wrap(pushErr, "Error pushing for command")
+		// Simple Field (request)
+		if pushErr := writeBuffer.PushContext("request"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for request")
 		}
-		_commandErr := writeBuffer.WriteSerializable(m.GetCommand())
-		if popErr := writeBuffer.PopContext("command"); popErr != nil {
-			return errors.Wrap(popErr, "Error popping for command")
+		_requestErr := writeBuffer.WriteSerializable(m.GetRequest())
+		if popErr := writeBuffer.PopContext("request"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for request")
 		}
-		if _commandErr != nil {
-			return errors.Wrap(_commandErr, "Error serializing 'command' field")
+		if _requestErr != nil {
+			return errors.Wrap(_requestErr, "Error serializing 'request' field")
 		}
 
 		if popErr := writeBuffer.PopContext("CBusMessageToServer"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
index 60370dbb6..306d5a77f 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
@@ -32,6 +32,8 @@ type CBusPointToMultiPointCommand interface {
 	utils.Serializable
 	// GetPeekedApplication returns PeekedApplication (property field)
 	GetPeekedApplication() byte
+	// GetTermination returns Termination (property field)
+	GetTermination() RequestTermination
 }
 
 // CBusPointToMultiPointCommandExactly can be used when we want exactly this type and not a type which fulfills CBusPointToMultiPointCommand.
@@ -45,6 +47,7 @@ type CBusPointToMultiPointCommandExactly interface {
 type _CBusPointToMultiPointCommand struct {
 	_CBusPointToMultiPointCommandChildRequirements
 	PeekedApplication byte
+	Termination       RequestTermination
 
 	// Arguments.
 	Srchk bool
@@ -63,7 +66,7 @@ type CBusPointToMultiPointCommandParent interface {
 
 type CBusPointToMultiPointCommandChild interface {
 	utils.Serializable
-	InitializeParent(parent CBusPointToMultiPointCommand, peekedApplication byte)
+	InitializeParent(parent CBusPointToMultiPointCommand, peekedApplication byte, termination RequestTermination)
 	GetParent() *CBusPointToMultiPointCommand
 
 	GetTypeName() string
@@ -79,14 +82,18 @@ func (m *_CBusPointToMultiPointCommand) GetPeekedApplication() byte {
 	return m.PeekedApplication
 }
 
+func (m *_CBusPointToMultiPointCommand) GetTermination() RequestTermination {
+	return m.Termination
+}
+
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToMultiPointCommand factory function for _CBusPointToMultiPointCommand
-func NewCBusPointToMultiPointCommand(peekedApplication byte, srchk bool) *_CBusPointToMultiPointCommand {
-	return &_CBusPointToMultiPointCommand{PeekedApplication: peekedApplication, Srchk: srchk}
+func NewCBusPointToMultiPointCommand(peekedApplication byte, termination RequestTermination, srchk bool) *_CBusPointToMultiPointCommand {
+	return &_CBusPointToMultiPointCommand{PeekedApplication: peekedApplication, Termination: termination, Srchk: srchk}
 }
 
 // Deprecated: use the interface for direct cast
@@ -107,6 +114,9 @@ func (m *_CBusPointToMultiPointCommand) GetTypeName() string {
 func (m *_CBusPointToMultiPointCommand) GetParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
+
 	return lengthInBits
 }
 
@@ -135,7 +145,7 @@ func CBusPointToMultiPointCommandParse(readBuffer utils.ReadBuffer, srchk bool)
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	type CBusPointToMultiPointCommandChildSerializeRequirement interface {
 		CBusPointToMultiPointCommand
-		InitializeParent(CBusPointToMultiPointCommand, byte)
+		InitializeParent(CBusPointToMultiPointCommand, byte, RequestTermination)
 		GetParent() CBusPointToMultiPointCommand
 	}
 	var _childTemp interface{}
@@ -155,12 +165,25 @@ func CBusPointToMultiPointCommandParse(readBuffer utils.ReadBuffer, srchk bool)
 	}
 	_child = _childTemp.(CBusPointToMultiPointCommandChildSerializeRequirement)
 
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
+	}
+	_termination, _terminationErr := RequestTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
+	}
+	termination := _termination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
+	}
+
 	if closeErr := readBuffer.CloseContext("CBusPointToMultiPointCommand"); closeErr != nil {
 		return nil, errors.Wrap(closeErr, "Error closing for CBusPointToMultiPointCommand")
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, peekedApplication)
+	_child.InitializeParent(_child, peekedApplication, termination)
 	return _child, nil
 }
 
@@ -179,6 +202,18 @@ func (pm *_CBusPointToMultiPointCommand) SerializeParent(writeBuffer utils.Write
 		return errors.Wrap(_typeSwitchErr, "Error serializing sub-type field")
 	}
 
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
+	}
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
+	}
+
 	if popErr := writeBuffer.PopContext("CBusPointToMultiPointCommand"); popErr != nil {
 		return errors.Wrap(popErr, "Error popping for CBusPointToMultiPointCommand")
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandNormal.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandNormal.go
index 8a1fb6feb..dfa7c89bc 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandNormal.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandNormal.go
@@ -20,7 +20,6 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
@@ -29,9 +28,6 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const CBusPointToMultiPointCommandNormal_CR byte = 0xD
-
 // CBusPointToMultiPointCommandNormal is the corresponding interface of CBusPointToMultiPointCommandNormal
 type CBusPointToMultiPointCommandNormal interface {
 	utils.LengthAware
@@ -76,8 +72,9 @@ type _CBusPointToMultiPointCommandNormal struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CBusPointToMultiPointCommandNormal) InitializeParent(parent CBusPointToMultiPointCommand, peekedApplication byte) {
+func (m *_CBusPointToMultiPointCommandNormal) InitializeParent(parent CBusPointToMultiPointCommand, peekedApplication byte, termination RequestTermination) {
 	m.PeekedApplication = peekedApplication
+	m.Termination = termination
 }
 
 func (m *_CBusPointToMultiPointCommandNormal) GetParent() CBusPointToMultiPointCommand {
@@ -109,33 +106,20 @@ func (m *_CBusPointToMultiPointCommandNormal) GetAlpha() Alpha {
 	return m.Alpha
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_CBusPointToMultiPointCommandNormal) GetCr() byte {
-	return CBusPointToMultiPointCommandNormal_CR
-}
-
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToMultiPointCommandNormal factory function for _CBusPointToMultiPointCommandNormal
-func NewCBusPointToMultiPointCommandNormal(application ApplicationIdContainer, salData SALData, crc Checksum, peekAlpha byte, alpha Alpha, peekedApplication byte, srchk bool) *_CBusPointToMultiPointCommandNormal {
+func NewCBusPointToMultiPointCommandNormal(application ApplicationIdContainer, salData SALData, crc Checksum, peekAlpha byte, alpha Alpha, peekedApplication byte, termination RequestTermination, srchk bool) *_CBusPointToMultiPointCommandNormal {
 	_result := &_CBusPointToMultiPointCommandNormal{
 		Application:                   application,
 		SalData:                       salData,
 		Crc:                           crc,
 		PeekAlpha:                     peekAlpha,
 		Alpha:                         alpha,
-		_CBusPointToMultiPointCommand: NewCBusPointToMultiPointCommand(peekedApplication, srchk),
+		_CBusPointToMultiPointCommand: NewCBusPointToMultiPointCommand(peekedApplication, termination, srchk),
 	}
 	_result._CBusPointToMultiPointCommand._CBusPointToMultiPointCommandChildRequirements = _result
 	return _result
@@ -182,9 +166,6 @@ func (m *_CBusPointToMultiPointCommandNormal) GetLengthInBitsConditional(lastIte
 		lengthInBits += m.Alpha.GetLengthInBits()
 	}
 
-	// Const Field (cr)
-	lengthInBits += 8
-
 	return lengthInBits
 }
 
@@ -294,15 +275,6 @@ func CBusPointToMultiPointCommandNormalParse(readBuffer utils.ReadBuffer, srchk
 		}
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
-	}
-	if cr != CBusPointToMultiPointCommandNormal_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusPointToMultiPointCommandNormal_CR) + " but got " + fmt.Sprintf("%d", cr))
-	}
-
 	if closeErr := readBuffer.CloseContext("CBusPointToMultiPointCommandNormal"); closeErr != nil {
 		return nil, errors.Wrap(closeErr, "Error closing for CBusPointToMultiPointCommandNormal")
 	}
@@ -394,12 +366,6 @@ func (m *_CBusPointToMultiPointCommandNormal) Serialize(writeBuffer utils.WriteB
 			}
 		}
 
-		// Const Field (cr)
-		_crErr := writeBuffer.WriteByte("cr", 0xD)
-		if _crErr != nil {
-			return errors.Wrap(_crErr, "Error serializing 'cr' field")
-		}
-
 		if popErr := writeBuffer.PopContext("CBusPointToMultiPointCommandNormal"); popErr != nil {
 			return errors.Wrap(popErr, "Error popping for CBusPointToMultiPointCommandNormal")
 		}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandStatus.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandStatus.go
index 93b743c60..0507e30c6 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandStatus.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommandStatus.go
@@ -20,7 +20,6 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
@@ -29,9 +28,6 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const CBusPointToMultiPointCommandStatus_CR byte = 0xD
-
 // CBusPointToMultiPointCommandStatus is the corresponding interface of CBusPointToMultiPointCommandStatus
 type CBusPointToMultiPointCommandStatus interface {
 	utils.LengthAware
@@ -73,8 +69,9 @@ type _CBusPointToMultiPointCommandStatus struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CBusPointToMultiPointCommandStatus) InitializeParent(parent CBusPointToMultiPointCommand, peekedApplication byte) {
+func (m *_CBusPointToMultiPointCommandStatus) InitializeParent(parent CBusPointToMultiPointCommand, peekedApplication byte, termination RequestTermination) {
 	m.PeekedApplication = peekedApplication
+	m.Termination = termination
 }
 
 func (m *_CBusPointToMultiPointCommandStatus) GetParent() CBusPointToMultiPointCommand {
@@ -102,32 +99,19 @@ func (m *_CBusPointToMultiPointCommandStatus) GetAlpha() Alpha {
 	return m.Alpha
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_CBusPointToMultiPointCommandStatus) GetCr() byte {
-	return CBusPointToMultiPointCommandStatus_CR
-}
-
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToMultiPointCommandStatus factory function for _CBusPointToMultiPointCommandStatus
-func NewCBusPointToMultiPointCommandStatus(statusRequest StatusRequest, crc Checksum, peekAlpha byte, alpha Alpha, peekedApplication byte, srchk bool) *_CBusPointToMultiPointCommandStatus {
+func NewCBusPointToMultiPointCommandStatus(statusRequest StatusRequest, crc Checksum, peekAlpha byte, alpha Alpha, peekedApplication byte, termination RequestTermination, srchk bool) *_CBusPointToMultiPointCommandStatus {
 	_result := &_CBusPointToMultiPointCommandStatus{
 		StatusRequest:                 statusRequest,
 		Crc:                           crc,
 		PeekAlpha:                     peekAlpha,
 		Alpha:                         alpha,
-		_CBusPointToMultiPointCommand: NewCBusPointToMultiPointCommand(peekedApplication, srchk),
+		_CBusPointToMultiPointCommand: NewCBusPointToMultiPointCommand(peekedApplication, termination, srchk),
 	}
 	_result._CBusPointToMultiPointCommand._CBusPointToMultiPointCommandChildRequirements = _result
 	return _result
@@ -174,9 +158,6 @@ func (m *_CBusPointToMultiPointCommandStatus) GetLengthInBitsConditional(lastIte
 		lengthInBits += m.Alpha.GetLengthInBits()
 	}
 
-	// Const Field (cr)
-	lengthInBits += 8
-
 	return lengthInBits
 }
 
@@ -287,15 +268,6 @@ func CBusPointToMultiPointCommandStatusParse(readBuffer utils.ReadBuffer, srchk
 		}
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
-	}
-	if cr != CBusPointToMultiPointCommandStatus_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusPointToMultiPointCommandStatus_CR) + " but got " + fmt.Sprintf("%d", cr))
-	}
-
 	if closeErr := readBuffer.CloseContext("CBusPointToMultiPointCommandStatus"); closeErr != nil {
 		return nil, errors.Wrap(closeErr, "Error closing for CBusPointToMultiPointCommandStatus")
 	}
@@ -382,12 +354,6 @@ func (m *_CBusPointToMultiPointCommandStatus) Serialize(writeBuffer utils.WriteB
 			}
 		}
 
-		// Const Field (cr)
-		_crErr := writeBuffer.WriteByte("cr", 0xD)
-		if _crErr != nil {
-			return errors.Wrap(_crErr, "Error serializing 'cr' field")
-		}
-
 		if popErr := writeBuffer.PopContext("CBusPointToMultiPointCommandStatus"); popErr != nil {
 			return errors.Wrap(popErr, "Error popping for CBusPointToMultiPointCommandStatus")
 		}
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
index 196f85cf2..e89147300 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
@@ -20,7 +20,6 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
@@ -29,9 +28,6 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const CBusPointToPointCommand_CR byte = 0xD
-
 // CBusPointToPointCommand is the corresponding interface of CBusPointToPointCommand
 type CBusPointToPointCommand interface {
 	utils.LengthAware
@@ -46,6 +42,8 @@ type CBusPointToPointCommand interface {
 	GetPeekAlpha() byte
 	// GetAlpha returns Alpha (property field)
 	GetAlpha() Alpha
+	// GetTermination returns Termination (property field)
+	GetTermination() RequestTermination
 	// GetIsDirect returns IsDirect (virtual field)
 	GetIsDirect() bool
 }
@@ -65,6 +63,7 @@ type _CBusPointToPointCommand struct {
 	Crc                    Checksum
 	PeekAlpha              byte
 	Alpha                  Alpha
+	Termination            RequestTermination
 
 	// Arguments.
 	Srchk bool
@@ -83,7 +82,7 @@ type CBusPointToPointCommandParent interface {
 
 type CBusPointToPointCommandChild interface {
 	utils.Serializable
-	InitializeParent(parent CBusPointToPointCommand, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha)
+	InitializeParent(parent CBusPointToPointCommand, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, termination RequestTermination)
 	GetParent() *CBusPointToPointCommand
 
 	GetTypeName() string
@@ -115,6 +114,10 @@ func (m *_CBusPointToPointCommand) GetAlpha() Alpha {
 	return m.Alpha
 }
 
+func (m *_CBusPointToPointCommand) GetTermination() RequestTermination {
+	return m.Termination
+}
+
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
@@ -132,27 +135,14 @@ func (m *_CBusPointToPointCommand) GetIsDirect() bool {
 	return bool(bool(((m.GetBridgeAddressCountPeek()) & (0x00FF)) == (0x0000)))
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_CBusPointToPointCommand) GetCr() byte {
-	return CBusPointToPointCommand_CR
-}
-
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToPointCommand factory function for _CBusPointToPointCommand
-func NewCBusPointToPointCommand(bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, srchk bool) *_CBusPointToPointCommand {
-	return &_CBusPointToPointCommand{BridgeAddressCountPeek: bridgeAddressCountPeek, CalData: calData, Crc: crc, PeekAlpha: peekAlpha, Alpha: alpha, Srchk: srchk}
+func NewCBusPointToPointCommand(bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, termination RequestTermination, srchk bool) *_CBusPointToPointCommand {
+	return &_CBusPointToPointCommand{BridgeAddressCountPeek: bridgeAddressCountPeek, CalData: calData, Crc: crc, PeekAlpha: peekAlpha, Alpha: alpha, Termination: termination, Srchk: srchk}
 }
 
 // Deprecated: use the interface for direct cast
@@ -188,8 +178,8 @@ func (m *_CBusPointToPointCommand) GetParentLengthInBits() uint16 {
 		lengthInBits += m.Alpha.GetLengthInBits()
 	}
 
-	// Const Field (cr)
-	lengthInBits += 8
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -224,7 +214,7 @@ func CBusPointToPointCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBus
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	type CBusPointToPointCommandChildSerializeRequirement interface {
 		CBusPointToPointCommand
-		InitializeParent(CBusPointToPointCommand, uint16, CALData, Checksum, byte, Alpha)
+		InitializeParent(CBusPointToPointCommand, uint16, CALData, Checksum, byte, Alpha, RequestTermination)
 		GetParent() CBusPointToPointCommand
 	}
 	var _childTemp interface{}
@@ -310,13 +300,17 @@ func CBusPointToPointCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBus
 		}
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
+	}
+	_termination, _terminationErr := RequestTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
 	}
-	if cr != CBusPointToPointCommand_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", CBusPointToPointCommand_CR) + " but got " + fmt.Sprintf("%d", cr))
+	termination := _termination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
 	}
 
 	if closeErr := readBuffer.CloseContext("CBusPointToPointCommand"); closeErr != nil {
@@ -324,7 +318,7 @@ func CBusPointToPointCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBus
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, bridgeAddressCountPeek, calData, crc, peekAlpha, alpha)
+	_child.InitializeParent(_child, bridgeAddressCountPeek, calData, crc, peekAlpha, alpha, termination)
 	return _child, nil
 }
 
@@ -391,10 +385,16 @@ func (pm *_CBusPointToPointCommand) SerializeParent(writeBuffer utils.WriteBuffe
 		}
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0xD)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
+	}
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("CBusPointToPointCommand"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandDirect.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandDirect.go
index 426792143..320f7d781 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandDirect.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandDirect.go
@@ -59,12 +59,13 @@ type _CBusPointToPointCommandDirect struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CBusPointToPointCommandDirect) InitializeParent(parent CBusPointToPointCommand, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha) {
+func (m *_CBusPointToPointCommandDirect) InitializeParent(parent CBusPointToPointCommand, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, termination RequestTermination) {
 	m.BridgeAddressCountPeek = bridgeAddressCountPeek
 	m.CalData = calData
 	m.Crc = crc
 	m.PeekAlpha = peekAlpha
 	m.Alpha = alpha
+	m.Termination = termination
 }
 
 func (m *_CBusPointToPointCommandDirect) GetParent() CBusPointToPointCommand {
@@ -86,10 +87,10 @@ func (m *_CBusPointToPointCommandDirect) GetUnitAddress() UnitAddress {
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToPointCommandDirect factory function for _CBusPointToPointCommandDirect
-func NewCBusPointToPointCommandDirect(unitAddress UnitAddress, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, srchk bool) *_CBusPointToPointCommandDirect {
+func NewCBusPointToPointCommandDirect(unitAddress UnitAddress, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, termination RequestTermination, srchk bool) *_CBusPointToPointCommandDirect {
 	_result := &_CBusPointToPointCommandDirect{
 		UnitAddress:              unitAddress,
-		_CBusPointToPointCommand: NewCBusPointToPointCommand(bridgeAddressCountPeek, calData, crc, peekAlpha, alpha, srchk),
+		_CBusPointToPointCommand: NewCBusPointToPointCommand(bridgeAddressCountPeek, calData, crc, peekAlpha, alpha, termination, srchk),
 	}
 	_result._CBusPointToPointCommand._CBusPointToPointCommandChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandIndirect.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandIndirect.go
index 5b06023a0..41ca11716 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandIndirect.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommandIndirect.go
@@ -64,12 +64,13 @@ type _CBusPointToPointCommandIndirect struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_CBusPointToPointCommandIndirect) InitializeParent(parent CBusPointToPointCommand, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha) {
+func (m *_CBusPointToPointCommandIndirect) InitializeParent(parent CBusPointToPointCommand, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, termination RequestTermination) {
 	m.BridgeAddressCountPeek = bridgeAddressCountPeek
 	m.CalData = calData
 	m.Crc = crc
 	m.PeekAlpha = peekAlpha
 	m.Alpha = alpha
+	m.Termination = termination
 }
 
 func (m *_CBusPointToPointCommandIndirect) GetParent() CBusPointToPointCommand {
@@ -99,12 +100,12 @@ func (m *_CBusPointToPointCommandIndirect) GetUnitAddress() UnitAddress {
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToPointCommandIndirect factory function for _CBusPointToPointCommandIndirect
-func NewCBusPointToPointCommandIndirect(bridgeAddress BridgeAddress, networkRoute NetworkRoute, unitAddress UnitAddress, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, srchk bool) *_CBusPointToPointCommandIndirect {
+func NewCBusPointToPointCommandIndirect(bridgeAddress BridgeAddress, networkRoute NetworkRoute, unitAddress UnitAddress, bridgeAddressCountPeek uint16, calData CALData, crc Checksum, peekAlpha byte, alpha Alpha, termination RequestTermination, srchk bool) *_CBusPointToPointCommandIndirect {
 	_result := &_CBusPointToPointCommandIndirect{
 		BridgeAddress:            bridgeAddress,
 		NetworkRoute:             networkRoute,
 		UnitAddress:              unitAddress,
-		_CBusPointToPointCommand: NewCBusPointToPointCommand(bridgeAddressCountPeek, calData, crc, peekAlpha, alpha, srchk),
+		_CBusPointToPointCommand: NewCBusPointToPointCommand(bridgeAddressCountPeek, calData, crc, peekAlpha, alpha, termination, srchk),
 	}
 	_result._CBusPointToPointCommand._CBusPointToPointCommandChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go
index 5f8a37c85..17f3884a7 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go
@@ -36,6 +36,8 @@ type CBusPointToPointToMultipointCommand interface {
 	GetNetworkRoute() NetworkRoute
 	// GetPeekedApplication returns PeekedApplication (property field)
 	GetPeekedApplication() byte
+	// GetTermination returns Termination (property field)
+	GetTermination() RequestTermination
 }
 
 // CBusPointToPointToMultipointCommandExactly can be used when we want exactly this type and not a type which fulfills CBusPointToPointToMultipointCommand.
@@ -51,6 +53,7 @@ type _CBusPointToPointToMultipointCommand struct {
 	BridgeAddress     BridgeAddress
 	NetworkRoute      NetworkRoute
 	PeekedApplication byte
+	Termination       RequestTermination
 
 	// Arguments.
 	Srchk bool
@@ -69,7 +72,7 @@ type CBusPointToPointToMultipointCommandParent interface {
 
 type CBusPointToPointToMultipointCommandChild interface {
 	utils.Serializable
-	InitializeParent(parent CBusPointToPointToMultipointCommand, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte)
+	InitializeParent(parent CBusPointToPointToMultipointCommand, bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, termination RequestTermination)
 	GetParent() *CBusPointToPointToMultipointCommand
 
 	GetTypeName() string
@@ -93,14 +96,18 @@ func (m *_CBusPointToPointToMultipointCommand) GetPeekedApplication() byte {
 	return m.PeekedApplication
 }
 
+func (m *_CBusPointToPointToMultipointCommand) GetTermination() RequestTermination {
+	return m.Termination
+}
+
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewCBusPointToPointToMultipointCommand factory function for _CBusPointToPointToMultipointCommand
-func NewCBusPointToPointToMultipointCommand(bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, srchk bool) *_CBusPointToPointToMultipointCommand {
-	return &_CBusPointToPointToMultipointCommand{BridgeAddress: bridgeAddress, NetworkRoute: networkRoute, PeekedApplication: peekedApplication, Srchk: srchk}
+func NewCBusPointToPointToMultipointCommand(bridgeAddress BridgeAddress, networkRoute NetworkRoute, peekedApplication byte, termination RequestTermination, srchk bool) *_CBusPointToPointToMultipointCommand {
+	return &_CBusPointToPointToMultipointCommand{BridgeAddress: bridgeAddress, NetworkRoute: networkRoute, PeekedApplication: peekedApplication, Termination: termination, Srchk: srchk}
 }
 
 // Deprecated: use the interface for direct cast
@@ -127,6 +134,9 @@ func (m *_CBusPointToPointToMultipointCommand) GetParentLengthInBits() uint16 {
 	// Simple field (networkRoute)
 	lengthInBits += m.NetworkRoute.GetLengthInBits()
 
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
+
 	return lengthInBits
 }
 
@@ -181,7 +191,7 @@ func CBusPointToPointToMultipointCommandParse(readBuffer utils.ReadBuffer, srchk
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	type CBusPointToPointToMultipointCommandChildSerializeRequirement interface {
 		CBusPointToPointToMultipointCommand
-		InitializeParent(CBusPointToPointToMultipointCommand, BridgeAddress, NetworkRoute, byte)
+		InitializeParent(CBusPointToPointToMultipointCommand, BridgeAddress, NetworkRoute, byte, RequestTermination)
 		GetParent() CBusPointToPointToMultipointCommand
 	}
 	var _childTemp interface{}
@@ -201,12 +211,25 @@ func CBusPointToPointToMultipointCommandParse(readBuffer utils.ReadBuffer, srchk
 	}
 	_child = _childTemp.(CBusPointToPointToMultipointCommandChildSerializeRequirement)
 
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
+	}
+	_termination, _terminationErr := RequestTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
+	}
+	termination := _termination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
+	}
+
 	if closeErr := readBuffer.CloseContext("CBusPointToPointToMultipointCommand"); closeErr != nil {
 		return nil, errors.Wrap(closeErr, "Error closing for CBusPointToPointToMultipointCommand")
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, bridgeAddress, networkRoute, peekedApplication)
+	_child.InitializeParent(_child, bridgeAddress, networkRoute, peekedApplication, termination)
 	return _child, nil
 }
 
@@ -249,6 +272,18 @@ func (pm *_CBusPointToPointToMultipointCommand) SerializeParent(writeBuffer util
 		return errors.Wrap(_typeSwitchErr, "Error serializing sub-type field")
 	}
 
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
+	}
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
+	}
+
 	if popErr := writeBuffer.PopContext("CBusPointToPointToMultipointCommand"); popErr != nil {
 		return errors.Wrap(popErr, "Error popping for CBusPointToPointToMultipointCommand")
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/ConfirmationReply.go b/plc4go/protocols/cbus/readwrite/model/ConfirmationReply.go
index c0c20e26e..258d24dc4 100644
--- a/plc4go/protocols/cbus/readwrite/model/ConfirmationReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/ConfirmationReply.go
@@ -58,8 +58,8 @@ type _ConfirmationReply struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_ConfirmationReply) InitializeParent(parent Reply, magicByte byte) {
-	m.MagicByte = magicByte
+func (m *_ConfirmationReply) InitializeParent(parent Reply, peekedByte byte) {
+	m.PeekedByte = peekedByte
 }
 
 func (m *_ConfirmationReply) GetParent() Reply {
@@ -81,10 +81,10 @@ func (m *_ConfirmationReply) GetIsA() Confirmation {
 ///////////////////////////////////////////////////////////
 
 // NewConfirmationReply factory function for _ConfirmationReply
-func NewConfirmationReply(isA Confirmation, magicByte byte) *_ConfirmationReply {
+func NewConfirmationReply(isA Confirmation, peekedByte byte) *_ConfirmationReply {
 	_result := &_ConfirmationReply{
 		IsA:    isA,
-		_Reply: NewReply(magicByte),
+		_Reply: NewReply(peekedByte),
 	}
 	_result._Reply._ReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/ExclamationMarkReply.go b/plc4go/protocols/cbus/readwrite/model/ExclamationMarkReply.go
index c4af8855e..a12338842 100644
--- a/plc4go/protocols/cbus/readwrite/model/ExclamationMarkReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/ExclamationMarkReply.go
@@ -58,8 +58,8 @@ type _ExclamationMarkReply struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_ExclamationMarkReply) InitializeParent(parent Reply, magicByte byte) {
-	m.MagicByte = magicByte
+func (m *_ExclamationMarkReply) InitializeParent(parent Reply, peekedByte byte) {
+	m.PeekedByte = peekedByte
 }
 
 func (m *_ExclamationMarkReply) GetParent() Reply {
@@ -81,10 +81,10 @@ func (m *_ExclamationMarkReply) GetIsA() ExclamationMark {
 ///////////////////////////////////////////////////////////
 
 // NewExclamationMarkReply factory function for _ExclamationMarkReply
-func NewExclamationMarkReply(isA ExclamationMark, magicByte byte) *_ExclamationMarkReply {
+func NewExclamationMarkReply(isA ExclamationMark, peekedByte byte) *_ExclamationMarkReply {
 	_result := &_ExclamationMarkReply{
 		IsA:    isA,
-		_Reply: NewReply(magicByte),
+		_Reply: NewReply(peekedByte),
 	}
 	_result._Reply._ReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/ExtendedFormatStatusReply.go b/plc4go/protocols/cbus/readwrite/model/ExtendedFormatStatusReply.go
index fd790c3e6..9b84e15dd 100644
--- a/plc4go/protocols/cbus/readwrite/model/ExtendedFormatStatusReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/ExtendedFormatStatusReply.go
@@ -20,17 +20,12 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 )
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const ExtendedFormatStatusReply_CR byte = 0x0D
-const ExtendedFormatStatusReply_LF byte = 0x0A
-
 // ExtendedFormatStatusReply is the corresponding interface of ExtendedFormatStatusReply
 type ExtendedFormatStatusReply interface {
 	utils.LengthAware
@@ -47,6 +42,8 @@ type ExtendedFormatStatusReply interface {
 	GetStatusBytes() []StatusByte
 	// GetCrc returns Crc (property field)
 	GetCrc() Checksum
+	// GetTermination returns Termination (property field)
+	GetTermination() ResponseTermination
 }
 
 // ExtendedFormatStatusReplyExactly can be used when we want exactly this type and not a type which fulfills ExtendedFormatStatusReply.
@@ -64,6 +61,7 @@ type _ExtendedFormatStatusReply struct {
 	BlockStart   uint8
 	StatusBytes  []StatusByte
 	Crc          Checksum
+	Termination  ResponseTermination
 }
 
 ///////////////////////////////////////////////////////////
@@ -95,21 +93,8 @@ func (m *_ExtendedFormatStatusReply) GetCrc() Checksum {
 	return m.Crc
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_ExtendedFormatStatusReply) GetCr() byte {
-	return ExtendedFormatStatusReply_CR
-}
-
-func (m *_ExtendedFormatStatusReply) GetLf() byte {
-	return ExtendedFormatStatusReply_LF
+func (m *_ExtendedFormatStatusReply) GetTermination() ResponseTermination {
+	return m.Termination
 }
 
 ///////////////////////
@@ -118,8 +103,8 @@ func (m *_ExtendedFormatStatusReply) GetLf() byte {
 ///////////////////////////////////////////////////////////
 
 // NewExtendedFormatStatusReply factory function for _ExtendedFormatStatusReply
-func NewExtendedFormatStatusReply(statusHeader ExtendedStatusHeader, coding StatusCoding, application ApplicationIdContainer, blockStart uint8, statusBytes []StatusByte, crc Checksum) *_ExtendedFormatStatusReply {
-	return &_ExtendedFormatStatusReply{StatusHeader: statusHeader, Coding: coding, Application: application, BlockStart: blockStart, StatusBytes: statusBytes, Crc: crc}
+func NewExtendedFormatStatusReply(statusHeader ExtendedStatusHeader, coding StatusCoding, application ApplicationIdContainer, blockStart uint8, statusBytes []StatusByte, crc Checksum, termination ResponseTermination) *_ExtendedFormatStatusReply {
+	return &_ExtendedFormatStatusReply{StatusHeader: statusHeader, Coding: coding, Application: application, BlockStart: blockStart, StatusBytes: statusBytes, Crc: crc, Termination: termination}
 }
 
 // Deprecated: use the interface for direct cast
@@ -167,11 +152,8 @@ func (m *_ExtendedFormatStatusReply) GetLengthInBitsConditional(lastItem bool) u
 	// Simple field (crc)
 	lengthInBits += m.Crc.GetLengthInBits()
 
-	// Const Field (cr)
-	lengthInBits += 8
-
-	// Const Field (lf)
-	lengthInBits += 8
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -271,22 +253,17 @@ func ExtendedFormatStatusReplyParse(readBuffer utils.ReadBuffer) (ExtendedFormat
 		return nil, errors.Wrap(closeErr, "Error closing for crc")
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
 	}
-	if cr != ExtendedFormatStatusReply_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ExtendedFormatStatusReply_CR) + " but got " + fmt.Sprintf("%d", cr))
+	_termination, _terminationErr := ResponseTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
 	}
-
-	// Const Field (lf)
-	lf, _lfErr := readBuffer.ReadByte("lf")
-	if _lfErr != nil {
-		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
-	}
-	if lf != ExtendedFormatStatusReply_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ExtendedFormatStatusReply_LF) + " but got " + fmt.Sprintf("%d", lf))
+	termination := _termination.(ResponseTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
 	}
 
 	if closeErr := readBuffer.CloseContext("ExtendedFormatStatusReply"); closeErr != nil {
@@ -294,7 +271,7 @@ func ExtendedFormatStatusReplyParse(readBuffer utils.ReadBuffer) (ExtendedFormat
 	}
 
 	// Create the instance
-	return NewExtendedFormatStatusReply(statusHeader, coding, application, blockStart, statusBytes, crc), nil
+	return NewExtendedFormatStatusReply(statusHeader, coding, application, blockStart, statusBytes, crc, termination), nil
 }
 
 func (m *_ExtendedFormatStatusReply) Serialize(writeBuffer utils.WriteBuffer) error {
@@ -373,16 +350,16 @@ func (m *_ExtendedFormatStatusReply) Serialize(writeBuffer utils.WriteBuffer) er
 		return errors.Wrap(_crcErr, "Error serializing 'crc' field")
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0x0D)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
 	}
-
-	// Const Field (lf)
-	_lfErr := writeBuffer.WriteByte("lf", 0x0A)
-	if _lfErr != nil {
-		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("ExtendedFormatStatusReply"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go b/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
index 7631d11b2..26ea23668 100644
--- a/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
+++ b/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
@@ -20,7 +20,6 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 	"github.com/rs/zerolog/log"
@@ -29,10 +28,6 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const MonitoredSAL_CR byte = 0x0D
-const MonitoredSAL_LF byte = 0x0A
-
 // MonitoredSAL is the corresponding interface of MonitoredSAL
 type MonitoredSAL interface {
 	utils.LengthAware
@@ -41,6 +36,8 @@ type MonitoredSAL interface {
 	GetSalType() byte
 	// GetSalData returns SalData (property field)
 	GetSalData() SALData
+	// GetTermination returns Termination (property field)
+	GetTermination() ResponseTermination
 }
 
 // MonitoredSALExactly can be used when we want exactly this type and not a type which fulfills MonitoredSAL.
@@ -53,8 +50,9 @@ type MonitoredSALExactly interface {
 // _MonitoredSAL is the data-structure of this message
 type _MonitoredSAL struct {
 	_MonitoredSALChildRequirements
-	SalType byte
-	SalData SALData
+	SalType     byte
+	SalData     SALData
+	Termination ResponseTermination
 }
 
 type _MonitoredSALChildRequirements interface {
@@ -70,7 +68,7 @@ type MonitoredSALParent interface {
 
 type MonitoredSALChild interface {
 	utils.Serializable
-	InitializeParent(parent MonitoredSAL, salType byte, salData SALData)
+	InitializeParent(parent MonitoredSAL, salType byte, salData SALData, termination ResponseTermination)
 	GetParent() *MonitoredSAL
 
 	GetTypeName() string
@@ -90,21 +88,8 @@ func (m *_MonitoredSAL) GetSalData() SALData {
 	return m.SalData
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_MonitoredSAL) GetCr() byte {
-	return MonitoredSAL_CR
-}
-
-func (m *_MonitoredSAL) GetLf() byte {
-	return MonitoredSAL_LF
+func (m *_MonitoredSAL) GetTermination() ResponseTermination {
+	return m.Termination
 }
 
 ///////////////////////
@@ -113,8 +98,8 @@ func (m *_MonitoredSAL) GetLf() byte {
 ///////////////////////////////////////////////////////////
 
 // NewMonitoredSAL factory function for _MonitoredSAL
-func NewMonitoredSAL(salType byte, salData SALData) *_MonitoredSAL {
-	return &_MonitoredSAL{SalType: salType, SalData: salData}
+func NewMonitoredSAL(salType byte, salData SALData, termination ResponseTermination) *_MonitoredSAL {
+	return &_MonitoredSAL{SalType: salType, SalData: salData, Termination: termination}
 }
 
 // Deprecated: use the interface for direct cast
@@ -140,11 +125,8 @@ func (m *_MonitoredSAL) GetParentLengthInBits() uint16 {
 		lengthInBits += m.SalData.GetLengthInBits()
 	}
 
-	// Const Field (cr)
-	lengthInBits += 8
-
-	// Const Field (lf)
-	lengthInBits += 8
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -174,7 +156,7 @@ func MonitoredSALParse(readBuffer utils.ReadBuffer) (MonitoredSAL, error) {
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	type MonitoredSALChildSerializeRequirement interface {
 		MonitoredSAL
-		InitializeParent(MonitoredSAL, byte, SALData)
+		InitializeParent(MonitoredSAL, byte, SALData, ResponseTermination)
 		GetParent() MonitoredSAL
 	}
 	var _childTemp interface{}
@@ -216,22 +198,17 @@ func MonitoredSALParse(readBuffer utils.ReadBuffer) (MonitoredSAL, error) {
 		}
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
 	}
-	if cr != MonitoredSAL_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", MonitoredSAL_CR) + " but got " + fmt.Sprintf("%d", cr))
+	_termination, _terminationErr := ResponseTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
 	}
-
-	// Const Field (lf)
-	lf, _lfErr := readBuffer.ReadByte("lf")
-	if _lfErr != nil {
-		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
-	}
-	if lf != MonitoredSAL_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", MonitoredSAL_LF) + " but got " + fmt.Sprintf("%d", lf))
+	termination := _termination.(ResponseTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
 	}
 
 	if closeErr := readBuffer.CloseContext("MonitoredSAL"); closeErr != nil {
@@ -239,7 +216,7 @@ func MonitoredSALParse(readBuffer utils.ReadBuffer) (MonitoredSAL, error) {
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, salType, salData)
+	_child.InitializeParent(_child, salType, salData, termination)
 	return _child, nil
 }
 
@@ -274,16 +251,16 @@ func (pm *_MonitoredSAL) SerializeParent(writeBuffer utils.WriteBuffer, child Mo
 		}
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0x0D)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
 	}
-
-	// Const Field (lf)
-	_lfErr := writeBuffer.WriteByte("lf", 0x0A)
-	if _lfErr != nil {
-		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("MonitoredSAL"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/MonitoredSALLongFormSmartMode.go b/plc4go/protocols/cbus/readwrite/model/MonitoredSALLongFormSmartMode.go
index ea6cde77f..67c288125 100644
--- a/plc4go/protocols/cbus/readwrite/model/MonitoredSALLongFormSmartMode.go
+++ b/plc4go/protocols/cbus/readwrite/model/MonitoredSALLongFormSmartMode.go
@@ -77,9 +77,10 @@ type _MonitoredSALLongFormSmartMode struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_MonitoredSALLongFormSmartMode) InitializeParent(parent MonitoredSAL, salType byte, salData SALData) {
+func (m *_MonitoredSALLongFormSmartMode) InitializeParent(parent MonitoredSAL, salType byte, salData SALData, termination ResponseTermination) {
 	m.SalType = salType
 	m.SalData = salData
+	m.Termination = termination
 }
 
 func (m *_MonitoredSALLongFormSmartMode) GetParent() MonitoredSAL {
@@ -142,7 +143,7 @@ func (m *_MonitoredSALLongFormSmartMode) GetIsUnitAddress() bool {
 ///////////////////////////////////////////////////////////
 
 // NewMonitoredSALLongFormSmartMode factory function for _MonitoredSALLongFormSmartMode
-func NewMonitoredSALLongFormSmartMode(terminatingByte uint32, unitAddress UnitAddress, bridgeAddress BridgeAddress, serialInterfaceAddress SerialInterfaceAddress, reservedByte *byte, replyNetwork ReplyNetwork, salType byte, salData SALData) *_MonitoredSALLongFormSmartMode {
+func NewMonitoredSALLongFormSmartMode(terminatingByte uint32, unitAddress UnitAddress, bridgeAddress BridgeAddress, serialInterfaceAddress SerialInterfaceAddress, reservedByte *byte, replyNetwork ReplyNetwork, salType byte, salData SALData, termination ResponseTermination) *_MonitoredSALLongFormSmartMode {
 	_result := &_MonitoredSALLongFormSmartMode{
 		TerminatingByte:        terminatingByte,
 		UnitAddress:            unitAddress,
@@ -150,7 +151,7 @@ func NewMonitoredSALLongFormSmartMode(terminatingByte uint32, unitAddress UnitAd
 		SerialInterfaceAddress: serialInterfaceAddress,
 		ReservedByte:           reservedByte,
 		ReplyNetwork:           replyNetwork,
-		_MonitoredSAL:          NewMonitoredSAL(salType, salData),
+		_MonitoredSAL:          NewMonitoredSAL(salType, salData, termination),
 	}
 	_result._MonitoredSAL._MonitoredSALChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/MonitoredSALReply.go b/plc4go/protocols/cbus/readwrite/model/MonitoredSALReply.go
index fabf10092..380958393 100644
--- a/plc4go/protocols/cbus/readwrite/model/MonitoredSALReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/MonitoredSALReply.go
@@ -58,8 +58,8 @@ type _MonitoredSALReply struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_MonitoredSALReply) InitializeParent(parent Reply, magicByte byte) {
-	m.MagicByte = magicByte
+func (m *_MonitoredSALReply) InitializeParent(parent Reply, peekedByte byte) {
+	m.PeekedByte = peekedByte
 }
 
 func (m *_MonitoredSALReply) GetParent() Reply {
@@ -81,10 +81,10 @@ func (m *_MonitoredSALReply) GetIsA() MonitoredSAL {
 ///////////////////////////////////////////////////////////
 
 // NewMonitoredSALReply factory function for _MonitoredSALReply
-func NewMonitoredSALReply(isA MonitoredSAL, magicByte byte) *_MonitoredSALReply {
+func NewMonitoredSALReply(isA MonitoredSAL, peekedByte byte) *_MonitoredSALReply {
 	_result := &_MonitoredSALReply{
 		IsA:    isA,
-		_Reply: NewReply(magicByte),
+		_Reply: NewReply(peekedByte),
 	}
 	_result._Reply._ReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/MonitoredSALShortFormBasicMode.go b/plc4go/protocols/cbus/readwrite/model/MonitoredSALShortFormBasicMode.go
index b4229a196..5d1e0da5a 100644
--- a/plc4go/protocols/cbus/readwrite/model/MonitoredSALShortFormBasicMode.go
+++ b/plc4go/protocols/cbus/readwrite/model/MonitoredSALShortFormBasicMode.go
@@ -72,9 +72,10 @@ type _MonitoredSALShortFormBasicMode struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_MonitoredSALShortFormBasicMode) InitializeParent(parent MonitoredSAL, salType byte, salData SALData) {
+func (m *_MonitoredSALShortFormBasicMode) InitializeParent(parent MonitoredSAL, salType byte, salData SALData, termination ResponseTermination) {
 	m.SalType = salType
 	m.SalData = salData
+	m.Termination = termination
 }
 
 func (m *_MonitoredSALShortFormBasicMode) GetParent() MonitoredSAL {
@@ -112,14 +113,14 @@ func (m *_MonitoredSALShortFormBasicMode) GetApplication() ApplicationIdContaine
 ///////////////////////////////////////////////////////////
 
 // NewMonitoredSALShortFormBasicMode factory function for _MonitoredSALShortFormBasicMode
-func NewMonitoredSALShortFormBasicMode(counts byte, bridgeCount BridgeCount, networkNumber NetworkNumber, noCounts *byte, application ApplicationIdContainer, salType byte, salData SALData) *_MonitoredSALShortFormBasicMode {
+func NewMonitoredSALShortFormBasicMode(counts byte, bridgeCount BridgeCount, networkNumber NetworkNumber, noCounts *byte, application ApplicationIdContainer, salType byte, salData SALData, termination ResponseTermination) *_MonitoredSALShortFormBasicMode {
 	_result := &_MonitoredSALShortFormBasicMode{
 		Counts:        counts,
 		BridgeCount:   bridgeCount,
 		NetworkNumber: networkNumber,
 		NoCounts:      noCounts,
 		Application:   application,
-		_MonitoredSAL: NewMonitoredSAL(salType, salData),
+		_MonitoredSAL: NewMonitoredSAL(salType, salData, termination),
 	}
 	_result._MonitoredSAL._MonitoredSALChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/ParameterChange.go b/plc4go/protocols/cbus/readwrite/model/ParameterChange.go
index 2c8a4b900..b77e35c28 100644
--- a/plc4go/protocols/cbus/readwrite/model/ParameterChange.go
+++ b/plc4go/protocols/cbus/readwrite/model/ParameterChange.go
@@ -30,13 +30,13 @@ import (
 // Constant values.
 const ParameterChange_SPECIALCHAR1 byte = 0x3D
 const ParameterChange_SPECIALCHAR2 byte = 0x3D
-const ParameterChange_CR byte = 0x0D
-const ParameterChange_LF byte = 0x0A
 
 // ParameterChange is the corresponding interface of ParameterChange
 type ParameterChange interface {
 	utils.LengthAware
 	utils.Serializable
+	// GetTermination returns Termination (property field)
+	GetTermination() ResponseTermination
 }
 
 // ParameterChangeExactly can be used when we want exactly this type and not a type which fulfills ParameterChange.
@@ -48,8 +48,22 @@ type ParameterChangeExactly interface {
 
 // _ParameterChange is the data-structure of this message
 type _ParameterChange struct {
+	Termination ResponseTermination
 }
 
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for property fields.
+///////////////////////
+
+func (m *_ParameterChange) GetTermination() ResponseTermination {
+	return m.Termination
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 /////////////////////// Accessors for const fields.
@@ -63,22 +77,14 @@ func (m *_ParameterChange) GetSpecialChar2() byte {
 	return ParameterChange_SPECIALCHAR2
 }
 
-func (m *_ParameterChange) GetCr() byte {
-	return ParameterChange_CR
-}
-
-func (m *_ParameterChange) GetLf() byte {
-	return ParameterChange_LF
-}
-
 ///////////////////////
 ///////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
 // NewParameterChange factory function for _ParameterChange
-func NewParameterChange() *_ParameterChange {
-	return &_ParameterChange{}
+func NewParameterChange(termination ResponseTermination) *_ParameterChange {
+	return &_ParameterChange{Termination: termination}
 }
 
 // Deprecated: use the interface for direct cast
@@ -109,11 +115,8 @@ func (m *_ParameterChange) GetLengthInBitsConditional(lastItem bool) uint16 {
 	// Const Field (specialChar2)
 	lengthInBits += 8
 
-	// Const Field (cr)
-	lengthInBits += 8
-
-	// Const Field (lf)
-	lengthInBits += 8
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -149,22 +152,17 @@ func ParameterChangeParse(readBuffer utils.ReadBuffer) (ParameterChange, error)
 		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ParameterChange_SPECIALCHAR2) + " but got " + fmt.Sprintf("%d", specialChar2))
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
-	}
-	if cr != ParameterChange_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ParameterChange_CR) + " but got " + fmt.Sprintf("%d", cr))
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
 	}
-
-	// Const Field (lf)
-	lf, _lfErr := readBuffer.ReadByte("lf")
-	if _lfErr != nil {
-		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
+	_termination, _terminationErr := ResponseTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
 	}
-	if lf != ParameterChange_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ParameterChange_LF) + " but got " + fmt.Sprintf("%d", lf))
+	termination := _termination.(ResponseTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
 	}
 
 	if closeErr := readBuffer.CloseContext("ParameterChange"); closeErr != nil {
@@ -172,7 +170,7 @@ func ParameterChangeParse(readBuffer utils.ReadBuffer) (ParameterChange, error)
 	}
 
 	// Create the instance
-	return NewParameterChange(), nil
+	return NewParameterChange(termination), nil
 }
 
 func (m *_ParameterChange) Serialize(writeBuffer utils.WriteBuffer) error {
@@ -194,16 +192,16 @@ func (m *_ParameterChange) Serialize(writeBuffer utils.WriteBuffer) error {
 		return errors.Wrap(_specialChar2Err, "Error serializing 'specialChar2' field")
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0x0D)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
 	}
-
-	// Const Field (lf)
-	_lfErr := writeBuffer.WriteByte("lf", 0x0A)
-	if _lfErr != nil {
-		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("ParameterChange"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/ParameterChangeReply.go b/plc4go/protocols/cbus/readwrite/model/ParameterChangeReply.go
index f77e1570a..90d4ef090 100644
--- a/plc4go/protocols/cbus/readwrite/model/ParameterChangeReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/ParameterChangeReply.go
@@ -58,8 +58,8 @@ type _ParameterChangeReply struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_ParameterChangeReply) InitializeParent(parent Reply, magicByte byte) {
-	m.MagicByte = magicByte
+func (m *_ParameterChangeReply) InitializeParent(parent Reply, peekedByte byte) {
+	m.PeekedByte = peekedByte
 }
 
 func (m *_ParameterChangeReply) GetParent() Reply {
@@ -81,10 +81,10 @@ func (m *_ParameterChangeReply) GetIsA() ParameterChange {
 ///////////////////////////////////////////////////////////
 
 // NewParameterChangeReply factory function for _ParameterChangeReply
-func NewParameterChangeReply(isA ParameterChange, magicByte byte) *_ParameterChangeReply {
+func NewParameterChangeReply(isA ParameterChange, peekedByte byte) *_ParameterChangeReply {
 	_result := &_ParameterChangeReply{
 		IsA:    isA,
-		_Reply: NewReply(magicByte),
+		_Reply: NewReply(peekedByte),
 	}
 	_result._Reply._ReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/PowerUp.go b/plc4go/protocols/cbus/readwrite/model/PowerUp.go
index 2aaa31f64..fc646ee62 100644
--- a/plc4go/protocols/cbus/readwrite/model/PowerUp.go
+++ b/plc4go/protocols/cbus/readwrite/model/PowerUp.go
@@ -28,14 +28,18 @@ import (
 // Code generated by code-generation. DO NOT EDIT.
 
 // Constant values.
-const PowerUp_PLUS byte = 0x02B
-const PowerUp_CR byte = 0x0D
-const PowerUp_LF byte = 0x0A
+const PowerUp_POWERUPINDICATOR byte = 0x2B
 
 // PowerUp is the corresponding interface of PowerUp
 type PowerUp interface {
 	utils.LengthAware
 	utils.Serializable
+	// GetGarbage returns Garbage (property field)
+	GetGarbage() []byte
+	// GetReqTermination returns ReqTermination (property field)
+	GetReqTermination() RequestTermination
+	// GetResTermination returns ResTermination (property field)
+	GetResTermination() ResponseTermination
 }
 
 // PowerUpExactly can be used when we want exactly this type and not a type which fulfills PowerUp.
@@ -47,23 +51,39 @@ type PowerUpExactly interface {
 
 // _PowerUp is the data-structure of this message
 type _PowerUp struct {
+	Garbage        []byte
+	ReqTermination RequestTermination
+	ResTermination ResponseTermination
 }
 
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
+/////////////////////// Accessors for property fields.
 ///////////////////////
 
-func (m *_PowerUp) GetPlus() byte {
-	return PowerUp_PLUS
+func (m *_PowerUp) GetGarbage() []byte {
+	return m.Garbage
 }
 
-func (m *_PowerUp) GetCr() byte {
-	return PowerUp_CR
+func (m *_PowerUp) GetReqTermination() RequestTermination {
+	return m.ReqTermination
 }
 
-func (m *_PowerUp) GetLf() byte {
-	return PowerUp_LF
+func (m *_PowerUp) GetResTermination() ResponseTermination {
+	return m.ResTermination
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_PowerUp) GetPowerUpIndicator() byte {
+	return PowerUp_POWERUPINDICATOR
 }
 
 ///////////////////////
@@ -72,8 +92,8 @@ func (m *_PowerUp) GetLf() byte {
 ///////////////////////////////////////////////////////////
 
 // NewPowerUp factory function for _PowerUp
-func NewPowerUp() *_PowerUp {
-	return &_PowerUp{}
+func NewPowerUp(garbage []byte, reqTermination RequestTermination, resTermination ResponseTermination) *_PowerUp {
+	return &_PowerUp{Garbage: garbage, ReqTermination: reqTermination, ResTermination: resTermination}
 }
 
 // Deprecated: use the interface for direct cast
@@ -98,14 +118,19 @@ func (m *_PowerUp) GetLengthInBits() uint16 {
 func (m *_PowerUp) GetLengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
-	// Const Field (plus)
+	// Const Field (powerUpIndicator)
 	lengthInBits += 8
 
-	// Const Field (cr)
-	lengthInBits += 8
+	// Array field
+	if len(m.Garbage) > 0 {
+		lengthInBits += 8 * uint16(len(m.Garbage))
+	}
 
-	// Const Field (lf)
-	lengthInBits += 8
+	// Simple field (reqTermination)
+	lengthInBits += m.ReqTermination.GetLengthInBits()
+
+	// Simple field (resTermination)
+	lengthInBits += m.ResTermination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -123,31 +148,45 @@ func PowerUpParse(readBuffer utils.ReadBuffer) (PowerUp, error) {
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
-	// Const Field (plus)
-	plus, _plusErr := readBuffer.ReadByte("plus")
-	if _plusErr != nil {
-		return nil, errors.Wrap(_plusErr, "Error parsing 'plus' field")
+	// Const Field (powerUpIndicator)
+	powerUpIndicator, _powerUpIndicatorErr := readBuffer.ReadByte("powerUpIndicator")
+	if _powerUpIndicatorErr != nil {
+		return nil, errors.Wrap(_powerUpIndicatorErr, "Error parsing 'powerUpIndicator' field")
 	}
-	if plus != PowerUp_PLUS {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_PLUS) + " but got " + fmt.Sprintf("%d", plus))
+	if powerUpIndicator != PowerUp_POWERUPINDICATOR {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_POWERUPINDICATOR) + " but got " + fmt.Sprintf("%d", powerUpIndicator))
+	}
+	// Byte Array field (garbage)
+	numberOfBytesgarbage := int(0x0D)
+	garbage, _readArrayErr := readBuffer.ReadByteArray("garbage", numberOfBytesgarbage)
+	if _readArrayErr != nil {
+		return nil, errors.Wrap(_readArrayErr, "Error parsing 'garbage' field")
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	// Simple Field (reqTermination)
+	if pullErr := readBuffer.PullContext("reqTermination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for reqTermination")
+	}
+	_reqTermination, _reqTerminationErr := RequestTerminationParse(readBuffer)
+	if _reqTerminationErr != nil {
+		return nil, errors.Wrap(_reqTerminationErr, "Error parsing 'reqTermination' field")
 	}
-	if cr != PowerUp_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_CR) + " but got " + fmt.Sprintf("%d", cr))
+	reqTermination := _reqTermination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("reqTermination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for reqTermination")
 	}
 
-	// Const Field (lf)
-	lf, _lfErr := readBuffer.ReadByte("lf")
-	if _lfErr != nil {
-		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
+	// Simple Field (resTermination)
+	if pullErr := readBuffer.PullContext("resTermination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for resTermination")
+	}
+	_resTermination, _resTerminationErr := ResponseTerminationParse(readBuffer)
+	if _resTerminationErr != nil {
+		return nil, errors.Wrap(_resTerminationErr, "Error parsing 'resTermination' field")
 	}
-	if lf != PowerUp_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_LF) + " but got " + fmt.Sprintf("%d", lf))
+	resTermination := _resTermination.(ResponseTermination)
+	if closeErr := readBuffer.CloseContext("resTermination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for resTermination")
 	}
 
 	if closeErr := readBuffer.CloseContext("PowerUp"); closeErr != nil {
@@ -155,7 +194,7 @@ func PowerUpParse(readBuffer utils.ReadBuffer) (PowerUp, error) {
 	}
 
 	// Create the instance
-	return NewPowerUp(), nil
+	return NewPowerUp(garbage, reqTermination, resTermination), nil
 }
 
 func (m *_PowerUp) Serialize(writeBuffer utils.WriteBuffer) error {
@@ -165,22 +204,40 @@ func (m *_PowerUp) Serialize(writeBuffer utils.WriteBuffer) error {
 		return errors.Wrap(pushErr, "Error pushing for PowerUp")
 	}
 
-	// Const Field (plus)
-	_plusErr := writeBuffer.WriteByte("plus", 0x02B)
-	if _plusErr != nil {
-		return errors.Wrap(_plusErr, "Error serializing 'plus' field")
+	// Const Field (powerUpIndicator)
+	_powerUpIndicatorErr := writeBuffer.WriteByte("powerUpIndicator", 0x2B)
+	if _powerUpIndicatorErr != nil {
+		return errors.Wrap(_powerUpIndicatorErr, "Error serializing 'powerUpIndicator' field")
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0x0D)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Array Field (garbage)
+	// Byte Array field (garbage)
+	if err := writeBuffer.WriteByteArray("garbage", m.GetGarbage()); err != nil {
+		return errors.Wrap(err, "Error serializing 'garbage' field")
 	}
 
-	// Const Field (lf)
-	_lfErr := writeBuffer.WriteByte("lf", 0x0A)
-	if _lfErr != nil {
-		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
+	// Simple Field (reqTermination)
+	if pushErr := writeBuffer.PushContext("reqTermination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for reqTermination")
+	}
+	_reqTerminationErr := writeBuffer.WriteSerializable(m.GetReqTermination())
+	if popErr := writeBuffer.PopContext("reqTermination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for reqTermination")
+	}
+	if _reqTerminationErr != nil {
+		return errors.Wrap(_reqTerminationErr, "Error serializing 'reqTermination' field")
+	}
+
+	// Simple Field (resTermination)
+	if pushErr := writeBuffer.PushContext("resTermination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for resTermination")
+	}
+	_resTerminationErr := writeBuffer.WriteSerializable(m.GetResTermination())
+	if popErr := writeBuffer.PopContext("resTermination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for resTermination")
+	}
+	if _resTerminationErr != nil {
+		return errors.Wrap(_resTerminationErr, "Error serializing 'resTermination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("PowerUp"); popErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/PowerUpReply.go b/plc4go/protocols/cbus/readwrite/model/PowerUpReply.go
index 86557fde5..402e86b73 100644
--- a/plc4go/protocols/cbus/readwrite/model/PowerUpReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/PowerUpReply.go
@@ -58,8 +58,8 @@ type _PowerUpReply struct {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-func (m *_PowerUpReply) InitializeParent(parent Reply, magicByte byte) {
-	m.MagicByte = magicByte
+func (m *_PowerUpReply) InitializeParent(parent Reply, peekedByte byte) {
+	m.PeekedByte = peekedByte
 }
 
 func (m *_PowerUpReply) GetParent() Reply {
@@ -81,10 +81,10 @@ func (m *_PowerUpReply) GetIsA() PowerUp {
 ///////////////////////////////////////////////////////////
 
 // NewPowerUpReply factory function for _PowerUpReply
-func NewPowerUpReply(isA PowerUp, magicByte byte) *_PowerUpReply {
+func NewPowerUpReply(isA PowerUp, peekedByte byte) *_PowerUpReply {
 	_result := &_PowerUpReply{
 		IsA:    isA,
-		_Reply: NewReply(magicByte),
+		_Reply: NewReply(peekedByte),
 	}
 	_result._Reply._ReplyChildRequirements = _result
 	return _result
diff --git a/plc4go/protocols/cbus/readwrite/model/Reply.go b/plc4go/protocols/cbus/readwrite/model/Reply.go
index b9b2aa27e..b47cba8ea 100644
--- a/plc4go/protocols/cbus/readwrite/model/Reply.go
+++ b/plc4go/protocols/cbus/readwrite/model/Reply.go
@@ -30,8 +30,10 @@ import (
 type Reply interface {
 	utils.LengthAware
 	utils.Serializable
-	// GetMagicByte returns MagicByte (property field)
-	GetMagicByte() byte
+	// GetPeekedByte returns PeekedByte (property field)
+	GetPeekedByte() byte
+	// GetIsAlpha returns IsAlpha (virtual field)
+	GetIsAlpha() bool
 }
 
 // ReplyExactly can be used when we want exactly this type and not a type which fulfills Reply.
@@ -44,7 +46,7 @@ type ReplyExactly interface {
 // _Reply is the data-structure of this message
 type _Reply struct {
 	_ReplyChildRequirements
-	MagicByte byte
+	PeekedByte byte
 }
 
 type _ReplyChildRequirements interface {
@@ -60,7 +62,7 @@ type ReplyParent interface {
 
 type ReplyChild interface {
 	utils.Serializable
-	InitializeParent(parent Reply, magicByte byte)
+	InitializeParent(parent Reply, peekedByte byte)
 	GetParent() *Reply
 
 	GetTypeName() string
@@ -72,8 +74,21 @@ type ReplyChild interface {
 /////////////////////// Accessors for property fields.
 ///////////////////////
 
-func (m *_Reply) GetMagicByte() byte {
-	return m.MagicByte
+func (m *_Reply) GetPeekedByte() byte {
+	return m.PeekedByte
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for virtual fields.
+///////////////////////
+
+func (m *_Reply) GetIsAlpha() bool {
+	return bool(bool(bool(bool((m.GetPeekedByte()) >= (0x67)))) && bool(bool(bool((m.GetPeekedByte()) <= (0x7A)))))
 }
 
 ///////////////////////
@@ -82,8 +97,8 @@ func (m *_Reply) GetMagicByte() byte {
 ///////////////////////////////////////////////////////////
 
 // NewReply factory function for _Reply
-func NewReply(magicByte byte) *_Reply {
-	return &_Reply{MagicByte: magicByte}
+func NewReply(peekedByte byte) *_Reply {
+	return &_Reply{PeekedByte: peekedByte}
 }
 
 // Deprecated: use the interface for direct cast
@@ -104,6 +119,8 @@ func (m *_Reply) GetTypeName() string {
 func (m *_Reply) GetParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 
+	// A virtual field doesn't have any in- or output.
+
 	return lengthInBits
 }
 
@@ -120,15 +137,20 @@ func ReplyParse(readBuffer utils.ReadBuffer) (Reply, error) {
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
-	// Peek Field (magicByte)
+	// Peek Field (peekedByte)
 	currentPos = positionAware.GetPos()
-	magicByte, _err := readBuffer.ReadByte("magicByte")
+	peekedByte, _err := readBuffer.ReadByte("peekedByte")
 	if _err != nil {
-		return nil, errors.Wrap(_err, "Error parsing 'magicByte' field")
+		return nil, errors.Wrap(_err, "Error parsing 'peekedByte' field")
 	}
 
 	readBuffer.Reset(currentPos)
 
+	// Virtual field
+	_isAlpha := bool(bool(bool((peekedByte) >= (0x67)))) && bool(bool(bool((peekedByte) <= (0x7A))))
+	isAlpha := bool(_isAlpha)
+	_ = isAlpha
+
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
 	type ReplyChildSerializeRequirement interface {
 		Reply
@@ -139,17 +161,17 @@ func ReplyParse(readBuffer utils.ReadBuffer) (Reply, error) {
 	var _child ReplyChildSerializeRequirement
 	var typeSwitchError error
 	switch {
-	case magicByte == 0x0: // CALReplyReply
+	case peekedByte == 0x0: // CALReplyReply
 		_childTemp, typeSwitchError = CALReplyReplyParse(readBuffer)
-	case magicByte == 0x0: // MonitoredSALReply
+	case peekedByte == 0x0: // MonitoredSALReply
 		_childTemp, typeSwitchError = MonitoredSALReplyParse(readBuffer)
-	case magicByte == 0x0: // ConfirmationReply
+	case true && isAlpha == bool(true): // ConfirmationReply
 		_childTemp, typeSwitchError = ConfirmationReplyParse(readBuffer)
-	case magicByte == 0x0: // PowerUpReply
+	case peekedByte == 0x2B: // PowerUpReply
 		_childTemp, typeSwitchError = PowerUpReplyParse(readBuffer)
-	case magicByte == 0x0: // ParameterChangeReply
+	case peekedByte == 0x0: // ParameterChangeReply
 		_childTemp, typeSwitchError = ParameterChangeReplyParse(readBuffer)
-	case magicByte == 0x0: // ExclamationMarkReply
+	case peekedByte == 0x21: // ExclamationMarkReply
 		_childTemp, typeSwitchError = ExclamationMarkReplyParse(readBuffer)
 	default:
 		// TODO: return actual type
@@ -165,7 +187,7 @@ func ReplyParse(readBuffer utils.ReadBuffer) (Reply, error) {
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, magicByte)
+	_child.InitializeParent(_child, peekedByte)
 	return _child, nil
 }
 
@@ -178,6 +200,10 @@ func (pm *_Reply) SerializeParent(writeBuffer utils.WriteBuffer, child Reply, se
 	if pushErr := writeBuffer.PushContext("Reply"); pushErr != nil {
 		return errors.Wrap(pushErr, "Error pushing for Reply")
 	}
+	// Virtual field
+	if _isAlphaErr := writeBuffer.WriteVirtual("isAlpha", m.GetIsAlpha()); _isAlphaErr != nil {
+		return errors.Wrap(_isAlphaErr, "Error serializing 'isAlpha' field")
+	}
 
 	// Switch field (Depending on the discriminator values, passes the serialization to a sub-type)
 	if _typeSwitchErr := serializeChildFunction(); _typeSwitchErr != nil {
diff --git a/plc4go/protocols/cbus/readwrite/model/Reply.go b/plc4go/protocols/cbus/readwrite/model/Request.go
similarity index 50%
copy from plc4go/protocols/cbus/readwrite/model/Reply.go
copy to plc4go/protocols/cbus/readwrite/model/Request.go
index b9b2aa27e..8cdc5bcb3 100644
--- a/plc4go/protocols/cbus/readwrite/model/Reply.go
+++ b/plc4go/protocols/cbus/readwrite/model/Request.go
@@ -26,45 +26,48 @@ import (
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Reply is the corresponding interface of Reply
-type Reply interface {
+// Request is the corresponding interface of Request
+type Request interface {
 	utils.LengthAware
 	utils.Serializable
-	// GetMagicByte returns MagicByte (property field)
-	GetMagicByte() byte
+	// GetPeekedByte returns PeekedByte (property field)
+	GetPeekedByte() byte
 }
 
-// ReplyExactly can be used when we want exactly this type and not a type which fulfills Reply.
+// RequestExactly can be used when we want exactly this type and not a type which fulfills Request.
 // This is useful for switch cases.
-type ReplyExactly interface {
-	Reply
-	isReply() bool
+type RequestExactly interface {
+	Request
+	isRequest() bool
 }
 
-// _Reply is the data-structure of this message
-type _Reply struct {
-	_ReplyChildRequirements
-	MagicByte byte
+// _Request is the data-structure of this message
+type _Request struct {
+	_RequestChildRequirements
+	PeekedByte byte
+
+	// Arguments.
+	Srchk bool
 }
 
-type _ReplyChildRequirements interface {
+type _RequestChildRequirements interface {
 	utils.Serializable
 	GetLengthInBits() uint16
 	GetLengthInBitsConditional(lastItem bool) uint16
 }
 
-type ReplyParent interface {
-	SerializeParent(writeBuffer utils.WriteBuffer, child Reply, serializeChildFunction func() error) error
+type RequestParent interface {
+	SerializeParent(writeBuffer utils.WriteBuffer, child Request, serializeChildFunction func() error) error
 	GetTypeName() string
 }
 
-type ReplyChild interface {
+type RequestChild interface {
 	utils.Serializable
-	InitializeParent(parent Reply, magicByte byte)
-	GetParent() *Reply
+	InitializeParent(parent Request, peekedByte byte)
+	GetParent() *Request
 
 	GetTypeName() string
-	Reply
+	Request
 }
 
 ///////////////////////////////////////////////////////////
@@ -72,8 +75,8 @@ type ReplyChild interface {
 /////////////////////// Accessors for property fields.
 ///////////////////////
 
-func (m *_Reply) GetMagicByte() byte {
-	return m.MagicByte
+func (m *_Request) GetPeekedByte() byte {
+	return m.PeekedByte
 }
 
 ///////////////////////
@@ -81,76 +84,72 @@ func (m *_Reply) GetMagicByte() byte {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-// NewReply factory function for _Reply
-func NewReply(magicByte byte) *_Reply {
-	return &_Reply{MagicByte: magicByte}
+// NewRequest factory function for _Request
+func NewRequest(peekedByte byte, srchk bool) *_Request {
+	return &_Request{PeekedByte: peekedByte, Srchk: srchk}
 }
 
 // Deprecated: use the interface for direct cast
-func CastReply(structType interface{}) Reply {
-	if casted, ok := structType.(Reply); ok {
+func CastRequest(structType interface{}) Request {
+	if casted, ok := structType.(Request); ok {
 		return casted
 	}
-	if casted, ok := structType.(*Reply); ok {
+	if casted, ok := structType.(*Request); ok {
 		return *casted
 	}
 	return nil
 }
 
-func (m *_Reply) GetTypeName() string {
-	return "Reply"
+func (m *_Request) GetTypeName() string {
+	return "Request"
 }
 
-func (m *_Reply) GetParentLengthInBits() uint16 {
+func (m *_Request) GetParentLengthInBits() uint16 {
 	lengthInBits := uint16(0)
 
 	return lengthInBits
 }
 
-func (m *_Reply) GetLengthInBytes() uint16 {
+func (m *_Request) GetLengthInBytes() uint16 {
 	return m.GetLengthInBits() / 8
 }
 
-func ReplyParse(readBuffer utils.ReadBuffer) (Reply, error) {
+func RequestParse(readBuffer utils.ReadBuffer, srchk bool) (Request, error) {
 	positionAware := readBuffer
 	_ = positionAware
-	if pullErr := readBuffer.PullContext("Reply"); pullErr != nil {
-		return nil, errors.Wrap(pullErr, "Error pulling for Reply")
+	if pullErr := readBuffer.PullContext("Request"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for Request")
 	}
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
-	// Peek Field (magicByte)
+	// Peek Field (peekedByte)
 	currentPos = positionAware.GetPos()
-	magicByte, _err := readBuffer.ReadByte("magicByte")
+	peekedByte, _err := readBuffer.ReadByte("peekedByte")
 	if _err != nil {
-		return nil, errors.Wrap(_err, "Error parsing 'magicByte' field")
+		return nil, errors.Wrap(_err, "Error parsing 'peekedByte' field")
 	}
 
 	readBuffer.Reset(currentPos)
 
 	// Switch Field (Depending on the discriminator values, passes the instantiation to a sub-type)
-	type ReplyChildSerializeRequirement interface {
-		Reply
-		InitializeParent(Reply, byte)
-		GetParent() Reply
+	type RequestChildSerializeRequirement interface {
+		Request
+		InitializeParent(Request, byte)
+		GetParent() Request
 	}
 	var _childTemp interface{}
-	var _child ReplyChildSerializeRequirement
+	var _child RequestChildSerializeRequirement
 	var typeSwitchError error
 	switch {
-	case magicByte == 0x0: // CALReplyReply
-		_childTemp, typeSwitchError = CALReplyReplyParse(readBuffer)
-	case magicByte == 0x0: // MonitoredSALReply
-		_childTemp, typeSwitchError = MonitoredSALReplyParse(readBuffer)
-	case magicByte == 0x0: // ConfirmationReply
-		_childTemp, typeSwitchError = ConfirmationReplyParse(readBuffer)
-	case magicByte == 0x0: // PowerUpReply
-		_childTemp, typeSwitchError = PowerUpReplyParse(readBuffer)
-	case magicByte == 0x0: // ParameterChangeReply
-		_childTemp, typeSwitchError = ParameterChangeReplyParse(readBuffer)
-	case magicByte == 0x0: // ExclamationMarkReply
-		_childTemp, typeSwitchError = ExclamationMarkReplyParse(readBuffer)
+	case peekedByte == 0x7C: // RequestSmartConnectShortcut
+		_childTemp, typeSwitchError = RequestSmartConnectShortcutParse(readBuffer, srchk)
+	case peekedByte == 0x7E: // RequestReset
+		_childTemp, typeSwitchError = RequestResetParse(readBuffer, srchk)
+	case peekedByte == 0x40: // RequestDirectCommandAccess
+		_childTemp, typeSwitchError = RequestDirectCommandAccessParse(readBuffer, srchk)
+	case peekedByte == 0x5C: // RequestCommand
+		_childTemp, typeSwitchError = RequestCommandParse(readBuffer, srchk)
 	default:
 		// TODO: return actual type
 		typeSwitchError = errors.New("Unmapped type")
@@ -158,25 +157,25 @@ func ReplyParse(readBuffer utils.ReadBuffer) (Reply, error) {
 	if typeSwitchError != nil {
 		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
 	}
-	_child = _childTemp.(ReplyChildSerializeRequirement)
+	_child = _childTemp.(RequestChildSerializeRequirement)
 
-	if closeErr := readBuffer.CloseContext("Reply"); closeErr != nil {
-		return nil, errors.Wrap(closeErr, "Error closing for Reply")
+	if closeErr := readBuffer.CloseContext("Request"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for Request")
 	}
 
 	// Finish initializing
-	_child.InitializeParent(_child, magicByte)
+	_child.InitializeParent(_child, peekedByte)
 	return _child, nil
 }
 
-func (pm *_Reply) SerializeParent(writeBuffer utils.WriteBuffer, child Reply, serializeChildFunction func() error) error {
+func (pm *_Request) SerializeParent(writeBuffer utils.WriteBuffer, child Request, serializeChildFunction func() error) error {
 	// We redirect all calls through client as some methods are only implemented there
 	m := child
 	_ = m
 	positionAware := writeBuffer
 	_ = positionAware
-	if pushErr := writeBuffer.PushContext("Reply"); pushErr != nil {
-		return errors.Wrap(pushErr, "Error pushing for Reply")
+	if pushErr := writeBuffer.PushContext("Request"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for Request")
 	}
 
 	// Switch field (Depending on the discriminator values, passes the serialization to a sub-type)
@@ -184,17 +183,17 @@ func (pm *_Reply) SerializeParent(writeBuffer utils.WriteBuffer, child Reply, se
 		return errors.Wrap(_typeSwitchErr, "Error serializing sub-type field")
 	}
 
-	if popErr := writeBuffer.PopContext("Reply"); popErr != nil {
-		return errors.Wrap(popErr, "Error popping for Reply")
+	if popErr := writeBuffer.PopContext("Request"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for Request")
 	}
 	return nil
 }
 
-func (m *_Reply) isReply() bool {
+func (m *_Request) isRequest() bool {
 	return true
 }
 
-func (m *_Reply) String() string {
+func (m *_Request) String() string {
 	if m == nil {
 		return "<nil>"
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestCommand.go b/plc4go/protocols/cbus/readwrite/model/RequestCommand.go
new file mode 100644
index 000000000..9c7424ee8
--- /dev/null
+++ b/plc4go/protocols/cbus/readwrite/model/RequestCommand.go
@@ -0,0 +1,203 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package model
+
+import (
+	"github.com/apache/plc4x/plc4go/internal/spi/utils"
+	"github.com/pkg/errors"
+)
+
+// Code generated by code-generation. DO NOT EDIT.
+
+// RequestCommand is the corresponding interface of RequestCommand
+type RequestCommand interface {
+	utils.LengthAware
+	utils.Serializable
+	Request
+	// GetCbusCommand returns CbusCommand (property field)
+	GetCbusCommand() CBusCommand
+}
+
+// RequestCommandExactly can be used when we want exactly this type and not a type which fulfills RequestCommand.
+// This is useful for switch cases.
+type RequestCommandExactly interface {
+	RequestCommand
+	isRequestCommand() bool
+}
+
+// _RequestCommand is the data-structure of this message
+type _RequestCommand struct {
+	*_Request
+	CbusCommand CBusCommand
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for discriminator values.
+///////////////////////
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+func (m *_RequestCommand) InitializeParent(parent Request, peekedByte byte) {
+	m.PeekedByte = peekedByte
+}
+
+func (m *_RequestCommand) GetParent() Request {
+	return m._Request
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for property fields.
+///////////////////////
+
+func (m *_RequestCommand) GetCbusCommand() CBusCommand {
+	return m.CbusCommand
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+// NewRequestCommand factory function for _RequestCommand
+func NewRequestCommand(cbusCommand CBusCommand, peekedByte byte, srchk bool) *_RequestCommand {
+	_result := &_RequestCommand{
+		CbusCommand: cbusCommand,
+		_Request:    NewRequest(peekedByte, srchk),
+	}
+	_result._Request._RequestChildRequirements = _result
+	return _result
+}
+
+// Deprecated: use the interface for direct cast
+func CastRequestCommand(structType interface{}) RequestCommand {
+	if casted, ok := structType.(RequestCommand); ok {
+		return casted
+	}
+	if casted, ok := structType.(*RequestCommand); ok {
+		return *casted
+	}
+	return nil
+}
+
+func (m *_RequestCommand) GetTypeName() string {
+	return "RequestCommand"
+}
+
+func (m *_RequestCommand) GetLengthInBits() uint16 {
+	return m.GetLengthInBitsConditional(false)
+}
+
+func (m *_RequestCommand) GetLengthInBitsConditional(lastItem bool) uint16 {
+	lengthInBits := uint16(m.GetParentLengthInBits())
+
+	// Simple field (cbusCommand)
+	lengthInBits += m.CbusCommand.GetLengthInBits()
+
+	return lengthInBits
+}
+
+func (m *_RequestCommand) GetLengthInBytes() uint16 {
+	return m.GetLengthInBits() / 8
+}
+
+func RequestCommandParse(readBuffer utils.ReadBuffer, srchk bool) (RequestCommand, error) {
+	positionAware := readBuffer
+	_ = positionAware
+	if pullErr := readBuffer.PullContext("RequestCommand"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for RequestCommand")
+	}
+	currentPos := positionAware.GetPos()
+	_ = currentPos
+
+	// Simple Field (cbusCommand)
+	if pullErr := readBuffer.PullContext("cbusCommand"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for cbusCommand")
+	}
+	_cbusCommand, _cbusCommandErr := CBusCommandParse(readBuffer, bool(srchk))
+	if _cbusCommandErr != nil {
+		return nil, errors.Wrap(_cbusCommandErr, "Error parsing 'cbusCommand' field")
+	}
+	cbusCommand := _cbusCommand.(CBusCommand)
+	if closeErr := readBuffer.CloseContext("cbusCommand"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for cbusCommand")
+	}
+
+	if closeErr := readBuffer.CloseContext("RequestCommand"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for RequestCommand")
+	}
+
+	// Create a partially initialized instance
+	_child := &_RequestCommand{
+		CbusCommand: cbusCommand,
+		_Request: &_Request{
+			Srchk: srchk,
+		},
+	}
+	_child._Request._RequestChildRequirements = _child
+	return _child, nil
+}
+
+func (m *_RequestCommand) Serialize(writeBuffer utils.WriteBuffer) error {
+	positionAware := writeBuffer
+	_ = positionAware
+	ser := func() error {
+		if pushErr := writeBuffer.PushContext("RequestCommand"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for RequestCommand")
+		}
+
+		// Simple Field (cbusCommand)
+		if pushErr := writeBuffer.PushContext("cbusCommand"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for cbusCommand")
+		}
+		_cbusCommandErr := writeBuffer.WriteSerializable(m.GetCbusCommand())
+		if popErr := writeBuffer.PopContext("cbusCommand"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for cbusCommand")
+		}
+		if _cbusCommandErr != nil {
+			return errors.Wrap(_cbusCommandErr, "Error serializing 'cbusCommand' field")
+		}
+
+		if popErr := writeBuffer.PopContext("RequestCommand"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for RequestCommand")
+		}
+		return nil
+	}
+	return m.SerializeParent(writeBuffer, m, ser)
+}
+
+func (m *_RequestCommand) isRequestCommand() bool {
+	return true
+}
+
+func (m *_RequestCommand) String() string {
+	if m == nil {
+		return "<nil>"
+	}
+	writeBuffer := utils.NewBoxedWriteBufferWithOptions(true, true)
+	if err := writeBuffer.WriteSerializable(m); err != nil {
+		return err.Error()
+	}
+	return writeBuffer.GetBox().String()
+}
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestDirectCommandAccess.go b/plc4go/protocols/cbus/readwrite/model/RequestDirectCommandAccess.go
new file mode 100644
index 000000000..fa20b27d2
--- /dev/null
+++ b/plc4go/protocols/cbus/readwrite/model/RequestDirectCommandAccess.go
@@ -0,0 +1,238 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package model
+
+import (
+	"fmt"
+	"github.com/apache/plc4x/plc4go/internal/spi/utils"
+	"github.com/pkg/errors"
+)
+
+// Code generated by code-generation. DO NOT EDIT.
+
+// Constant values.
+const RequestDirectCommandAccess_AT byte = 0x40
+
+// RequestDirectCommandAccess is the corresponding interface of RequestDirectCommandAccess
+type RequestDirectCommandAccess interface {
+	utils.LengthAware
+	utils.Serializable
+	Request
+	// GetTermination returns Termination (property field)
+	GetTermination() RequestTermination
+}
+
+// RequestDirectCommandAccessExactly can be used when we want exactly this type and not a type which fulfills RequestDirectCommandAccess.
+// This is useful for switch cases.
+type RequestDirectCommandAccessExactly interface {
+	RequestDirectCommandAccess
+	isRequestDirectCommandAccess() bool
+}
+
+// _RequestDirectCommandAccess is the data-structure of this message
+type _RequestDirectCommandAccess struct {
+	*_Request
+	Termination RequestTermination
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for discriminator values.
+///////////////////////
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+func (m *_RequestDirectCommandAccess) InitializeParent(parent Request, peekedByte byte) {
+	m.PeekedByte = peekedByte
+}
+
+func (m *_RequestDirectCommandAccess) GetParent() Request {
+	return m._Request
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for property fields.
+///////////////////////
+
+func (m *_RequestDirectCommandAccess) GetTermination() RequestTermination {
+	return m.Termination
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_RequestDirectCommandAccess) GetAt() byte {
+	return RequestDirectCommandAccess_AT
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+// NewRequestDirectCommandAccess factory function for _RequestDirectCommandAccess
+func NewRequestDirectCommandAccess(termination RequestTermination, peekedByte byte, srchk bool) *_RequestDirectCommandAccess {
+	_result := &_RequestDirectCommandAccess{
+		Termination: termination,
+		_Request:    NewRequest(peekedByte, srchk),
+	}
+	_result._Request._RequestChildRequirements = _result
+	return _result
+}
+
+// Deprecated: use the interface for direct cast
+func CastRequestDirectCommandAccess(structType interface{}) RequestDirectCommandAccess {
+	if casted, ok := structType.(RequestDirectCommandAccess); ok {
+		return casted
+	}
+	if casted, ok := structType.(*RequestDirectCommandAccess); ok {
+		return *casted
+	}
+	return nil
+}
+
+func (m *_RequestDirectCommandAccess) GetTypeName() string {
+	return "RequestDirectCommandAccess"
+}
+
+func (m *_RequestDirectCommandAccess) GetLengthInBits() uint16 {
+	return m.GetLengthInBitsConditional(false)
+}
+
+func (m *_RequestDirectCommandAccess) GetLengthInBitsConditional(lastItem bool) uint16 {
+	lengthInBits := uint16(m.GetParentLengthInBits())
+
+	// Const Field (at)
+	lengthInBits += 8
+
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
+
+	return lengthInBits
+}
+
+func (m *_RequestDirectCommandAccess) GetLengthInBytes() uint16 {
+	return m.GetLengthInBits() / 8
+}
+
+func RequestDirectCommandAccessParse(readBuffer utils.ReadBuffer, srchk bool) (RequestDirectCommandAccess, error) {
+	positionAware := readBuffer
+	_ = positionAware
+	if pullErr := readBuffer.PullContext("RequestDirectCommandAccess"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for RequestDirectCommandAccess")
+	}
+	currentPos := positionAware.GetPos()
+	_ = currentPos
+
+	// Const Field (at)
+	at, _atErr := readBuffer.ReadByte("at")
+	if _atErr != nil {
+		return nil, errors.Wrap(_atErr, "Error parsing 'at' field")
+	}
+	if at != RequestDirectCommandAccess_AT {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", RequestDirectCommandAccess_AT) + " but got " + fmt.Sprintf("%d", at))
+	}
+
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
+	}
+	_termination, _terminationErr := RequestTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
+	}
+	termination := _termination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
+	}
+
+	if closeErr := readBuffer.CloseContext("RequestDirectCommandAccess"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for RequestDirectCommandAccess")
+	}
+
+	// Create a partially initialized instance
+	_child := &_RequestDirectCommandAccess{
+		Termination: termination,
+		_Request: &_Request{
+			Srchk: srchk,
+		},
+	}
+	_child._Request._RequestChildRequirements = _child
+	return _child, nil
+}
+
+func (m *_RequestDirectCommandAccess) Serialize(writeBuffer utils.WriteBuffer) error {
+	positionAware := writeBuffer
+	_ = positionAware
+	ser := func() error {
+		if pushErr := writeBuffer.PushContext("RequestDirectCommandAccess"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for RequestDirectCommandAccess")
+		}
+
+		// Const Field (at)
+		_atErr := writeBuffer.WriteByte("at", 0x40)
+		if _atErr != nil {
+			return errors.Wrap(_atErr, "Error serializing 'at' field")
+		}
+
+		// Simple Field (termination)
+		if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for termination")
+		}
+		_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+		if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for termination")
+		}
+		if _terminationErr != nil {
+			return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
+		}
+
+		if popErr := writeBuffer.PopContext("RequestDirectCommandAccess"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for RequestDirectCommandAccess")
+		}
+		return nil
+	}
+	return m.SerializeParent(writeBuffer, m, ser)
+}
+
+func (m *_RequestDirectCommandAccess) isRequestDirectCommandAccess() bool {
+	return true
+}
+
+func (m *_RequestDirectCommandAccess) String() string {
+	if m == nil {
+		return "<nil>"
+	}
+	writeBuffer := utils.NewBoxedWriteBufferWithOptions(true, true)
+	if err := writeBuffer.WriteSerializable(m); err != nil {
+		return err.Error()
+	}
+	return writeBuffer.GetBox().String()
+}
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestReset.go b/plc4go/protocols/cbus/readwrite/model/RequestReset.go
new file mode 100644
index 000000000..3591ca17d
--- /dev/null
+++ b/plc4go/protocols/cbus/readwrite/model/RequestReset.go
@@ -0,0 +1,238 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package model
+
+import (
+	"fmt"
+	"github.com/apache/plc4x/plc4go/internal/spi/utils"
+	"github.com/pkg/errors"
+)
+
+// Code generated by code-generation. DO NOT EDIT.
+
+// Constant values.
+const RequestReset_TILDE byte = 0x7E
+
+// RequestReset is the corresponding interface of RequestReset
+type RequestReset interface {
+	utils.LengthAware
+	utils.Serializable
+	Request
+	// GetTermination returns Termination (property field)
+	GetTermination() RequestTermination
+}
+
+// RequestResetExactly can be used when we want exactly this type and not a type which fulfills RequestReset.
+// This is useful for switch cases.
+type RequestResetExactly interface {
+	RequestReset
+	isRequestReset() bool
+}
+
+// _RequestReset is the data-structure of this message
+type _RequestReset struct {
+	*_Request
+	Termination RequestTermination
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for discriminator values.
+///////////////////////
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+func (m *_RequestReset) InitializeParent(parent Request, peekedByte byte) {
+	m.PeekedByte = peekedByte
+}
+
+func (m *_RequestReset) GetParent() Request {
+	return m._Request
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for property fields.
+///////////////////////
+
+func (m *_RequestReset) GetTermination() RequestTermination {
+	return m.Termination
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_RequestReset) GetTilde() byte {
+	return RequestReset_TILDE
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+// NewRequestReset factory function for _RequestReset
+func NewRequestReset(termination RequestTermination, peekedByte byte, srchk bool) *_RequestReset {
+	_result := &_RequestReset{
+		Termination: termination,
+		_Request:    NewRequest(peekedByte, srchk),
+	}
+	_result._Request._RequestChildRequirements = _result
+	return _result
+}
+
+// Deprecated: use the interface for direct cast
+func CastRequestReset(structType interface{}) RequestReset {
+	if casted, ok := structType.(RequestReset); ok {
+		return casted
+	}
+	if casted, ok := structType.(*RequestReset); ok {
+		return *casted
+	}
+	return nil
+}
+
+func (m *_RequestReset) GetTypeName() string {
+	return "RequestReset"
+}
+
+func (m *_RequestReset) GetLengthInBits() uint16 {
+	return m.GetLengthInBitsConditional(false)
+}
+
+func (m *_RequestReset) GetLengthInBitsConditional(lastItem bool) uint16 {
+	lengthInBits := uint16(m.GetParentLengthInBits())
+
+	// Const Field (tilde)
+	lengthInBits += 8
+
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
+
+	return lengthInBits
+}
+
+func (m *_RequestReset) GetLengthInBytes() uint16 {
+	return m.GetLengthInBits() / 8
+}
+
+func RequestResetParse(readBuffer utils.ReadBuffer, srchk bool) (RequestReset, error) {
+	positionAware := readBuffer
+	_ = positionAware
+	if pullErr := readBuffer.PullContext("RequestReset"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for RequestReset")
+	}
+	currentPos := positionAware.GetPos()
+	_ = currentPos
+
+	// Const Field (tilde)
+	tilde, _tildeErr := readBuffer.ReadByte("tilde")
+	if _tildeErr != nil {
+		return nil, errors.Wrap(_tildeErr, "Error parsing 'tilde' field")
+	}
+	if tilde != RequestReset_TILDE {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", RequestReset_TILDE) + " but got " + fmt.Sprintf("%d", tilde))
+	}
+
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
+	}
+	_termination, _terminationErr := RequestTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
+	}
+	termination := _termination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
+	}
+
+	if closeErr := readBuffer.CloseContext("RequestReset"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for RequestReset")
+	}
+
+	// Create a partially initialized instance
+	_child := &_RequestReset{
+		Termination: termination,
+		_Request: &_Request{
+			Srchk: srchk,
+		},
+	}
+	_child._Request._RequestChildRequirements = _child
+	return _child, nil
+}
+
+func (m *_RequestReset) Serialize(writeBuffer utils.WriteBuffer) error {
+	positionAware := writeBuffer
+	_ = positionAware
+	ser := func() error {
+		if pushErr := writeBuffer.PushContext("RequestReset"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for RequestReset")
+		}
+
+		// Const Field (tilde)
+		_tildeErr := writeBuffer.WriteByte("tilde", 0x7E)
+		if _tildeErr != nil {
+			return errors.Wrap(_tildeErr, "Error serializing 'tilde' field")
+		}
+
+		// Simple Field (termination)
+		if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for termination")
+		}
+		_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+		if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for termination")
+		}
+		if _terminationErr != nil {
+			return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
+		}
+
+		if popErr := writeBuffer.PopContext("RequestReset"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for RequestReset")
+		}
+		return nil
+	}
+	return m.SerializeParent(writeBuffer, m, ser)
+}
+
+func (m *_RequestReset) isRequestReset() bool {
+	return true
+}
+
+func (m *_RequestReset) String() string {
+	if m == nil {
+		return "<nil>"
+	}
+	writeBuffer := utils.NewBoxedWriteBufferWithOptions(true, true)
+	if err := writeBuffer.WriteSerializable(m); err != nil {
+		return err.Error()
+	}
+	return writeBuffer.GetBox().String()
+}
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestSmartConnectShortcut.go b/plc4go/protocols/cbus/readwrite/model/RequestSmartConnectShortcut.go
new file mode 100644
index 000000000..b62664688
--- /dev/null
+++ b/plc4go/protocols/cbus/readwrite/model/RequestSmartConnectShortcut.go
@@ -0,0 +1,238 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package model
+
+import (
+	"fmt"
+	"github.com/apache/plc4x/plc4go/internal/spi/utils"
+	"github.com/pkg/errors"
+)
+
+// Code generated by code-generation. DO NOT EDIT.
+
+// Constant values.
+const RequestSmartConnectShortcut_PIPE byte = 0x7C
+
+// RequestSmartConnectShortcut is the corresponding interface of RequestSmartConnectShortcut
+type RequestSmartConnectShortcut interface {
+	utils.LengthAware
+	utils.Serializable
+	Request
+	// GetTermination returns Termination (property field)
+	GetTermination() RequestTermination
+}
+
+// RequestSmartConnectShortcutExactly can be used when we want exactly this type and not a type which fulfills RequestSmartConnectShortcut.
+// This is useful for switch cases.
+type RequestSmartConnectShortcutExactly interface {
+	RequestSmartConnectShortcut
+	isRequestSmartConnectShortcut() bool
+}
+
+// _RequestSmartConnectShortcut is the data-structure of this message
+type _RequestSmartConnectShortcut struct {
+	*_Request
+	Termination RequestTermination
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for discriminator values.
+///////////////////////
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+func (m *_RequestSmartConnectShortcut) InitializeParent(parent Request, peekedByte byte) {
+	m.PeekedByte = peekedByte
+}
+
+func (m *_RequestSmartConnectShortcut) GetParent() Request {
+	return m._Request
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for property fields.
+///////////////////////
+
+func (m *_RequestSmartConnectShortcut) GetTermination() RequestTermination {
+	return m.Termination
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_RequestSmartConnectShortcut) GetPipe() byte {
+	return RequestSmartConnectShortcut_PIPE
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+// NewRequestSmartConnectShortcut factory function for _RequestSmartConnectShortcut
+func NewRequestSmartConnectShortcut(termination RequestTermination, peekedByte byte, srchk bool) *_RequestSmartConnectShortcut {
+	_result := &_RequestSmartConnectShortcut{
+		Termination: termination,
+		_Request:    NewRequest(peekedByte, srchk),
+	}
+	_result._Request._RequestChildRequirements = _result
+	return _result
+}
+
+// Deprecated: use the interface for direct cast
+func CastRequestSmartConnectShortcut(structType interface{}) RequestSmartConnectShortcut {
+	if casted, ok := structType.(RequestSmartConnectShortcut); ok {
+		return casted
+	}
+	if casted, ok := structType.(*RequestSmartConnectShortcut); ok {
+		return *casted
+	}
+	return nil
+}
+
+func (m *_RequestSmartConnectShortcut) GetTypeName() string {
+	return "RequestSmartConnectShortcut"
+}
+
+func (m *_RequestSmartConnectShortcut) GetLengthInBits() uint16 {
+	return m.GetLengthInBitsConditional(false)
+}
+
+func (m *_RequestSmartConnectShortcut) GetLengthInBitsConditional(lastItem bool) uint16 {
+	lengthInBits := uint16(m.GetParentLengthInBits())
+
+	// Const Field (pipe)
+	lengthInBits += 8
+
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
+
+	return lengthInBits
+}
+
+func (m *_RequestSmartConnectShortcut) GetLengthInBytes() uint16 {
+	return m.GetLengthInBits() / 8
+}
+
+func RequestSmartConnectShortcutParse(readBuffer utils.ReadBuffer, srchk bool) (RequestSmartConnectShortcut, error) {
+	positionAware := readBuffer
+	_ = positionAware
+	if pullErr := readBuffer.PullContext("RequestSmartConnectShortcut"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for RequestSmartConnectShortcut")
+	}
+	currentPos := positionAware.GetPos()
+	_ = currentPos
+
+	// Const Field (pipe)
+	pipe, _pipeErr := readBuffer.ReadByte("pipe")
+	if _pipeErr != nil {
+		return nil, errors.Wrap(_pipeErr, "Error parsing 'pipe' field")
+	}
+	if pipe != RequestSmartConnectShortcut_PIPE {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", RequestSmartConnectShortcut_PIPE) + " but got " + fmt.Sprintf("%d", pipe))
+	}
+
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
+	}
+	_termination, _terminationErr := RequestTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
+	}
+	termination := _termination.(RequestTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
+	}
+
+	if closeErr := readBuffer.CloseContext("RequestSmartConnectShortcut"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for RequestSmartConnectShortcut")
+	}
+
+	// Create a partially initialized instance
+	_child := &_RequestSmartConnectShortcut{
+		Termination: termination,
+		_Request: &_Request{
+			Srchk: srchk,
+		},
+	}
+	_child._Request._RequestChildRequirements = _child
+	return _child, nil
+}
+
+func (m *_RequestSmartConnectShortcut) Serialize(writeBuffer utils.WriteBuffer) error {
+	positionAware := writeBuffer
+	_ = positionAware
+	ser := func() error {
+		if pushErr := writeBuffer.PushContext("RequestSmartConnectShortcut"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for RequestSmartConnectShortcut")
+		}
+
+		// Const Field (pipe)
+		_pipeErr := writeBuffer.WriteByte("pipe", 0x7C)
+		if _pipeErr != nil {
+			return errors.Wrap(_pipeErr, "Error serializing 'pipe' field")
+		}
+
+		// Simple Field (termination)
+		if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+			return errors.Wrap(pushErr, "Error pushing for termination")
+		}
+		_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+		if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for termination")
+		}
+		if _terminationErr != nil {
+			return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
+		}
+
+		if popErr := writeBuffer.PopContext("RequestSmartConnectShortcut"); popErr != nil {
+			return errors.Wrap(popErr, "Error popping for RequestSmartConnectShortcut")
+		}
+		return nil
+	}
+	return m.SerializeParent(writeBuffer, m, ser)
+}
+
+func (m *_RequestSmartConnectShortcut) isRequestSmartConnectShortcut() bool {
+	return true
+}
+
+func (m *_RequestSmartConnectShortcut) String() string {
+	if m == nil {
+		return "<nil>"
+	}
+	writeBuffer := utils.NewBoxedWriteBufferWithOptions(true, true)
+	if err := writeBuffer.WriteSerializable(m); err != nil {
+		return err.Error()
+	}
+	return writeBuffer.GetBox().String()
+}
diff --git a/plc4go/protocols/cbus/readwrite/model/RequestTermination.go b/plc4go/protocols/cbus/readwrite/model/RequestTermination.go
new file mode 100644
index 000000000..5d476f760
--- /dev/null
+++ b/plc4go/protocols/cbus/readwrite/model/RequestTermination.go
@@ -0,0 +1,159 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package model
+
+import (
+	"fmt"
+	"github.com/apache/plc4x/plc4go/internal/spi/utils"
+	"github.com/pkg/errors"
+)
+
+// Code generated by code-generation. DO NOT EDIT.
+
+// Constant values.
+const RequestTermination_CR byte = 0x0D
+
+// RequestTermination is the corresponding interface of RequestTermination
+type RequestTermination interface {
+	utils.LengthAware
+	utils.Serializable
+}
+
+// RequestTerminationExactly can be used when we want exactly this type and not a type which fulfills RequestTermination.
+// This is useful for switch cases.
+type RequestTerminationExactly interface {
+	RequestTermination
+	isRequestTermination() bool
+}
+
+// _RequestTermination is the data-structure of this message
+type _RequestTermination struct {
+}
+
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+/////////////////////// Accessors for const fields.
+///////////////////////
+
+func (m *_RequestTermination) GetCr() byte {
+	return RequestTermination_CR
+}
+
+///////////////////////
+///////////////////////
+///////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////
+
+// NewRequestTermination factory function for _RequestTermination
+func NewRequestTermination() *_RequestTermination {
+	return &_RequestTermination{}
+}
+
+// Deprecated: use the interface for direct cast
+func CastRequestTermination(structType interface{}) RequestTermination {
+	if casted, ok := structType.(RequestTermination); ok {
+		return casted
+	}
+	if casted, ok := structType.(*RequestTermination); ok {
+		return *casted
+	}
+	return nil
+}
+
+func (m *_RequestTermination) GetTypeName() string {
+	return "RequestTermination"
+}
+
+func (m *_RequestTermination) GetLengthInBits() uint16 {
+	return m.GetLengthInBitsConditional(false)
+}
+
+func (m *_RequestTermination) GetLengthInBitsConditional(lastItem bool) uint16 {
+	lengthInBits := uint16(0)
+
+	// Const Field (cr)
+	lengthInBits += 8
+
+	return lengthInBits
+}
+
+func (m *_RequestTermination) GetLengthInBytes() uint16 {
+	return m.GetLengthInBits() / 8
+}
+
+func RequestTerminationParse(readBuffer utils.ReadBuffer) (RequestTermination, error) {
+	positionAware := readBuffer
+	_ = positionAware
+	if pullErr := readBuffer.PullContext("RequestTermination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for RequestTermination")
+	}
+	currentPos := positionAware.GetPos()
+	_ = currentPos
+
+	// Const Field (cr)
+	cr, _crErr := readBuffer.ReadByte("cr")
+	if _crErr != nil {
+		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	}
+	if cr != RequestTermination_CR {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", RequestTermination_CR) + " but got " + fmt.Sprintf("%d", cr))
+	}
+
+	if closeErr := readBuffer.CloseContext("RequestTermination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for RequestTermination")
+	}
+
+	// Create the instance
+	return NewRequestTermination(), nil
+}
+
+func (m *_RequestTermination) Serialize(writeBuffer utils.WriteBuffer) error {
+	positionAware := writeBuffer
+	_ = positionAware
+	if pushErr := writeBuffer.PushContext("RequestTermination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for RequestTermination")
+	}
+
+	// Const Field (cr)
+	_crErr := writeBuffer.WriteByte("cr", 0x0D)
+	if _crErr != nil {
+		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	}
+
+	if popErr := writeBuffer.PopContext("RequestTermination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for RequestTermination")
+	}
+	return nil
+}
+
+func (m *_RequestTermination) isRequestTermination() bool {
+	return true
+}
+
+func (m *_RequestTermination) String() string {
+	if m == nil {
+		return "<nil>"
+	}
+	writeBuffer := utils.NewBoxedWriteBufferWithOptions(true, true)
+	if err := writeBuffer.WriteSerializable(m); err != nil {
+		return err.Error()
+	}
+	return writeBuffer.GetBox().String()
+}
diff --git a/plc4go/protocols/cbus/readwrite/model/PowerUp.go b/plc4go/protocols/cbus/readwrite/model/ResponseTermination.go
similarity index 54%
copy from plc4go/protocols/cbus/readwrite/model/PowerUp.go
copy to plc4go/protocols/cbus/readwrite/model/ResponseTermination.go
index 2aaa31f64..ec5f1088e 100644
--- a/plc4go/protocols/cbus/readwrite/model/PowerUp.go
+++ b/plc4go/protocols/cbus/readwrite/model/ResponseTermination.go
@@ -28,25 +28,24 @@ import (
 // Code generated by code-generation. DO NOT EDIT.
 
 // Constant values.
-const PowerUp_PLUS byte = 0x02B
-const PowerUp_CR byte = 0x0D
-const PowerUp_LF byte = 0x0A
+const ResponseTermination_CR byte = 0x0D
+const ResponseTermination_LF byte = 0x0A
 
-// PowerUp is the corresponding interface of PowerUp
-type PowerUp interface {
+// ResponseTermination is the corresponding interface of ResponseTermination
+type ResponseTermination interface {
 	utils.LengthAware
 	utils.Serializable
 }
 
-// PowerUpExactly can be used when we want exactly this type and not a type which fulfills PowerUp.
+// ResponseTerminationExactly can be used when we want exactly this type and not a type which fulfills ResponseTermination.
 // This is useful for switch cases.
-type PowerUpExactly interface {
-	PowerUp
-	isPowerUp() bool
+type ResponseTerminationExactly interface {
+	ResponseTermination
+	isResponseTermination() bool
 }
 
-// _PowerUp is the data-structure of this message
-type _PowerUp struct {
+// _ResponseTermination is the data-structure of this message
+type _ResponseTermination struct {
 }
 
 ///////////////////////////////////////////////////////////
@@ -54,16 +53,12 @@ type _PowerUp struct {
 /////////////////////// Accessors for const fields.
 ///////////////////////
 
-func (m *_PowerUp) GetPlus() byte {
-	return PowerUp_PLUS
+func (m *_ResponseTermination) GetCr() byte {
+	return ResponseTermination_CR
 }
 
-func (m *_PowerUp) GetCr() byte {
-	return PowerUp_CR
-}
-
-func (m *_PowerUp) GetLf() byte {
-	return PowerUp_LF
+func (m *_ResponseTermination) GetLf() byte {
+	return ResponseTermination_LF
 }
 
 ///////////////////////
@@ -71,36 +66,33 @@ func (m *_PowerUp) GetLf() byte {
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 
-// NewPowerUp factory function for _PowerUp
-func NewPowerUp() *_PowerUp {
-	return &_PowerUp{}
+// NewResponseTermination factory function for _ResponseTermination
+func NewResponseTermination() *_ResponseTermination {
+	return &_ResponseTermination{}
 }
 
 // Deprecated: use the interface for direct cast
-func CastPowerUp(structType interface{}) PowerUp {
-	if casted, ok := structType.(PowerUp); ok {
+func CastResponseTermination(structType interface{}) ResponseTermination {
+	if casted, ok := structType.(ResponseTermination); ok {
 		return casted
 	}
-	if casted, ok := structType.(*PowerUp); ok {
+	if casted, ok := structType.(*ResponseTermination); ok {
 		return *casted
 	}
 	return nil
 }
 
-func (m *_PowerUp) GetTypeName() string {
-	return "PowerUp"
+func (m *_ResponseTermination) GetTypeName() string {
+	return "ResponseTermination"
 }
 
-func (m *_PowerUp) GetLengthInBits() uint16 {
+func (m *_ResponseTermination) GetLengthInBits() uint16 {
 	return m.GetLengthInBitsConditional(false)
 }
 
-func (m *_PowerUp) GetLengthInBitsConditional(lastItem bool) uint16 {
+func (m *_ResponseTermination) GetLengthInBitsConditional(lastItem bool) uint16 {
 	lengthInBits := uint16(0)
 
-	// Const Field (plus)
-	lengthInBits += 8
-
 	// Const Field (cr)
 	lengthInBits += 8
 
@@ -110,35 +102,26 @@ func (m *_PowerUp) GetLengthInBitsConditional(lastItem bool) uint16 {
 	return lengthInBits
 }
 
-func (m *_PowerUp) GetLengthInBytes() uint16 {
+func (m *_ResponseTermination) GetLengthInBytes() uint16 {
 	return m.GetLengthInBits() / 8
 }
 
-func PowerUpParse(readBuffer utils.ReadBuffer) (PowerUp, error) {
+func ResponseTerminationParse(readBuffer utils.ReadBuffer) (ResponseTermination, error) {
 	positionAware := readBuffer
 	_ = positionAware
-	if pullErr := readBuffer.PullContext("PowerUp"); pullErr != nil {
-		return nil, errors.Wrap(pullErr, "Error pulling for PowerUp")
+	if pullErr := readBuffer.PullContext("ResponseTermination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for ResponseTermination")
 	}
 	currentPos := positionAware.GetPos()
 	_ = currentPos
 
-	// Const Field (plus)
-	plus, _plusErr := readBuffer.ReadByte("plus")
-	if _plusErr != nil {
-		return nil, errors.Wrap(_plusErr, "Error parsing 'plus' field")
-	}
-	if plus != PowerUp_PLUS {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_PLUS) + " but got " + fmt.Sprintf("%d", plus))
-	}
-
 	// Const Field (cr)
 	cr, _crErr := readBuffer.ReadByte("cr")
 	if _crErr != nil {
 		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
 	}
-	if cr != PowerUp_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_CR) + " but got " + fmt.Sprintf("%d", cr))
+	if cr != ResponseTermination_CR {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ResponseTermination_CR) + " but got " + fmt.Sprintf("%d", cr))
 	}
 
 	// Const Field (lf)
@@ -146,29 +129,23 @@ func PowerUpParse(readBuffer utils.ReadBuffer) (PowerUp, error) {
 	if _lfErr != nil {
 		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
 	}
-	if lf != PowerUp_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", PowerUp_LF) + " but got " + fmt.Sprintf("%d", lf))
+	if lf != ResponseTermination_LF {
+		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", ResponseTermination_LF) + " but got " + fmt.Sprintf("%d", lf))
 	}
 
-	if closeErr := readBuffer.CloseContext("PowerUp"); closeErr != nil {
-		return nil, errors.Wrap(closeErr, "Error closing for PowerUp")
+	if closeErr := readBuffer.CloseContext("ResponseTermination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for ResponseTermination")
 	}
 
 	// Create the instance
-	return NewPowerUp(), nil
+	return NewResponseTermination(), nil
 }
 
-func (m *_PowerUp) Serialize(writeBuffer utils.WriteBuffer) error {
+func (m *_ResponseTermination) Serialize(writeBuffer utils.WriteBuffer) error {
 	positionAware := writeBuffer
 	_ = positionAware
-	if pushErr := writeBuffer.PushContext("PowerUp"); pushErr != nil {
-		return errors.Wrap(pushErr, "Error pushing for PowerUp")
-	}
-
-	// Const Field (plus)
-	_plusErr := writeBuffer.WriteByte("plus", 0x02B)
-	if _plusErr != nil {
-		return errors.Wrap(_plusErr, "Error serializing 'plus' field")
+	if pushErr := writeBuffer.PushContext("ResponseTermination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for ResponseTermination")
 	}
 
 	// Const Field (cr)
@@ -183,17 +160,17 @@ func (m *_PowerUp) Serialize(writeBuffer utils.WriteBuffer) error {
 		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
 	}
 
-	if popErr := writeBuffer.PopContext("PowerUp"); popErr != nil {
-		return errors.Wrap(popErr, "Error popping for PowerUp")
+	if popErr := writeBuffer.PopContext("ResponseTermination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for ResponseTermination")
 	}
 	return nil
 }
 
-func (m *_PowerUp) isPowerUp() bool {
+func (m *_ResponseTermination) isResponseTermination() bool {
 	return true
 }
 
-func (m *_PowerUp) String() string {
+func (m *_ResponseTermination) String() string {
 	if m == nil {
 		return "<nil>"
 	}
diff --git a/plc4go/protocols/cbus/readwrite/model/StandardFormatStatusReply.go b/plc4go/protocols/cbus/readwrite/model/StandardFormatStatusReply.go
index 829bf40ae..9b1577157 100644
--- a/plc4go/protocols/cbus/readwrite/model/StandardFormatStatusReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/StandardFormatStatusReply.go
@@ -20,17 +20,12 @@
 package model
 
 import (
-	"fmt"
 	"github.com/apache/plc4x/plc4go/internal/spi/utils"
 	"github.com/pkg/errors"
 )
 
 // Code generated by code-generation. DO NOT EDIT.
 
-// Constant values.
-const StandardFormatStatusReply_CR byte = 0x0D
-const StandardFormatStatusReply_LF byte = 0x0A
-
 // StandardFormatStatusReply is the corresponding interface of StandardFormatStatusReply
 type StandardFormatStatusReply interface {
 	utils.LengthAware
@@ -45,6 +40,8 @@ type StandardFormatStatusReply interface {
 	GetStatusBytes() []StatusByte
 	// GetCrc returns Crc (property field)
 	GetCrc() Checksum
+	// GetTermination returns Termination (property field)
+	GetTermination() ResponseTermination
 }
 
 // StandardFormatStatusReplyExactly can be used when we want exactly this type and not a type which fulfills StandardFormatStatusReply.
@@ -61,6 +58,7 @@ type _StandardFormatStatusReply struct {
 	BlockStart   uint8
 	StatusBytes  []StatusByte
 	Crc          Checksum
+	Termination  ResponseTermination
 }
 
 ///////////////////////////////////////////////////////////
@@ -88,21 +86,8 @@ func (m *_StandardFormatStatusReply) GetCrc() Checksum {
 	return m.Crc
 }
 
-///////////////////////
-///////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////
-/////////////////////// Accessors for const fields.
-///////////////////////
-
-func (m *_StandardFormatStatusReply) GetCr() byte {
-	return StandardFormatStatusReply_CR
-}
-
-func (m *_StandardFormatStatusReply) GetLf() byte {
-	return StandardFormatStatusReply_LF
+func (m *_StandardFormatStatusReply) GetTermination() ResponseTermination {
+	return m.Termination
 }
 
 ///////////////////////
@@ -111,8 +96,8 @@ func (m *_StandardFormatStatusReply) GetLf() byte {
 ///////////////////////////////////////////////////////////
 
 // NewStandardFormatStatusReply factory function for _StandardFormatStatusReply
-func NewStandardFormatStatusReply(statusHeader StatusHeader, application ApplicationIdContainer, blockStart uint8, statusBytes []StatusByte, crc Checksum) *_StandardFormatStatusReply {
-	return &_StandardFormatStatusReply{StatusHeader: statusHeader, Application: application, BlockStart: blockStart, StatusBytes: statusBytes, Crc: crc}
+func NewStandardFormatStatusReply(statusHeader StatusHeader, application ApplicationIdContainer, blockStart uint8, statusBytes []StatusByte, crc Checksum, termination ResponseTermination) *_StandardFormatStatusReply {
+	return &_StandardFormatStatusReply{StatusHeader: statusHeader, Application: application, BlockStart: blockStart, StatusBytes: statusBytes, Crc: crc, Termination: termination}
 }
 
 // Deprecated: use the interface for direct cast
@@ -157,11 +142,8 @@ func (m *_StandardFormatStatusReply) GetLengthInBitsConditional(lastItem bool) u
 	// Simple field (crc)
 	lengthInBits += m.Crc.GetLengthInBits()
 
-	// Const Field (cr)
-	lengthInBits += 8
-
-	// Const Field (lf)
-	lengthInBits += 8
+	// Simple field (termination)
+	lengthInBits += m.Termination.GetLengthInBits()
 
 	return lengthInBits
 }
@@ -248,22 +230,17 @@ func StandardFormatStatusReplyParse(readBuffer utils.ReadBuffer) (StandardFormat
 		return nil, errors.Wrap(closeErr, "Error closing for crc")
 	}
 
-	// Const Field (cr)
-	cr, _crErr := readBuffer.ReadByte("cr")
-	if _crErr != nil {
-		return nil, errors.Wrap(_crErr, "Error parsing 'cr' field")
+	// Simple Field (termination)
+	if pullErr := readBuffer.PullContext("termination"); pullErr != nil {
+		return nil, errors.Wrap(pullErr, "Error pulling for termination")
 	}
-	if cr != StandardFormatStatusReply_CR {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", StandardFormatStatusReply_CR) + " but got " + fmt.Sprintf("%d", cr))
+	_termination, _terminationErr := ResponseTerminationParse(readBuffer)
+	if _terminationErr != nil {
+		return nil, errors.Wrap(_terminationErr, "Error parsing 'termination' field")
 	}
-
-	// Const Field (lf)
-	lf, _lfErr := readBuffer.ReadByte("lf")
-	if _lfErr != nil {
-		return nil, errors.Wrap(_lfErr, "Error parsing 'lf' field")
-	}
-	if lf != StandardFormatStatusReply_LF {
-		return nil, errors.New("Expected constant value " + fmt.Sprintf("%d", StandardFormatStatusReply_LF) + " but got " + fmt.Sprintf("%d", lf))
+	termination := _termination.(ResponseTermination)
+	if closeErr := readBuffer.CloseContext("termination"); closeErr != nil {
+		return nil, errors.Wrap(closeErr, "Error closing for termination")
 	}
 
 	if closeErr := readBuffer.CloseContext("StandardFormatStatusReply"); closeErr != nil {
@@ -271,7 +248,7 @@ func StandardFormatStatusReplyParse(readBuffer utils.ReadBuffer) (StandardFormat
 	}
 
 	// Create the instance
-	return NewStandardFormatStatusReply(statusHeader, application, blockStart, statusBytes, crc), nil
+	return NewStandardFormatStatusReply(statusHeader, application, blockStart, statusBytes, crc, termination), nil
 }
 
 func (m *_StandardFormatStatusReply) Serialize(writeBuffer utils.WriteBuffer) error {
@@ -338,16 +315,16 @@ func (m *_StandardFormatStatusReply) Serialize(writeBuffer utils.WriteBuffer) er
 		return errors.Wrap(_crcErr, "Error serializing 'crc' field")
 	}
 
-	// Const Field (cr)
-	_crErr := writeBuffer.WriteByte("cr", 0x0D)
-	if _crErr != nil {
-		return errors.Wrap(_crErr, "Error serializing 'cr' field")
+	// Simple Field (termination)
+	if pushErr := writeBuffer.PushContext("termination"); pushErr != nil {
+		return errors.Wrap(pushErr, "Error pushing for termination")
 	}
-
-	// Const Field (lf)
-	_lfErr := writeBuffer.WriteByte("lf", 0x0A)
-	if _lfErr != nil {
-		return errors.Wrap(_lfErr, "Error serializing 'lf' field")
+	_terminationErr := writeBuffer.WriteSerializable(m.GetTermination())
+	if popErr := writeBuffer.PopContext("termination"); popErr != nil {
+		return errors.Wrap(popErr, "Error popping for termination")
+	}
+	if _terminationErr != nil {
+		return errors.Wrap(_terminationErr, "Error serializing 'termination' field")
 	}
 
 	if popErr := writeBuffer.PopContext("StandardFormatStatusReply"); popErr != nil {
diff --git a/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec b/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec
index 39e776e76..c841c3814 100644
--- a/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec
+++ b/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec
@@ -18,55 +18,82 @@
  */
 
 [type CBusConstants
-    [const          uint 16     cbusTcpDefaultPort 10001]
+    [const    uint 16     cbusTcpDefaultPort 10001]
+]
+
+// TODO: check if that can be used in combination with srchk
+[type CBusOptions
+    [simple bit connect]
+    [simple bit smart  ]
+    [simple bit idmon  ]
+    [simple bit exstat ]
+    [simple bit monitor]
+    [simple bit monall ]
+    [simple bit pun    ]
+    [simple bit pcn    ]
 ]
 
 [type CBusMessage(bit response, bit srchk)
-    // TODO: we need to peek here too
     [typeSwitch response
        ['false' *ToServer
-            [simple   CBusCommand('srchk')    command]
+            [simple   Request('srchk')      request         ]
        ]
        ['true' *ToClient
-            [simple   Confirmation          confirmation]
+            [simple   Reply                 reply           ]
        ]
     ]
 ]
 
+[type Request(bit srchk)
+    [peek    byte peekedByte                                                ]
+    [typeSwitch peekedByte
+        ['0x7C' *SmartConnectShortcut
+            [const    byte                pipe      0x7C                    ]
+            [simple   RequestTermination  termination                       ]
+        ]
+        ['0x7E' *Reset
+            [const    byte                tilde     0x7E                    ]
+            [simple   RequestTermination  termination                       ]
+        ]
+        ['0x40' *DirectCommandAccess
+            [const    byte                at        0x40                    ]
+            // TODO: read device_management_cal data here
+            [simple   RequestTermination  termination                       ]
+        ]
+        ['0x5C' *Command
+            [simple   CBusCommand('srchk')     cbusCommand                  ]
+        ]
+    ]
+]
+
 [discriminatedType CBusCommand(bit srchk)
-    //[const  byte       initiator 0x5C   ] // 0x5C == "/"
-    [simple CBusHeader header           ]
+    [const   byte       initiator 0x5C   ] // 0x5C == "/"
+    [simple  CBusHeader header           ]
+    [virtual bit        isDeviceManagement 'header.dp']
     // TODO: header.destinationAddressType could be used directly but for this we need source type resolving to work (WIP)
     [virtual DestinationAddressType destinationAddressType 'header.destinationAddressType']
-    [typeSwitch destinationAddressType
-        ['PointToPointToMultiPoint' CBusCommandPointToPointToMultiPoint
+    [typeSwitch destinationAddressType, isDeviceManagement
+        [*, 'true' *DeviceManagement
+            [simple     uint 8  parameterNumber                         ]
+            [const      byte    delimiter       0x0                     ]
+            [simple     byte    parameterValue                          ]
+        ]
+        ['PointToPointToMultiPoint' *PointToPointToMultiPoint
             [simple CBusPointToPointToMultipointCommand('srchk') command]
         ]
-        ['PointToMultiPoint'        CBusCommandPointToMultiPoint
+        ['PointToMultiPoint'        *PointToMultiPoint
             [simple CBusPointToMultiPointCommand('srchk')        command]
         ]
-        ['PointToPoint'             CBusCommandPointToPoint
+        ['PointToPoint'             *PointToPoint
             [simple CBusPointToPointCommand('srchk')             command]
         ]
     ]
 ]
 
-// TODO: check if that can be used in combination with srchk
-[type CBusOptions
-    [simple bit connect]
-    [simple bit smart  ]
-    [simple bit idmon  ]
-    [simple bit exstat ]
-    [simple bit monitor]
-    [simple bit monall ]
-    [simple bit pun    ]
-    [simple bit pcn    ]
-]
-
 [type CBusHeader
     [simple   PriorityClass          priorityClass         ]
-    [simple   bit                    dpReservedManagement  ] // Reserved for internal C-Bus management purposes (Referred to as special packet attribute)
-    [simple   uint 2                 rcReservedManagement  ] // Reserved for internal C-Bus management purposes (Referred to as special packet attribute)
+    [simple   bit                    dp                    ] // Reserved for internal C-Bus management purposes (Referred to as special packet attribute)
+    [simple   uint 2                 rc                    ] // Reserved for internal C-Bus management purposes (Referred to as special packet attribute)
     [simple   DestinationAddressType destinationAddressType]
 ]
 
@@ -143,7 +170,7 @@
     [optional Checksum      crc      'srchk'                                                    ] // checksum is optional but mspec checksum isn't
     [peek     byte          peekAlpha                                                           ]
     [optional Alpha         alpha    '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'               ] // Read if the peeked byte is between 'g' and 'z'
-    [const    byte          cr       0xD                                                        ] // 0xD == "<cr>"
+    [simple   RequestTermination  termination                       ]
 ]
 
 [discriminatedType CBusPointToMultiPointCommand(bit srchk)
@@ -156,7 +183,6 @@
             [optional Checksum      crc           'srchk'                                              ] // checksum is optional but mspec checksum isn't
             [peek     byte          peekAlpha                                                          ]
             [optional Alpha         alpha         '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'         ] // Read if the peeked byte is between 'g' and 'z'
-            [const    byte          cr            0xD                                                  ] // 0xD == "<cr>"
         ]
         [         CBusPointToMultiPointCommandNormal
             [simple   ApplicationIdContainer   application                                             ]
@@ -165,9 +191,9 @@
             [optional Checksum                 crc         'srchk'                                     ] // crc      is optional but mspec crc      isn't
             [peek     byte                     peekAlpha                                               ]
             [optional Alpha                    alpha       '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'] // Read if the peeked byte is between 'g' and 'z'
-            [const    byte                     cr          0xD                                         ] // 0xD == "<cr>"
         ]
     ]
+    [simple   RequestTermination  termination                       ]
 ]
 
 [discriminatedType CBusPointToPointToMultipointCommand(bit srchk)
@@ -181,7 +207,6 @@
             [optional Checksum    crc           'srchk'                                              ] // crc      is optional but mspec crc      isn't
             [peek     byte        peekAlpha                                                          ]
             [optional Alpha       alpha         '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'         ] // Read if the peeked byte is between 'g' and 'z'
-            [const    byte        cr            0xD                                                  ] // 0xD == "<cr>"
         ]
         [         CBusCommandPointToPointToMultiPointNormal
             [simple   ApplicationIdContainer application                                             ]
@@ -189,9 +214,9 @@
             [optional Checksum               crc         'srchk'                                     ] // crc      is optional but mspec crc      isn't
             [peek     byte                   peekAlpha                                               ]
             [optional Alpha                  alpha       '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'] // Read if the peeked byte is between 'g' and 'z'
-            [const    byte                   cr          0xD                                         ] // 0xD == "<cr>"
         ]
     ]
+    [simple   RequestTermination  termination                       ]
 ]
 
 /*
@@ -851,24 +876,25 @@
 ]
 
 [type Reply
-    [peek   byte magicByte]
-    [typeSwitch magicByte
+    [peek    byte peekedByte                                              ]
+    [virtual bit  isAlpha '(peekedByte >= 0x67) && (peekedByte <= 0x7A)'  ]
+    [typeSwitch peekedByte, isAlpha
         ['0x0' CALReplyReply
             [simple CALReply isA]
         ]
         ['0x0' MonitoredSALReply
             [simple MonitoredSAL isA]
         ]
-        ['0x0' ConfirmationReply
+        [*, 'true' ConfirmationReply
             [simple Confirmation isA]
         ]
-        ['0x0' PowerUpReply
+        ['0x2B' PowerUpReply
             [simple PowerUp isA]
         ]
         ['0x0' ParameterChangeReply
             [simple ParameterChange isA]
         ]
-        ['0x0' ExclamationMarkReply
+        ['0x21' ExclamationMarkReply
             [simple ExclamationMark isA]
         ]
     ]
@@ -894,8 +920,7 @@
     ]
     [simple   CALData   calData                                                                  ]
     //[checksum byte crc   '0x00'                                                                ] // TODO: Fix this
-    [const    byte      cr      0x0D                                                             ] // 0xD == "<cr>"
-    [const    byte      lf      0x0A                                                             ] // 0xA == "<lf>"
+    [simple   ResponseTermination termination                       ]
 ]
 
 [type BridgeCount
@@ -934,8 +959,7 @@
     ]
     [optional SALData salData                                               ]
     //[checksum byte crc   '0x00'                                                                ] // TODO: Fix this
-    [const    byte        cr 0x0D                                                     ] // 0xD == "<cr>"
-    [const    byte        lf 0x0A                                                     ] // 0xA == "<lf>"
+    [simple   ResponseTermination termination                       ]
 ]
 
 [type Confirmation
@@ -951,18 +975,16 @@
 ]
 
 [type PowerUp
-// TODO: implement garbage reading
-//    [array    byte        garbage   terminated  '0x2B'                              ] // "+"
-    [const    byte        plus 0x02B                                                  ] // 0xD == "<cr>"
-    [const    byte        cr   0x0D                                                   ] // 0xD == "<cr>"
-    [const    byte        lf   0x0A                                                   ] // 0xA == "<lf>"
+    [const    byte        powerUpIndicator       0x2B                  ] // "+"
+    [array    byte        garbage   terminated  '0x0D'                 ] // read all following +
+    [simple   RequestTermination  reqTermination                       ]
+    [simple   ResponseTermination resTermination                       ]
 ]
 
 [type ParameterChange
-    [const    byte        specialChar1      0x3D                                    ] // "="
-    [const    byte        specialChar2      0x3D                                    ] // "="
-    [const    byte        cr 0x0D                                                   ] // 0xD == "<cr>"
-    [const    byte        lf 0x0A                                                   ] // 0xA == "<lf>"
+    [const    byte        specialChar1      0x3D                    ] // "="
+    [const    byte        specialChar2      0x3D                    ] // "="
+    [simple   ResponseTermination termination                       ]
 ]
 
 [type ExclamationMark
@@ -991,8 +1013,7 @@
                         'statusHeader.numberOfCharacterPairs - 2'   ]
     [simple     Checksum
                         crc                                         ]
-    [const      byte    cr  0x0D                                    ] // 0xD == "<cr>"
-    [const      byte    lf  0x0A                                    ] // 0xA == "<lf>"
+    [simple   ResponseTermination termination                       ]
 ]
 
 [type StatusHeader
@@ -1014,8 +1035,7 @@
                         'statusHeader.numberOfCharacterPairs - 3'   ]
     [simple     Checksum
                         crc                                         ]
-    [const      byte    cr  0x0D                                    ] // 0xD == "<cr>"
-    [const      byte    lf  0x0A                                    ] // 0xA == "<lf>"
+    [simple   ResponseTermination termination                       ]
 ]
 
 [type ExtendedStatusHeader
@@ -1049,3 +1069,12 @@
     [simple     uint 3  stackCounter    ]
     [simple     uint 3  stackDepth      ]
 ]
+
+[type RequestTermination
+    [const      byte    cr  0x0D                                    ] // 0xD == "<cr>"
+]
+
+[type ResponseTermination
+    [const      byte    cr  0x0D                                    ] // 0xD == "<cr>"
+    [const      byte    lf  0x0A                                    ] // 0xA == "<lf>"
+]
\ No newline at end of file


[plc4x] 03/06: feat(c-bus): small improvements on spec

Posted by sr...@apache.org.
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

commit 913bd948a2d480ad9d7c0220dd41abf89bd00bf3
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Jul 1 15:49:28 2022 +0200

    feat(c-bus): small improvements on spec
---
 .../apache/plc4x/java/cbus/RandomPackagesTest.java | 101 ++++++++++++++++++++-
 .../src/main/resources/protocols/cbus/c-bus.mspec  |  40 ++++----
 2 files changed, 121 insertions(+), 20 deletions(-)

diff --git a/plc4j/drivers/c-bus/src/test/java/org/apache/plc4x/java/cbus/RandomPackagesTest.java b/plc4j/drivers/c-bus/src/test/java/org/apache/plc4x/java/cbus/RandomPackagesTest.java
index a96871ddc..74eb1b448 100644
--- a/plc4j/drivers/c-bus/src/test/java/org/apache/plc4x/java/cbus/RandomPackagesTest.java
+++ b/plc4j/drivers/c-bus/src/test/java/org/apache/plc4x/java/cbus/RandomPackagesTest.java
@@ -29,7 +29,7 @@ import static org.assertj.core.api.Assertions.assertThat;
 
 public class RandomPackagesTest {
 
-    static final String BACKSLASH = "";//""5C";
+    static final String BACKSLASH = "5C";
     static final String CR = "0D";
     static final String LF = "0A";
 
@@ -196,6 +196,105 @@ public class RandomPackagesTest {
                 .isNotNull();
             System.out.println(msg);
         }
+
+        // 9.1
+        @Nested
+        class PointToMultipointComandsIntoLocalCBusNetwork {
+            @Test
+            void LightningOff() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex(BACKSLASH + "0538000114AE" + CR);
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, false, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Test
+            void LightningStatus() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex(BACKSLASH + "05FF007A38004A" + CR);
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, false, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Disabled("something is wrong here")
+            @Test
+            void LightningStatusReply1() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex("D83800A8AA02000000000000000000000000000000000000009C");
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, true, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Disabled("something is wrong here")
+            @Test
+            void LightningStatusReply2() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex("D838580000000000000000000000000000000000000000000098");
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, true, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Disabled("something is wrong here")
+            @Test
+            void LightningStatusReply3() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex("D638B0000000000000000000000000000000000000000042");
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, true, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Disabled("something is wrong here")
+            @Test
+            void LightningStatusReply4() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex("86999900F8003800A8AA0200000000000000000000000000000000000000C4");
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, true, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Disabled("something is wrong here")
+            @Test
+            void LightningStatusReply5() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex("86999900F800385800000000000000000000000000000000000000000000C0");
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, true, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+
+            @Disabled("something is wrong here")
+            @Test
+            void LightningStatusReply6() throws Exception {
+                // TODO: the section describes that on non smart mode the message doesn't have the last CR
+                byte[] bytes = Hex.decodeHex("86999900F60038B000000000000000000000000000000000000000008F");
+                ReadBufferByteBased readBufferByteBased = new ReadBufferByteBased(bytes);
+                CBusMessage msg = CBusMessage.staticParse(readBufferByteBased, true, true);
+                assertThat(msg)
+                    .isNotNull();
+                System.out.println(msg);
+            }
+        }
+
     }
 
     @Nested
diff --git a/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec b/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec
index c841c3814..5e1fc2bf3 100644
--- a/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec
+++ b/protocols/c-bus/src/main/resources/protocols/cbus/c-bus.mspec
@@ -57,12 +57,19 @@
         ]
         ['0x40' *DirectCommandAccess
             [const    byte                at        0x40                    ]
-            // TODO: read device_management_cal data here
+            [simple   CBusPointToPointCommand('srchk')     cbusCommand      ]
             [simple   RequestTermination  termination                       ]
         ]
         ['0x5C' *Command
             [simple   CBusCommand('srchk')     cbusCommand                  ]
         ]
+        ['0x6E' *Null
+            [const    uint 32             nullIndicator        0x6E756C6C   ] // "null"
+            [simple   RequestTermination  termination                       ]
+        ]
+        ['0x0D' *Empty
+            [simple   RequestTermination  termination                       ]
+        ]
     ]
 ]
 
@@ -124,6 +131,7 @@
 
 [type Alpha
     [simple byte character]
+    [validation '(character >= 0x67) && (character <= 0x7A)' "character not in alpha space" shouldFail=false] // Read if the peeked byte is between 'g' and 'z'
 ]
 
 [type NetworkRoute
@@ -168,9 +176,8 @@
     ]
     [simple   CALData calData                                                                   ]
     [optional Checksum      crc      'srchk'                                                    ] // checksum is optional but mspec checksum isn't
-    [peek     byte          peekAlpha                                                           ]
-    [optional Alpha         alpha    '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'               ] // Read if the peeked byte is between 'g' and 'z'
-    [simple   RequestTermination  termination                       ]
+    [optional Alpha         alpha                                                               ]
+    [simple   RequestTermination  termination                                                   ]
 ]
 
 [discriminatedType CBusPointToMultiPointCommand(bit srchk)
@@ -181,16 +188,14 @@
             [reserved byte          '0x00'                                                             ]
             [simple   StatusRequest statusRequest                                                      ]
             [optional Checksum      crc           'srchk'                                              ] // checksum is optional but mspec checksum isn't
-            [peek     byte          peekAlpha                                                          ]
-            [optional Alpha         alpha         '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'         ] // Read if the peeked byte is between 'g' and 'z'
+            [optional Alpha         alpha                                                              ]
         ]
         [         CBusPointToMultiPointCommandNormal
             [simple   ApplicationIdContainer   application                                             ]
             [reserved byte                     '0x00'                                                  ]
             [simple   SALData                  salData                                                 ]
             [optional Checksum                 crc         'srchk'                                     ] // crc      is optional but mspec crc      isn't
-            [peek     byte                     peekAlpha                                               ]
-            [optional Alpha                    alpha       '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'] // Read if the peeked byte is between 'g' and 'z'
+            [optional Alpha         alpha                                                               ]
         ]
     ]
     [simple   RequestTermination  termination                       ]
@@ -205,15 +210,13 @@
             [reserved byte        '0xFF'                                                             ]
             [simple StatusRequest statusRequest                                                      ]
             [optional Checksum    crc           'srchk'                                              ] // crc      is optional but mspec crc      isn't
-            [peek     byte        peekAlpha                                                          ]
-            [optional Alpha       alpha         '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'         ] // Read if the peeked byte is between 'g' and 'z'
+            [optional Alpha         alpha                                                            ]
         ]
         [         CBusCommandPointToPointToMultiPointNormal
             [simple   ApplicationIdContainer application                                             ]
             [simple   SALData                salData                                                 ]
             [optional Checksum               crc         'srchk'                                     ] // crc      is optional but mspec crc      isn't
-            [peek     byte                   peekAlpha                                               ]
-            [optional Alpha                  alpha       '(peekAlpha >= 0x67) && (peekAlpha <= 0x7A)'] // Read if the peeked byte is between 'g' and 'z'
+            [optional Alpha         alpha                                                            ]
         ]
     ]
     [simple   RequestTermination  termination                       ]
@@ -894,8 +897,8 @@
         ['0x0' ParameterChangeReply
             [simple ParameterChange isA]
         ]
-        ['0x21' ExclamationMarkReply
-            [simple ExclamationMark isA]
+        ['0x21' ServerErrorReply
+            [const  byte    errorMarker     0x21        ]
         ]
     ]
 ]
@@ -971,12 +974,15 @@
         ['0x24'    NotTransmittedCorruption            ] // "$"
         ['0x25'    NotTransmittedSyncLoss              ] // "%"
         ['0x27'    NotTransmittedTooLong               ] // "'"
+        [*         *Unknown
+        ]
     ]
 ]
 
 [type PowerUp
     [const    byte        powerUpIndicator       0x2B                  ] // "+"
-    [array    byte        garbage   terminated  '0x0D'                 ] // read all following +
+    // TODO: do we really need a static helper to peek for terminated?=
+    //[array    uint 8        garbage   terminated  '0x0D'                 ] // read all following +
     [simple   RequestTermination  reqTermination                       ]
     [simple   ResponseTermination resTermination                       ]
 ]
@@ -987,10 +993,6 @@
     [simple   ResponseTermination termination                       ]
 ]
 
-[type ExclamationMark
-    // TODO: implement me
-]
-
 [type ReplyNetwork
      [simple RouteType     routeType                                                    ]
      [array  BridgeAddress additionalBridgeAddresses count 'routeType.additionalBridges']


[plc4x] 06/06: feat(codegen/plc4j): add information of the type into the error message

Posted by sr...@apache.org.
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

commit 8636f3fe8eb11ba7e6530da8435d0f40f25d47a5
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Jul 1 16:01:27 2022 +0200

    feat(codegen/plc4j): add information of the type into the error message
---
 .../src/main/resources/templates/java/complex-type-template.java.ftlh   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh b/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh
index 471b8deda..c23bd040d 100644
--- a/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh
+++ b/code-generation/language-java/src/main/resources/templates/java/complex-type-template.java.ftlh
@@ -742,7 +742,7 @@ public<#if type.isDiscriminatedParentTypeDefinition()> abstract</#if> class ${ty
                     }<#sep> else </#sep>
                 </#list>
                 if (builder == null) {
-                    throw new ParseException("Unsupported case for discriminated type");
+                    throw new ParseException("Unsupported case for discriminated type"<#if switchField.getDiscriminatorExpressions()?has_content>+" parameters ["<#list switchField.getDiscriminatorExpressions() as discriminatorExpression>+"${discriminatorExpression.stringRepresentation()}="+${helper.toParseExpression(null, null, discriminatorExpression, parserArguments)}<#sep>+" "</#sep></#list>+"]"</#if>);
                 }
                 <#break>
             <#case "unknown">


[plc4x] 04/06: chore(codegen): added note for naming sub types

Posted by sr...@apache.org.
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

commit dffd97de8f571df91a26d7f6841d6c6da1f63749
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Jul 1 15:50:19 2022 +0200

    chore(codegen): added note for naming sub types
---
 .../codegenerator/language/mspec/parser/MessageFormatListener.java       | 1 +
 1 file changed, 1 insertion(+)

diff --git a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
index 86dc90c91..b3b33bb20 100644
--- a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
+++ b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
@@ -518,6 +518,7 @@ public class MessageFormatListener extends MSpecBaseListener implements LazyType
     @Override
     public void exitCaseStatement(MSpecParser.CaseStatementContext ctx) {
         String namePrefix = "";
+        // TODO: maybe name this prefix and suffix wildcard
         if (ctx.nameWildcard != null) {
             namePrefix = currentTypeName;
         }


[plc4x] 02/06: feat(codegen/plc4go): when a sub-type parse match fails output the actual values

Posted by sr...@apache.org.
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

commit a7504a6f4e4865e913c1ee92aecfa6352c2c3a53
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Jul 1 12:05:19 2022 +0200

    feat(codegen/plc4go): when a sub-type parse match fails output the actual values
---
 .../src/main/resources/templates/go/complex-type-template.go.ftlh    | 5 ++---
 .../language/mspec/model/terms/DefaultVariableLiteral.java           | 2 +-
 plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go     | 5 ++---
 plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go          | 5 ++---
 plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go          | 5 ++---
 plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go         | 5 ++---
 plc4go/protocols/ads/readwrite/model/AdsData.go                      | 5 ++---
 plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go          | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/APDU.go                    | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go    | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go     | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go      | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go         | 5 ++---
 .../bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go        | 5 ++---
 .../BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go     | 5 ++---
 .../BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go | 5 ++---
 .../readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go   | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go   | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go        | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetError.go             | 5 ++---
 .../bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go         | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go    | 5 ++---
 .../readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go  | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go    | 5 ++---
 .../model/BACnetFaultParameterFaultExtendedParametersEntry.go        | 5 ++---
 .../model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go       | 5 ++---
 .../model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go       | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go       | 5 ++---
 .../bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go       | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go           | 5 ++---
 .../protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go  | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go | 5 ++---
 .../bacnetip/readwrite/model/BACnetNotificationParameters.go         | 5 ++---
 .../BACnetNotificationParametersChangeOfDiscreteValueNewValue.go     | 5 ++---
 .../model/BACnetNotificationParametersChangeOfValueNewValue.go       | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go  | 5 ++---
 .../bacnetip/readwrite/model/BACnetOptionalCharacterString.go        | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go      | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go  | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go     | 5 ++---
 .../protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go   | 5 ++---
 .../readwrite/model/BACnetPropertyAccessResultAccessResult.go        | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go    | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go         | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go             | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go        | 5 ++---
 .../readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go  | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go         | 5 ++---
 .../protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go   | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go         | 5 ++---
 .../bacnetip/readwrite/model/BACnetTimerStateChangeValue.go          | 5 ++---
 .../bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go      | 5 ++---
 .../readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go   | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go       | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/BVLC.go                    | 5 ++---
 plc4go/protocols/bacnetip/readwrite/model/NLM.go                     | 5 ++---
 plc4go/protocols/cbus/readwrite/model/CALData.go                     | 5 ++---
 plc4go/protocols/cbus/readwrite/model/CALReply.go                    | 5 ++---
 plc4go/protocols/cbus/readwrite/model/CBusCommand.go                 | 5 ++---
 plc4go/protocols/cbus/readwrite/model/CBusMessage.go                 | 5 ++---
 .../protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go   | 5 ++---
 plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go     | 5 ++---
 .../cbus/readwrite/model/CBusPointToPointToMultipointCommand.go      | 5 ++---
 plc4go/protocols/cbus/readwrite/model/Confirmation.go                | 5 ++---
 plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go        | 5 ++---
 plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go                | 5 ++---
 plc4go/protocols/cbus/readwrite/model/Reply.go                       | 5 ++---
 plc4go/protocols/cbus/readwrite/model/Request.go                     | 5 ++---
 plc4go/protocols/cbus/readwrite/model/SALData.go                     | 5 ++---
 plc4go/protocols/cbus/readwrite/model/StatusRequest.go               | 5 ++---
 plc4go/protocols/df1/readwrite/model/DF1Command.go                   | 5 ++---
 plc4go/protocols/df1/readwrite/model/DF1Symbol.go                    | 5 ++---
 plc4go/protocols/eip/readwrite/model/CipService.go                   | 5 ++---
 plc4go/protocols/eip/readwrite/model/EipPacket.go                    | 5 ++---
 plc4go/protocols/firmata/readwrite/model/FirmataCommand.go           | 5 ++---
 plc4go/protocols/firmata/readwrite/model/FirmataMessage.go           | 5 ++---
 plc4go/protocols/firmata/readwrite/model/SysexCommand.go             | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/Apdu.go                    | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/ApduControl.go             | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/ApduData.go                | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go             | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/CEMI.go                    | 5 ++---
 .../protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go  | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go          | 5 ++---
 .../knxnetip/readwrite/model/ConnectionRequestInformation.go         | 5 ++---
 .../knxnetip/readwrite/model/ConnectionResponseDataBlock.go          | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go         | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go         | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go              | 5 ++---
 plc4go/protocols/knxnetip/readwrite/model/ServiceId.go               | 5 ++---
 plc4go/protocols/modbus/readwrite/model/ModbusADU.go                 | 5 ++---
 plc4go/protocols/modbus/readwrite/model/ModbusPDU.go                 | 5 ++---
 plc4go/protocols/s7/readwrite/model/COTPPacket.go                    | 5 ++---
 plc4go/protocols/s7/readwrite/model/COTPParameter.go                 | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7Address.go                     | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go            | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7Message.go                     | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7Parameter.go                   | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go       | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7Payload.go                     | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go         | 5 ++---
 plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go     | 5 ++---
 102 files changed, 203 insertions(+), 304 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 2920cff9e..907acdf89 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
@@ -1390,11 +1390,10 @@ func ${type.name}Parse(readBuffer utils.ReadBuffer<#if hasParserArguments>, ${pa
 		_childTemp, typeSwitchError = ${case.name}Parse(readBuffer<#if case.allParserArguments.isPresent()>, <#list case.allParserArguments.orElseThrow() as parserArgument><#if <#--TODO: here DF1ResponseMessage throws a payloadLength not present: meaning that some feature is not rightfully implemented as the result should be a error not a missing pointer-->type.getPropertyFieldFromThisOrParentByName(parserArgument.name).isPresent() && type.getPropertyFieldFromThisOrParentByName(parserArgument. [...]
 				</#list>
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")<@emitImport import="github.com/pkg/errors" />
+		typeSwitchError = errors.Errorf("Unmapped type for<#if switchField.getDiscriminatorExpressions()?has_content> parameters [<#list switchField.getDiscriminatorExpressions() as discriminatorExpression>${discriminatorExpression.stringRepresentation()}=%v<#sep>, </#sep></#list>]</#if>"<#if switchField.getDiscriminatorExpressions()?has_content>, <#list switchField.getDiscriminatorExpressions() as discriminatorExpression>${helper.toParseExpression(null, null, discriminatorExpression, parserAr [...]
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")<@emitImport import="github.com/pkg/errors" />
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ${type.name}.")<@emitImport import="github.com/pkg/errors" />
 	}
 	_child = _childTemp.(${type.name}ChildSerializeRequirement)
 				<#break>
diff --git a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/terms/DefaultVariableLiteral.java b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/terms/DefaultVariableLiteral.java
index f7cad8b65..5e6c3458f 100644
--- a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/terms/DefaultVariableLiteral.java
+++ b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/model/terms/DefaultVariableLiteral.java
@@ -77,7 +77,7 @@ public class DefaultVariableLiteral implements VariableLiteral {
 
     @Override
     public String stringRepresentation() {
-        return "";
+        return name + getChild().map(Term::stringRepresentation).orElse("");
     }
 
     @Override
diff --git a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
index a6f2f0b3c..c76f81698 100644
--- a/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
+++ b/plc4go/protocols/abeth/readwrite/model/CIPEncapsulationPacket.go
@@ -257,11 +257,10 @@ func CIPEncapsulationPacketParse(readBuffer utils.ReadBuffer) (CIPEncapsulationP
 	case commandType == 0x0207: // CIPEncapsulationReadResponse
 		_childTemp, typeSwitchError = CIPEncapsulationReadResponseParse(readBuffer, packetLen)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandType=%v]", commandType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CIPEncapsulationPacket.")
 	}
 	_child = _childTemp.(CIPEncapsulationPacketChildSerializeRequirement)
 
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
index d2bbb0aeb..bcefbc53a 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go
@@ -127,11 +127,10 @@ func DF1RequestCommandParse(readBuffer utils.ReadBuffer) (DF1RequestCommand, err
 	case functionCode == 0xA2: // DF1RequestProtectedTypedLogicalRead
 		_childTemp, typeSwitchError = DF1RequestProtectedTypedLogicalReadParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [functionCode=%v]", functionCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1RequestCommand.")
 	}
 	_child = _childTemp.(DF1RequestCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
index 452175792..a8dd032b8 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go
@@ -223,11 +223,10 @@ func DF1RequestMessageParse(readBuffer utils.ReadBuffer) (DF1RequestMessage, err
 	case commandCode == 0x0F: // DF1CommandRequestMessage
 		_childTemp, typeSwitchError = DF1CommandRequestMessageParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandCode=%v]", commandCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1RequestMessage.")
 	}
 	_child = _childTemp.(DF1RequestMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go b/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
index 252998eed..128cc12e9 100644
--- a/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
+++ b/plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go
@@ -243,11 +243,10 @@ func DF1ResponseMessageParse(readBuffer utils.ReadBuffer, payloadLength uint16)
 	case commandCode == 0x4F: // DF1CommandResponseMessageProtectedTypedLogicalRead
 		_childTemp, typeSwitchError = DF1CommandResponseMessageProtectedTypedLogicalReadParse(readBuffer, payloadLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandCode=%v]", commandCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1ResponseMessage.")
 	}
 	_child = _childTemp.(DF1ResponseMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsData.go b/plc4go/protocols/ads/readwrite/model/AdsData.go
index 01da0c498..7f83d2075 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsData.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsData.go
@@ -160,11 +160,10 @@ func AdsDataParse(readBuffer utils.ReadBuffer, commandId CommandId, response boo
 	case commandId == CommandId_ADS_READ_WRITE && response == bool(true): // AdsReadWriteResponse
 		_childTemp, typeSwitchError = AdsReadWriteResponseParse(readBuffer, commandId, response)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandId=%v, response=%v]", commandId, response)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of AdsData.")
 	}
 	_child = _childTemp.(AdsDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
index 7db094d1e..e7d5315d8 100644
--- a/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
+++ b/plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go
@@ -123,11 +123,10 @@ func AdsMultiRequestItemParse(readBuffer utils.ReadBuffer, indexGroup uint32) (A
 	case indexGroup == uint32(61570): // AdsMultiRequestItemReadWrite
 		_childTemp, typeSwitchError = AdsMultiRequestItemReadWriteParse(readBuffer, indexGroup)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [indexGroup=%v]", indexGroup)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of AdsMultiRequestItem.")
 	}
 	_child = _childTemp.(AdsMultiRequestItemChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/APDU.go b/plc4go/protocols/bacnetip/readwrite/model/APDU.go
index c85e726fa..0f8cb201d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/APDU.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/APDU.go
@@ -153,11 +153,10 @@ func APDUParse(readBuffer utils.ReadBuffer, apduLength uint16) (APDU, error) {
 	case true: // APDUUnknown
 		_childTemp, typeSwitchError = APDUUnknownParse(readBuffer, apduLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [apduType=%v]", apduType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of APDU.")
 	}
 	_child = _childTemp.(APDUChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
index 507f49598..faab30918 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetApplicationTag.go
@@ -213,11 +213,10 @@ func BACnetApplicationTagParse(readBuffer utils.ReadBuffer) (BACnetApplicationTa
 	case actualTagNumber == 0xC: // BACnetApplicationTagObjectIdentifier
 		_childTemp, typeSwitchError = BACnetApplicationTagObjectIdentifierParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [actualTagNumber=%v]", actualTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetApplicationTag.")
 	}
 	_child = _childTemp.(BACnetApplicationTagChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
index 3e4d22973..16e788d81 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetCalendarEntry.go
@@ -172,11 +172,10 @@ func BACnetCalendarEntryParse(readBuffer utils.ReadBuffer) (BACnetCalendarEntry,
 	case peekedTagNumber == uint8(2): // BACnetCalendarEntryWeekNDay
 		_childTemp, typeSwitchError = BACnetCalendarEntryWeekNDayParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetCalendarEntry.")
 	}
 	_child = _childTemp.(BACnetCalendarEntryChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
index 9d1fa6920..2e1252bb9 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetChannelValue.go
@@ -207,11 +207,10 @@ func BACnetChannelValueParse(readBuffer utils.ReadBuffer) (BACnetChannelValue, e
 	case peekedTagNumber == uint8(0) && peekedIsContextTag == bool(true): // BACnetChannelValueLightingCommand
 		_childTemp, typeSwitchError = BACnetChannelValueLightingCommandParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v, peekedIsContextTag=%v]", peekedTagNumber, peekedIsContextTag)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetChannelValue.")
 	}
 	_child = _childTemp.(BACnetChannelValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
index 22ef33593..6b1304016 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetClientCOV.go
@@ -165,11 +165,10 @@ func BACnetClientCOVParse(readBuffer utils.ReadBuffer) (BACnetClientCOV, error)
 	case peekedTagNumber == 0x0: // BACnetClientCOVNone
 		_childTemp, typeSwitchError = BACnetClientCOVNoneParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetClientCOV.")
 	}
 	_child = _childTemp.(BACnetClientCOVChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
index f7fa99fc3..9f5f0bbc7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequest.go
@@ -222,11 +222,10 @@ func BACnetConfirmedServiceRequestParse(readBuffer utils.ReadBuffer, serviceRequ
 	case true: // BACnetConfirmedServiceRequestUnknown
 		_childTemp, typeSwitchError = BACnetConfirmedServiceRequestUnknownParse(readBuffer, serviceRequestLength, serviceRequestPayloadLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [serviceChoice=%v]", serviceChoice)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequest.")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
index 52aecc684..14b43f7b0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.go
@@ -198,11 +198,10 @@ func BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordParse(readBuffer u
 	case peekedTagNumber == 0x1: // BACnetConfirmedServiceRequestAtomicReadFileRecord
 		_childTemp, typeSwitchError = BACnetConfirmedServiceRequestAtomicReadFileRecordParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecord.")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestAtomicReadFileStreamOrRecordChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
index f20aa9028..a27c3ddd6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.go
@@ -201,11 +201,10 @@ func BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassParse(readBuff
 	case peekedTagNumber == uint8(1): // BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacter
 		_childTemp, typeSwitchError = BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassCharacterParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestConfirmedTextMessageMessageClass.")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestConfirmedTextMessageMessageClassChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
index e8234b1de..2c5f596d0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConfirmedServiceRequestReadRangeRange.go
@@ -200,11 +200,10 @@ func BACnetConfirmedServiceRequestReadRangeRangeParse(readBuffer utils.ReadBuffe
 	case peekedTagNumber == 0x7: // BACnetConfirmedServiceRequestReadRangeRangeByTime
 		_childTemp, typeSwitchError = BACnetConfirmedServiceRequestReadRangeRangeByTimeParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConfirmedServiceRequestReadRangeRange.")
 	}
 	_child = _childTemp.(BACnetConfirmedServiceRequestReadRangeRangeChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
index 7a930876d..e3d7a6dd6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetConstructedData.go
@@ -1520,11 +1520,10 @@ func BACnetConstructedDataParse(readBuffer utils.ReadBuffer, tagNumber uint8, ob
 	case true: // BACnetConstructedDataUnspecified
 		_childTemp, typeSwitchError = BACnetConstructedDataUnspecifiedParse(readBuffer, tagNumber, objectTypeArgument, propertyIdentifierArgument, arrayIndexArgument)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [objectTypeArgument=%v, propertyIdentifierArgument=%v, peekedTagNumber=%v]", objectTypeArgument, propertyIdentifierArgument, peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetConstructedData.")
 	}
 	_child = _childTemp.(BACnetConstructedDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go
index 1fdee8173..4ecac5836 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetContextTag.go
@@ -231,11 +231,10 @@ func BACnetContextTagParse(readBuffer utils.ReadBuffer, tagNumberArgument uint8,
 	case dataType == BACnetDataType_UNKNOWN: // BACnetContextTagUnknown
 		_childTemp, typeSwitchError = BACnetContextTagUnknownParse(readBuffer, tagNumberArgument, dataType, actualLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [dataType=%v]", dataType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetContextTag.")
 	}
 	_child = _childTemp.(BACnetContextTagChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go
index 3c9563e40..550693830 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetError.go
@@ -133,11 +133,10 @@ func BACnetErrorParse(readBuffer utils.ReadBuffer, errorChoice BACnetConfirmedSe
 	case true: // BACnetErrorGeneral
 		_childTemp, typeSwitchError = BACnetErrorGeneralParse(readBuffer, errorChoice)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [errorChoice=%v]", errorChoice)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetError.")
 	}
 	_child = _childTemp.(BACnetErrorChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go
index ab8453d96..3c0a335c8 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventLogRecordLogDatum.go
@@ -203,11 +203,10 @@ func BACnetEventLogRecordLogDatumParse(readBuffer utils.ReadBuffer, tagNumber ui
 	case peekedTagNumber == uint8(2): // BACnetEventLogRecordLogDatumTimeChange
 		_childTemp, typeSwitchError = BACnetEventLogRecordLogDatumTimeChangeParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetEventLogRecordLogDatum.")
 	}
 	_child = _childTemp.(BACnetEventLogRecordLogDatumChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go
index 7a0138b8a..5aff1f218 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameter.go
@@ -199,11 +199,10 @@ func BACnetEventParameterParse(readBuffer utils.ReadBuffer) (BACnetEventParamete
 	case peekedTagNumber == uint8(22): // BACnetEventParameterChangeOfTimer
 		_childTemp, typeSwitchError = BACnetEventParameterChangeOfTimerParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetEventParameter.")
 	}
 	_child = _childTemp.(BACnetEventParameterChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go
index e45954959..18327f822 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetEventParameterChangeOfValueCivCriteria.go
@@ -201,11 +201,10 @@ func BACnetEventParameterChangeOfValueCivCriteriaParse(readBuffer utils.ReadBuff
 	case peekedTagNumber == uint8(1): // BACnetEventParameterChangeOfValueCivCriteriaReferencedPropertyIncrement
 		_childTemp, typeSwitchError = BACnetEventParameterChangeOfValueCivCriteriaReferencedPropertyIncrementParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetEventParameterChangeOfValueCivCriteria.")
 	}
 	_child = _childTemp.(BACnetEventParameterChangeOfValueCivCriteriaChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go
index 13279687e..e80663057 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameter.go
@@ -177,11 +177,10 @@ func BACnetFaultParameterParse(readBuffer utils.ReadBuffer) (BACnetFaultParamete
 	case peekedTagNumber == uint8(7): // BACnetFaultParameterFaultListed
 		_childTemp, typeSwitchError = BACnetFaultParameterFaultListedParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetFaultParameter.")
 	}
 	_child = _childTemp.(BACnetFaultParameterChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go
index fbe9b7b4e..353763978 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultExtendedParametersEntry.go
@@ -207,11 +207,10 @@ func BACnetFaultParameterFaultExtendedParametersEntryParse(readBuffer utils.Read
 	case peekedTagNumber == uint8(0) && peekedIsContextTag == bool(true): // BACnetFaultParameterFaultExtendedParametersEntryReference
 		_childTemp, typeSwitchError = BACnetFaultParameterFaultExtendedParametersEntryReferenceParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v, peekedIsContextTag=%v]", peekedTagNumber, peekedIsContextTag)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetFaultParameterFaultExtendedParametersEntry.")
 	}
 	_child = _childTemp.(BACnetFaultParameterFaultExtendedParametersEntryChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go
index 70c9de60e..524cf4aa7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMaxNormalValue.go
@@ -210,11 +210,10 @@ func BACnetFaultParameterFaultOutOfRangeMaxNormalValueParse(readBuffer utils.Rea
 	case peekedTagNumber == 0x3: // BACnetFaultParameterFaultOutOfRangeMaxNormalValueInteger
 		_childTemp, typeSwitchError = BACnetFaultParameterFaultOutOfRangeMaxNormalValueIntegerParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetFaultParameterFaultOutOfRangeMaxNormalValue.")
 	}
 	_child = _childTemp.(BACnetFaultParameterFaultOutOfRangeMaxNormalValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go
index 75f4fe103..886658ffa 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetFaultParameterFaultOutOfRangeMinNormalValue.go
@@ -210,11 +210,10 @@ func BACnetFaultParameterFaultOutOfRangeMinNormalValueParse(readBuffer utils.Rea
 	case peekedTagNumber == 0x3: // BACnetFaultParameterFaultOutOfRangeMinNormalValueInteger
 		_childTemp, typeSwitchError = BACnetFaultParameterFaultOutOfRangeMinNormalValueIntegerParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetFaultParameterFaultOutOfRangeMinNormalValue.")
 	}
 	_child = _childTemp.(BACnetFaultParameterFaultOutOfRangeMinNormalValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go
index 38632a999..565a9e375 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetHostAddress.go
@@ -167,11 +167,10 @@ func BACnetHostAddressParse(readBuffer utils.ReadBuffer) (BACnetHostAddress, err
 	case peekedTagNumber == uint8(2): // BACnetHostAddressName
 		_childTemp, typeSwitchError = BACnetHostAddressNameParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetHostAddress.")
 	}
 	_child = _childTemp.(BACnetHostAddressChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go
index 851f80f2f..e23be59d6 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLandingCallStatusCommand.go
@@ -165,11 +165,10 @@ func BACnetLandingCallStatusCommandParse(readBuffer utils.ReadBuffer) (BACnetLan
 	case peekedTagNumber == uint8(2): // BACnetLandingCallStatusCommandDestination
 		_childTemp, typeSwitchError = BACnetLandingCallStatusCommandDestinationParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetLandingCallStatusCommand.")
 	}
 	_child = _childTemp.(BACnetLandingCallStatusCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go
index 6cfc4dc10..20cdb90d0 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogData.go
@@ -203,11 +203,10 @@ func BACnetLogDataParse(readBuffer utils.ReadBuffer, tagNumber uint8) (BACnetLog
 	case peekedTagNumber == uint8(2): // BACnetLogDataLogDataTimeChange
 		_childTemp, typeSwitchError = BACnetLogDataLogDataTimeChangeParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetLogData.")
 	}
 	_child = _childTemp.(BACnetLogDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go
index a55ce9e28..fa07d80a5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogDataLogDataEntry.go
@@ -179,11 +179,10 @@ func BACnetLogDataLogDataEntryParse(readBuffer utils.ReadBuffer) (BACnetLogDataL
 	case peekedTagNumber == uint8(8): // BACnetLogDataLogDataEntryAnyValue
 		_childTemp, typeSwitchError = BACnetLogDataLogDataEntryAnyValueParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetLogDataLogDataEntry.")
 	}
 	_child = _childTemp.(BACnetLogDataLogDataEntryChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go
index 030fcee1d..d72ecefde 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetLogRecordLogDatum.go
@@ -219,11 +219,10 @@ func BACnetLogRecordLogDatumParse(readBuffer utils.ReadBuffer, tagNumber uint8)
 	case peekedTagNumber == uint8(10): // BACnetLogRecordLogDatumAnyValue
 		_childTemp, typeSwitchError = BACnetLogRecordLogDatumAnyValueParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetLogRecordLogDatum.")
 	}
 	_child = _childTemp.(BACnetLogRecordLogDatumChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go
index 3e51812c8..0cc974f03 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParameters.go
@@ -238,11 +238,10 @@ func BACnetNotificationParametersParse(readBuffer utils.ReadBuffer, tagNumber ui
 	case peekedTagNumber == uint8(22): // BACnetNotificationParametersChangeOfTimer
 		_childTemp, typeSwitchError = BACnetNotificationParametersChangeOfTimerParse(readBuffer, tagNumber, objectTypeArgument, peekedTagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetNotificationParameters.")
 	}
 	_child = _childTemp.(BACnetNotificationParametersChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go
index 1ca217fb5..2832c9624 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfDiscreteValueNewValue.go
@@ -235,11 +235,10 @@ func BACnetNotificationParametersChangeOfDiscreteValueNewValueParse(readBuffer u
 	case peekedTagNumber == uint8(0) && peekedIsContextTag == bool(true): // BACnetNotificationParametersChangeOfDiscreteValueNewValueDatetime
 		_childTemp, typeSwitchError = BACnetNotificationParametersChangeOfDiscreteValueNewValueDatetimeParse(readBuffer, tagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v, peekedIsContextTag=%v]", peekedTagNumber, peekedIsContextTag)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetNotificationParametersChangeOfDiscreteValueNewValue.")
 	}
 	_child = _childTemp.(BACnetNotificationParametersChangeOfDiscreteValueNewValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go
index 5bfacc724..fad33293a 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetNotificationParametersChangeOfValueNewValue.go
@@ -201,11 +201,10 @@ func BACnetNotificationParametersChangeOfValueNewValueParse(readBuffer utils.Rea
 	case peekedTagNumber == uint8(1): // BACnetNotificationParametersChangeOfValueNewValueChangedValue
 		_childTemp, typeSwitchError = BACnetNotificationParametersChangeOfValueNewValueChangedValueParse(readBuffer, tagNumber, peekedTagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetNotificationParametersChangeOfValueNewValue.")
 	}
 	_child = _childTemp.(BACnetNotificationParametersChangeOfValueNewValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go
index 70b625d8e..53a5f1913 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalBinaryPV.go
@@ -165,11 +165,10 @@ func BACnetOptionalBinaryPVParse(readBuffer utils.ReadBuffer) (BACnetOptionalBin
 	case true: // BACnetOptionalBinaryPVValue
 		_childTemp, typeSwitchError = BACnetOptionalBinaryPVValueParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetOptionalBinaryPV.")
 	}
 	_child = _childTemp.(BACnetOptionalBinaryPVChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go
index 529d9fd43..c2ee5d4c7 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalCharacterString.go
@@ -165,11 +165,10 @@ func BACnetOptionalCharacterStringParse(readBuffer utils.ReadBuffer) (BACnetOpti
 	case true: // BACnetOptionalCharacterStringValue
 		_childTemp, typeSwitchError = BACnetOptionalCharacterStringValueParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetOptionalCharacterString.")
 	}
 	_child = _childTemp.(BACnetOptionalCharacterStringChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go
index 0d89a91eb..47e42c37c 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalREAL.go
@@ -165,11 +165,10 @@ func BACnetOptionalREALParse(readBuffer utils.ReadBuffer) (BACnetOptionalREAL, e
 	case true: // BACnetOptionalREALValue
 		_childTemp, typeSwitchError = BACnetOptionalREALValueParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetOptionalREAL.")
 	}
 	_child = _childTemp.(BACnetOptionalREALChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go
index 38ed90377..abb558b5d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetOptionalUnsigned.go
@@ -165,11 +165,10 @@ func BACnetOptionalUnsignedParse(readBuffer utils.ReadBuffer) (BACnetOptionalUns
 	case true: // BACnetOptionalUnsignedValue
 		_childTemp, typeSwitchError = BACnetOptionalUnsignedValueParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetOptionalUnsigned.")
 	}
 	_child = _childTemp.(BACnetOptionalUnsignedChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go
index 833601e88..15d895c35 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPriorityValue.go
@@ -212,11 +212,10 @@ func BACnetPriorityValueParse(readBuffer utils.ReadBuffer, objectTypeArgument BA
 	case peekedTagNumber == uint8(1) && peekedIsContextTag == bool(true): // BACnetPriorityValueDateTime
 		_childTemp, typeSwitchError = BACnetPriorityValueDateTimeParse(readBuffer, objectTypeArgument)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v, peekedIsContextTag=%v]", peekedTagNumber, peekedIsContextTag)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetPriorityValue.")
 	}
 	_child = _childTemp.(BACnetPriorityValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go
index 8a7001ff7..95c4a9e05 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetProcessIdSelection.go
@@ -165,11 +165,10 @@ func BACnetProcessIdSelectionParse(readBuffer utils.ReadBuffer) (BACnetProcessId
 	case true: // BACnetProcessIdSelectionValue
 		_childTemp, typeSwitchError = BACnetProcessIdSelectionValueParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetProcessIdSelection.")
 	}
 	_child = _childTemp.(BACnetProcessIdSelectionChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go
index 61b4812e8..494ad1b31 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyAccessResultAccessResult.go
@@ -170,11 +170,10 @@ func BACnetPropertyAccessResultAccessResultParse(readBuffer utils.ReadBuffer, ob
 	case peekedTagNumber == uint8(5): // BACnetPropertyAccessResultAccessResultPropertyAccessError
 		_childTemp, typeSwitchError = BACnetPropertyAccessResultAccessResultPropertyAccessErrorParse(readBuffer, objectTypeArgument, propertyIdentifierArgument, propertyArrayIndexArgument)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetPropertyAccessResultAccessResult.")
 	}
 	_child = _childTemp.(BACnetPropertyAccessResultAccessResultChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go
index e38c3710c..d48c07e3f 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetPropertyStates.go
@@ -279,11 +279,10 @@ func BACnetPropertyStatesParse(readBuffer utils.ReadBuffer) (BACnetPropertyState
 	case true: // BACnetPropertyStateActionUnknown
 		_childTemp, typeSwitchError = BACnetPropertyStateActionUnknownParse(readBuffer, peekedTagNumber)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetPropertyStates.")
 	}
 	_child = _childTemp.(BACnetPropertyStatesChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go
index f855f36d4..84c6811f4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetRecipient.go
@@ -165,11 +165,10 @@ func BACnetRecipientParse(readBuffer utils.ReadBuffer) (BACnetRecipient, error)
 	case peekedTagNumber == uint8(1): // BACnetRecipientAddress
 		_childTemp, typeSwitchError = BACnetRecipientAddressParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetRecipient.")
 	}
 	_child = _childTemp.(BACnetRecipientChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go
index 28ebad55e..6e3d1b254 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetScale.go
@@ -165,11 +165,10 @@ func BACnetScaleParse(readBuffer utils.ReadBuffer) (BACnetScale, error) {
 	case peekedTagNumber == uint8(1): // BACnetScaleIntegerScale
 		_childTemp, typeSwitchError = BACnetScaleIntegerScaleParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetScale.")
 	}
 	_child = _childTemp.(BACnetScaleChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go
index 2a43b4d9a..8fee3d633 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAck.go
@@ -188,11 +188,10 @@ func BACnetServiceAckParse(readBuffer utils.ReadBuffer, serviceAckLength uint16)
 	case serviceChoice == BACnetConfirmedServiceChoice_READ_PROPERTY_CONDITIONAL: // BACnetServiceAckReadPropertyConditional
 		_childTemp, typeSwitchError = BACnetServiceAckReadPropertyConditionalParse(readBuffer, serviceAckLength, serviceAckPayloadLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [serviceChoice=%v]", serviceChoice)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetServiceAck.")
 	}
 	_child = _childTemp.(BACnetServiceAckChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go
index 1d86612f8..39de99599 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetServiceAckAtomicReadFileStreamOrRecord.go
@@ -198,11 +198,10 @@ func BACnetServiceAckAtomicReadFileStreamOrRecordParse(readBuffer utils.ReadBuff
 	case peekedTagNumber == 0x1: // BACnetServiceAckAtomicReadFileRecord
 		_childTemp, typeSwitchError = BACnetServiceAckAtomicReadFileRecordParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetServiceAckAtomicReadFileStreamOrRecord.")
 	}
 	_child = _childTemp.(BACnetServiceAckAtomicReadFileStreamOrRecordChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go
index d448d9fe6..f2705ccb5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetShedLevel.go
@@ -167,11 +167,10 @@ func BACnetShedLevelParse(readBuffer utils.ReadBuffer) (BACnetShedLevel, error)
 	case peekedTagNumber == uint8(2): // BACnetShedLevelAmount
 		_childTemp, typeSwitchError = BACnetShedLevelAmountParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetShedLevel.")
 	}
 	_child = _childTemp.(BACnetShedLevelChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go
index 6de637c27..699587ea5 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetSpecialEventPeriod.go
@@ -170,11 +170,10 @@ func BACnetSpecialEventPeriodParse(readBuffer utils.ReadBuffer) (BACnetSpecialEv
 	case peekedTagNumber == uint8(1): // BACnetSpecialEventPeriodCalendarReference
 		_childTemp, typeSwitchError = BACnetSpecialEventPeriodCalendarReferenceParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetSpecialEventPeriod.")
 	}
 	_child = _childTemp.(BACnetSpecialEventPeriodChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go
index 6d9179dc9..39db06ef4 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimeStamp.go
@@ -167,11 +167,10 @@ func BACnetTimeStampParse(readBuffer utils.ReadBuffer) (BACnetTimeStamp, error)
 	case peekedTagNumber == uint8(2): // BACnetTimeStampDateTime
 		_childTemp, typeSwitchError = BACnetTimeStampDateTimeParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetTimeStamp.")
 	}
 	_child = _childTemp.(BACnetTimeStampChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go
index 5581a71e3..086d89d96 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetTimerStateChangeValue.go
@@ -216,11 +216,10 @@ func BACnetTimerStateChangeValueParse(readBuffer utils.ReadBuffer, objectTypeArg
 	case peekedTagNumber == uint8(3) && peekedIsContextTag == bool(true): // BACnetTimerStateChangeValueLightingCommand
 		_childTemp, typeSwitchError = BACnetTimerStateChangeValueLightingCommandParse(readBuffer, objectTypeArgument)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v, peekedIsContextTag=%v]", peekedTagNumber, peekedIsContextTag)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetTimerStateChangeValue.")
 	}
 	_child = _childTemp.(BACnetTimerStateChangeValueChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go
index b13bc53c0..e3833a9ee 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequest.go
@@ -161,11 +161,10 @@ func BACnetUnconfirmedServiceRequestParse(readBuffer utils.ReadBuffer, serviceRe
 	case true: // BACnetUnconfirmedServiceRequestUnknown
 		_childTemp, typeSwitchError = BACnetUnconfirmedServiceRequestUnknownParse(readBuffer, serviceRequestLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [serviceChoice=%v]", serviceChoice)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetUnconfirmedServiceRequest.")
 	}
 	_child = _childTemp.(BACnetUnconfirmedServiceRequestChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go
index f62a367d5..3f0816d4b 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetUnconfirmedServiceRequestWhoHasObject.go
@@ -165,11 +165,10 @@ func BACnetUnconfirmedServiceRequestWhoHasObjectParse(readBuffer utils.ReadBuffe
 	case peekedTagNumber == uint8(3): // BACnetUnconfirmedServiceRequestWhoHasObjectName
 		_childTemp, typeSwitchError = BACnetUnconfirmedServiceRequestWhoHasObjectNameParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetUnconfirmedServiceRequestWhoHasObject.")
 	}
 	_child = _childTemp.(BACnetUnconfirmedServiceRequestWhoHasObjectChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go b/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go
index adf78600c..605b44ae2 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BACnetValueSource.go
@@ -167,11 +167,10 @@ func BACnetValueSourceParse(readBuffer utils.ReadBuffer) (BACnetValueSource, err
 	case peekedTagNumber == uint8(2): // BACnetValueSourceAddress
 		_childTemp, typeSwitchError = BACnetValueSourceAddressParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedTagNumber=%v]", peekedTagNumber)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BACnetValueSource.")
 	}
 	_child = _childTemp.(BACnetValueSourceChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/BVLC.go b/plc4go/protocols/bacnetip/readwrite/model/BVLC.go
index 849fe0087..c301ed34d 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/BVLC.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/BVLC.go
@@ -213,11 +213,10 @@ func BVLCParse(readBuffer utils.ReadBuffer) (BVLC, error) {
 	case bvlcFunction == 0x0C: // BVLCSecureBVLL
 		_childTemp, typeSwitchError = BVLCSecureBVLLParse(readBuffer, bvlcPayloadLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [bvlcFunction=%v]", bvlcFunction)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of BVLC.")
 	}
 	_child = _childTemp.(BVLCChildSerializeRequirement)
 
diff --git a/plc4go/protocols/bacnetip/readwrite/model/NLM.go b/plc4go/protocols/bacnetip/readwrite/model/NLM.go
index c43c49474..d0863d600 100644
--- a/plc4go/protocols/bacnetip/readwrite/model/NLM.go
+++ b/plc4go/protocols/bacnetip/readwrite/model/NLM.go
@@ -186,11 +186,10 @@ func NLMParse(readBuffer utils.ReadBuffer, apduLength uint16) (NLM, error) {
 	case messageType == 0x09: // NLMDisconnectConnectionToNetwork
 		_childTemp, typeSwitchError = NLMDisconnectConnectionToNetworkParse(readBuffer, apduLength, messageType)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [messageType=%v]", messageType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of NLM.")
 	}
 	_child = _childTemp.(NLMChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CALData.go b/plc4go/protocols/cbus/readwrite/model/CALData.go
index 27a808934..85c055c95 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALData.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALData.go
@@ -185,11 +185,10 @@ func CALDataParse(readBuffer utils.ReadBuffer) (CALData, error) {
 	case commandType == CALCommandType_STATUS_EXTENDED: // CALDataReplyStatusExtended
 		_childTemp, typeSwitchError = CALDataReplyStatusExtendedParse(readBuffer, commandTypeContainer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandType=%v]", commandType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CALData.")
 	}
 	_child = _childTemp.(CALDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CALReply.go b/plc4go/protocols/cbus/readwrite/model/CALReply.go
index b5d617fab..e8c0e3209 100644
--- a/plc4go/protocols/cbus/readwrite/model/CALReply.go
+++ b/plc4go/protocols/cbus/readwrite/model/CALReply.go
@@ -164,11 +164,10 @@ func CALReplyParse(readBuffer utils.ReadBuffer) (CALReply, error) {
 	case true: // CALReplyShort
 		_childTemp, typeSwitchError = CALReplyShortParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [calType=%v]", calType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CALReply.")
 	}
 	_child = _childTemp.(CALReplyChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
index ef87910ea..855a2a705 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusCommand.go
@@ -222,11 +222,10 @@ func CBusCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBusCommand, err
 	case destinationAddressType == DestinationAddressType_PointToPoint: // CBusCommandPointToPoint
 		_childTemp, typeSwitchError = CBusCommandPointToPointParse(readBuffer, srchk)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.Errorf("Unmapped type for destinationAddressType:%v isDeviceManagement:%v", destinationAddressType, isDeviceManagement)
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [destinationAddressType=%v, isDeviceManagement=%v]", destinationAddressType, isDeviceManagement)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CBusCommand.")
 	}
 	_child = _childTemp.(CBusCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusMessage.go b/plc4go/protocols/cbus/readwrite/model/CBusMessage.go
index c5c066c71..fb436988b 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusMessage.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusMessage.go
@@ -124,11 +124,10 @@ func CBusMessageParse(readBuffer utils.ReadBuffer, response bool, srchk bool) (C
 	case response == bool(true): // CBusMessageToClient
 		_childTemp, typeSwitchError = CBusMessageToClientParse(readBuffer, response, srchk)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [response=%v]", response)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CBusMessage.")
 	}
 	_child = _childTemp.(CBusMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
index 306d5a77f..25ca880da 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToMultiPointCommand.go
@@ -157,11 +157,10 @@ func CBusPointToMultiPointCommandParse(readBuffer utils.ReadBuffer, srchk bool)
 	case true: // CBusPointToMultiPointCommandNormal
 		_childTemp, typeSwitchError = CBusPointToMultiPointCommandNormalParse(readBuffer, srchk)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedApplication=%v]", peekedApplication)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CBusPointToMultiPointCommand.")
 	}
 	_child = _childTemp.(CBusPointToMultiPointCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
index e89147300..9ceebf661 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointCommand.go
@@ -226,11 +226,10 @@ func CBusPointToPointCommandParse(readBuffer utils.ReadBuffer, srchk bool) (CBus
 	case isDirect == bool(false): // CBusPointToPointCommandIndirect
 		_childTemp, typeSwitchError = CBusPointToPointCommandIndirectParse(readBuffer, srchk)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [isDirect=%v]", isDirect)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CBusPointToPointCommand.")
 	}
 	_child = _childTemp.(CBusPointToPointCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go
index 17f3884a7..e624980b3 100644
--- a/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/CBusPointToPointToMultipointCommand.go
@@ -203,11 +203,10 @@ func CBusPointToPointToMultipointCommandParse(readBuffer utils.ReadBuffer, srchk
 	case true: // CBusCommandPointToPointToMultiPointNormal
 		_childTemp, typeSwitchError = CBusCommandPointToPointToMultiPointNormalParse(readBuffer, srchk)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedApplication=%v]", peekedApplication)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CBusPointToPointToMultipointCommand.")
 	}
 	_child = _childTemp.(CBusPointToPointToMultipointCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/Confirmation.go b/plc4go/protocols/cbus/readwrite/model/Confirmation.go
index 3d0a84d4b..6eeaff51f 100644
--- a/plc4go/protocols/cbus/readwrite/model/Confirmation.go
+++ b/plc4go/protocols/cbus/readwrite/model/Confirmation.go
@@ -168,11 +168,10 @@ func ConfirmationParse(readBuffer utils.ReadBuffer) (Confirmation, error) {
 	case confirmationType == 0x27: // NotTransmittedTooLong
 		_childTemp, typeSwitchError = NotTransmittedTooLongParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [confirmationType=%v]", confirmationType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of Confirmation.")
 	}
 	_child = _childTemp.(ConfirmationChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go b/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go
index ac6f99202..af033aa97 100644
--- a/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go
+++ b/plc4go/protocols/cbus/readwrite/model/IdentifyReplyCommand.go
@@ -153,11 +153,10 @@ func IdentifyReplyCommandParse(readBuffer utils.ReadBuffer, attribute Attribute)
 	case attribute == Attribute_DSIStatus: // IdentifyReplyCommandDSIStatus
 		_childTemp, typeSwitchError = IdentifyReplyCommandDSIStatusParse(readBuffer, attribute)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [attribute=%v]", attribute)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of IdentifyReplyCommand.")
 	}
 	_child = _childTemp.(IdentifyReplyCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go b/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
index 26ea23668..8105ceb9f 100644
--- a/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
+++ b/plc4go/protocols/cbus/readwrite/model/MonitoredSAL.go
@@ -168,11 +168,10 @@ func MonitoredSALParse(readBuffer utils.ReadBuffer) (MonitoredSAL, error) {
 	case true: // MonitoredSALShortFormBasicMode
 		_childTemp, typeSwitchError = MonitoredSALShortFormBasicModeParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [salType=%v]", salType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of MonitoredSAL.")
 	}
 	_child = _childTemp.(MonitoredSALChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/Reply.go b/plc4go/protocols/cbus/readwrite/model/Reply.go
index b47cba8ea..1c93acef5 100644
--- a/plc4go/protocols/cbus/readwrite/model/Reply.go
+++ b/plc4go/protocols/cbus/readwrite/model/Reply.go
@@ -174,11 +174,10 @@ func ReplyParse(readBuffer utils.ReadBuffer) (Reply, error) {
 	case peekedByte == 0x21: // ExclamationMarkReply
 		_childTemp, typeSwitchError = ExclamationMarkReplyParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedByte=%v, isAlpha=%v]", peekedByte, isAlpha)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of Reply.")
 	}
 	_child = _childTemp.(ReplyChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/Request.go b/plc4go/protocols/cbus/readwrite/model/Request.go
index 8cdc5bcb3..84767415d 100644
--- a/plc4go/protocols/cbus/readwrite/model/Request.go
+++ b/plc4go/protocols/cbus/readwrite/model/Request.go
@@ -151,11 +151,10 @@ func RequestParse(readBuffer utils.ReadBuffer, srchk bool) (Request, error) {
 	case peekedByte == 0x5C: // RequestCommand
 		_childTemp, typeSwitchError = RequestCommandParse(readBuffer, srchk)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [peekedByte=%v]", peekedByte)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of Request.")
 	}
 	_child = _childTemp.(RequestChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/SALData.go b/plc4go/protocols/cbus/readwrite/model/SALData.go
index 6dc44130e..6f33bb864 100644
--- a/plc4go/protocols/cbus/readwrite/model/SALData.go
+++ b/plc4go/protocols/cbus/readwrite/model/SALData.go
@@ -177,11 +177,10 @@ func SALDataParse(readBuffer utils.ReadBuffer) (SALData, error) {
 	case commandType == SALCommandType_TERMINATE_RAMP: // SALDataTerminateRamp
 		_childTemp, typeSwitchError = SALDataTerminateRampParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandType=%v]", commandType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of SALData.")
 	}
 	_child = _childTemp.(SALDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/cbus/readwrite/model/StatusRequest.go b/plc4go/protocols/cbus/readwrite/model/StatusRequest.go
index 0dec06978..930ed3449 100644
--- a/plc4go/protocols/cbus/readwrite/model/StatusRequest.go
+++ b/plc4go/protocols/cbus/readwrite/model/StatusRequest.go
@@ -144,11 +144,10 @@ func StatusRequestParse(readBuffer utils.ReadBuffer) (StatusRequest, error) {
 	case statusType == 0x73: // StatusRequestLevel
 		_childTemp, typeSwitchError = StatusRequestLevelParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [statusType=%v]", statusType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of StatusRequest.")
 	}
 	_child = _childTemp.(StatusRequestChildSerializeRequirement)
 
diff --git a/plc4go/protocols/df1/readwrite/model/DF1Command.go b/plc4go/protocols/df1/readwrite/model/DF1Command.go
index 701a194a7..de2deedb7 100644
--- a/plc4go/protocols/df1/readwrite/model/DF1Command.go
+++ b/plc4go/protocols/df1/readwrite/model/DF1Command.go
@@ -173,11 +173,10 @@ func DF1CommandParse(readBuffer utils.ReadBuffer) (DF1Command, error) {
 	case commandCode == 0x41: // DF1UnprotectedReadResponse
 		_childTemp, typeSwitchError = DF1UnprotectedReadResponseParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandCode=%v]", commandCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1Command.")
 	}
 	_child = _childTemp.(DF1CommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/df1/readwrite/model/DF1Symbol.go b/plc4go/protocols/df1/readwrite/model/DF1Symbol.go
index c58fb5c71..2756140e9 100644
--- a/plc4go/protocols/df1/readwrite/model/DF1Symbol.go
+++ b/plc4go/protocols/df1/readwrite/model/DF1Symbol.go
@@ -161,11 +161,10 @@ func DF1SymbolParse(readBuffer utils.ReadBuffer) (DF1Symbol, error) {
 	case symbolType == 0x15: // DF1SymbolMessageFrameNAK
 		_childTemp, typeSwitchError = DF1SymbolMessageFrameNAKParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [symbolType=%v]", symbolType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of DF1Symbol.")
 	}
 	_child = _childTemp.(DF1SymbolChildSerializeRequirement)
 
diff --git a/plc4go/protocols/eip/readwrite/model/CipService.go b/plc4go/protocols/eip/readwrite/model/CipService.go
index 7da967dd4..f5d8b10a6 100644
--- a/plc4go/protocols/eip/readwrite/model/CipService.go
+++ b/plc4go/protocols/eip/readwrite/model/CipService.go
@@ -142,11 +142,10 @@ func CipServiceParse(readBuffer utils.ReadBuffer, serviceLen uint16) (CipService
 	case service == 0x52: // CipUnconnectedRequest
 		_childTemp, typeSwitchError = CipUnconnectedRequestParse(readBuffer, serviceLen)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [service=%v]", service)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CipService.")
 	}
 	_child = _childTemp.(CipServiceChildSerializeRequirement)
 
diff --git a/plc4go/protocols/eip/readwrite/model/EipPacket.go b/plc4go/protocols/eip/readwrite/model/EipPacket.go
index d3a48a84e..f35681d41 100644
--- a/plc4go/protocols/eip/readwrite/model/EipPacket.go
+++ b/plc4go/protocols/eip/readwrite/model/EipPacket.go
@@ -237,11 +237,10 @@ func EipPacketParse(readBuffer utils.ReadBuffer) (EipPacket, error) {
 	case command == 0x006F: // CipRRData
 		_childTemp, typeSwitchError = CipRRDataParse(readBuffer, packetLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [command=%v]", command)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of EipPacket.")
 	}
 	_child = _childTemp.(EipPacketChildSerializeRequirement)
 
diff --git a/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go b/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go
index ef55f37f9..2beefce20 100644
--- a/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go
+++ b/plc4go/protocols/firmata/readwrite/model/FirmataCommand.go
@@ -138,11 +138,10 @@ func FirmataCommandParse(readBuffer utils.ReadBuffer, response bool) (FirmataCom
 	case commandCode == 0xF: // FirmataCommandSystemReset
 		_childTemp, typeSwitchError = FirmataCommandSystemResetParse(readBuffer, response)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandCode=%v]", commandCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of FirmataCommand.")
 	}
 	_child = _childTemp.(FirmataCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go b/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go
index 5ff958249..347675fec 100644
--- a/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go
+++ b/plc4go/protocols/firmata/readwrite/model/FirmataMessage.go
@@ -138,11 +138,10 @@ func FirmataMessageParse(readBuffer utils.ReadBuffer, response bool) (FirmataMes
 	case messageType == 0xF: // FirmataMessageCommand
 		_childTemp, typeSwitchError = FirmataMessageCommandParse(readBuffer, response)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [messageType=%v]", messageType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of FirmataMessage.")
 	}
 	_child = _childTemp.(FirmataMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/firmata/readwrite/model/SysexCommand.go b/plc4go/protocols/firmata/readwrite/model/SysexCommand.go
index 5b5f91833..32da3a84e 100644
--- a/plc4go/protocols/firmata/readwrite/model/SysexCommand.go
+++ b/plc4go/protocols/firmata/readwrite/model/SysexCommand.go
@@ -158,11 +158,10 @@ func SysexCommandParse(readBuffer utils.ReadBuffer, response bool) (SysexCommand
 	case commandType == 0x7F: // SysexCommandSysexRealtime
 		_childTemp, typeSwitchError = SysexCommandSysexRealtimeParse(readBuffer, response)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [commandType=%v, response=%v]", commandType, response)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of SysexCommand.")
 	}
 	_child = _childTemp.(SysexCommandChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/Apdu.go b/plc4go/protocols/knxnetip/readwrite/model/Apdu.go
index 681676917..92f919291 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/Apdu.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/Apdu.go
@@ -176,11 +176,10 @@ func ApduParse(readBuffer utils.ReadBuffer, dataLength uint8) (Apdu, error) {
 	case control == uint8(0): // ApduDataContainer
 		_childTemp, typeSwitchError = ApduDataContainerParse(readBuffer, dataLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [control=%v]", control)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of Apdu.")
 	}
 	_child = _childTemp.(ApduChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go b/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go
index aac9cfbc0..109fb8381 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ApduControl.go
@@ -133,11 +133,10 @@ func ApduControlParse(readBuffer utils.ReadBuffer) (ApduControl, error) {
 	case controlType == 0x3: // ApduControlNack
 		_childTemp, typeSwitchError = ApduControlNackParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [controlType=%v]", controlType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ApduControl.")
 	}
 	_child = _childTemp.(ApduControlChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ApduData.go b/plc4go/protocols/knxnetip/readwrite/model/ApduData.go
index e824c6a33..6ac45d8ce 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ApduData.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ApduData.go
@@ -160,11 +160,10 @@ func ApduDataParse(readBuffer utils.ReadBuffer, dataLength uint8) (ApduData, err
 	case apciType == 0xF: // ApduDataOther
 		_childTemp, typeSwitchError = ApduDataOtherParse(readBuffer, dataLength)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [apciType=%v]", apciType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ApduData.")
 	}
 	_child = _childTemp.(ApduDataChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go b/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go
index 760328a12..9bb8f4355 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ApduDataExt.go
@@ -210,11 +210,10 @@ func ApduDataExtParse(readBuffer utils.ReadBuffer, length uint8) (ApduDataExt, e
 	case extApciType == 0x30: // ApduDataExtFileStreamInfoReport
 		_childTemp, typeSwitchError = ApduDataExtFileStreamInfoReportParse(readBuffer, length)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [extApciType=%v]", extApciType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ApduDataExt.")
 	}
 	_child = _childTemp.(ApduDataExtChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/CEMI.go b/plc4go/protocols/knxnetip/readwrite/model/CEMI.go
index 3f4476c42..fc6db6b9c 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/CEMI.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/CEMI.go
@@ -174,11 +174,10 @@ func CEMIParse(readBuffer utils.ReadBuffer, size uint16) (CEMI, error) {
 	case messageCode == 0xF0: // MResetInd
 		_childTemp, typeSwitchError = MResetIndParse(readBuffer, size)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [messageCode=%v]", messageCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CEMI.")
 	}
 	_child = _childTemp.(CEMIChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go b/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go
index a6015f9ec..b50f59ad6 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/CEMIAdditionalInformation.go
@@ -129,11 +129,10 @@ func CEMIAdditionalInformationParse(readBuffer utils.ReadBuffer) (CEMIAdditional
 	case additionalInformationType == 0x04: // CEMIAdditionalInformationRelativeTimestamp
 		_childTemp, typeSwitchError = CEMIAdditionalInformationRelativeTimestampParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [additionalInformationType=%v]", additionalInformationType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of CEMIAdditionalInformation.")
 	}
 	_child = _childTemp.(CEMIAdditionalInformationChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go b/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go
index 7adda1bee..bca2e5fb5 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ComObjectTable.go
@@ -123,11 +123,10 @@ func ComObjectTableParse(readBuffer utils.ReadBuffer, firmwareType FirmwareType)
 	case firmwareType == FirmwareType_SYSTEM_300: // ComObjectTableRealisationType6
 		_childTemp, typeSwitchError = ComObjectTableRealisationType6Parse(readBuffer, firmwareType)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [firmwareType=%v]", firmwareType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ComObjectTable.")
 	}
 	_child = _childTemp.(ComObjectTableChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go b/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go
index e4065fca6..87dffea4e 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ConnectionRequestInformation.go
@@ -139,11 +139,10 @@ func ConnectionRequestInformationParse(readBuffer utils.ReadBuffer) (ConnectionR
 	case connectionType == 0x04: // ConnectionRequestInformationTunnelConnection
 		_childTemp, typeSwitchError = ConnectionRequestInformationTunnelConnectionParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [connectionType=%v]", connectionType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ConnectionRequestInformation.")
 	}
 	_child = _childTemp.(ConnectionRequestInformationChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go b/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go
index c5bed8486..e1d74a022 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ConnectionResponseDataBlock.go
@@ -139,11 +139,10 @@ func ConnectionResponseDataBlockParse(readBuffer utils.ReadBuffer) (ConnectionRe
 	case connectionType == 0x04: // ConnectionResponseDataBlockTunnelConnection
 		_childTemp, typeSwitchError = ConnectionResponseDataBlockTunnelConnectionParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [connectionType=%v]", connectionType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ConnectionResponseDataBlock.")
 	}
 	_child = _childTemp.(ConnectionResponseDataBlockChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go b/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go
index 77b6862a5..4eaff2c9c 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/KnxGroupAddress.go
@@ -123,11 +123,10 @@ func KnxGroupAddressParse(readBuffer utils.ReadBuffer, numLevels uint8) (KnxGrou
 	case numLevels == uint8(3): // KnxGroupAddress3Level
 		_childTemp, typeSwitchError = KnxGroupAddress3LevelParse(readBuffer, numLevels)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [numLevels=%v]", numLevels)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of KnxGroupAddress.")
 	}
 	_child = _childTemp.(KnxGroupAddressChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go b/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go
index 96e9ce7ed..18f0b4375 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/KnxNetIpMessage.go
@@ -207,11 +207,10 @@ func KnxNetIpMessageParse(readBuffer utils.ReadBuffer) (KnxNetIpMessage, error)
 	case msgType == 0x0530: // RoutingIndication
 		_childTemp, typeSwitchError = RoutingIndicationParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [msgType=%v]", msgType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of KnxNetIpMessage.")
 	}
 	_child = _childTemp.(KnxNetIpMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go b/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go
index 0c052a31c..fcb43dbd7 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/LDataFrame.go
@@ -243,11 +243,10 @@ func LDataFrameParse(readBuffer utils.ReadBuffer) (LDataFrame, error) {
 	case notAckFrame == bool(false): // LDataFrameACK
 		_childTemp, typeSwitchError = LDataFrameACKParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [notAckFrame=%v, polling=%v]", notAckFrame, polling)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of LDataFrame.")
 	}
 	_child = _childTemp.(LDataFrameChildSerializeRequirement)
 
diff --git a/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go b/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go
index d2b2b0a6f..3b6833335 100644
--- a/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go
+++ b/plc4go/protocols/knxnetip/readwrite/model/ServiceId.go
@@ -139,11 +139,10 @@ func ServiceIdParse(readBuffer utils.ReadBuffer) (ServiceId, error) {
 	case serviceType == 0x08: // KnxNetObjectServer
 		_childTemp, typeSwitchError = KnxNetObjectServerParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [serviceType=%v]", serviceType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ServiceId.")
 	}
 	_child = _childTemp.(ServiceIdChildSerializeRequirement)
 
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusADU.go b/plc4go/protocols/modbus/readwrite/model/ModbusADU.go
index c496e26bc..143d37d00 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusADU.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusADU.go
@@ -126,11 +126,10 @@ func ModbusADUParse(readBuffer utils.ReadBuffer, driverType DriverType, response
 	case driverType == DriverType_MODBUS_ASCII: // ModbusAsciiADU
 		_childTemp, typeSwitchError = ModbusAsciiADUParse(readBuffer, driverType, response)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [driverType=%v]", driverType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ModbusADU.")
 	}
 	_child = _childTemp.(ModbusADUChildSerializeRequirement)
 
diff --git a/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go b/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go
index b884bb338..897877a60 100644
--- a/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go
+++ b/plc4go/protocols/modbus/readwrite/model/ModbusPDU.go
@@ -217,11 +217,10 @@ func ModbusPDUParse(readBuffer utils.ReadBuffer, response bool) (ModbusPDU, erro
 	case errorFlag == bool(false) && functionFlag == 0x2B && response == bool(true): // ModbusPDUReadDeviceIdentificationResponse
 		_childTemp, typeSwitchError = ModbusPDUReadDeviceIdentificationResponseParse(readBuffer, response)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [errorFlag=%v, functionFlag=%v, response=%v]", errorFlag, functionFlag, response)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of ModbusPDU.")
 	}
 	_child = _childTemp.(ModbusPDUChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/COTPPacket.go b/plc4go/protocols/s7/readwrite/model/COTPPacket.go
index f7e90762d..970e3f036 100644
--- a/plc4go/protocols/s7/readwrite/model/COTPPacket.go
+++ b/plc4go/protocols/s7/readwrite/model/COTPPacket.go
@@ -190,11 +190,10 @@ func COTPPacketParse(readBuffer utils.ReadBuffer, cotpLen uint16) (COTPPacket, e
 	case tpduCode == 0x70: // COTPPacketTpduError
 		_childTemp, typeSwitchError = COTPPacketTpduErrorParse(readBuffer, cotpLen)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [tpduCode=%v]", tpduCode)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of COTPPacket.")
 	}
 	_child = _childTemp.(COTPPacketChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/COTPParameter.go b/plc4go/protocols/s7/readwrite/model/COTPParameter.go
index f932a819b..0cee1e6d4 100644
--- a/plc4go/protocols/s7/readwrite/model/COTPParameter.go
+++ b/plc4go/protocols/s7/readwrite/model/COTPParameter.go
@@ -148,11 +148,10 @@ func COTPParameterParse(readBuffer utils.ReadBuffer, rest uint8) (COTPParameter,
 	case parameterType == 0xE0: // COTPParameterDisconnectAdditionalInformation
 		_childTemp, typeSwitchError = COTPParameterDisconnectAdditionalInformationParse(readBuffer, rest)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [parameterType=%v]", parameterType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of COTPParameter.")
 	}
 	_child = _childTemp.(COTPParameterChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7Address.go b/plc4go/protocols/s7/readwrite/model/S7Address.go
index f1f710278..5c97bb0b3 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Address.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Address.go
@@ -127,11 +127,10 @@ func S7AddressParse(readBuffer utils.ReadBuffer) (S7Address, error) {
 	case addressType == 0x10: // S7AddressAny
 		_childTemp, typeSwitchError = S7AddressAnyParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [addressType=%v]", addressType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7Address.")
 	}
 	_child = _childTemp.(S7AddressChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go b/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go
index 95c931cca..a4889f619 100644
--- a/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go
+++ b/plc4go/protocols/s7/readwrite/model/S7DataAlarmMessage.go
@@ -168,11 +168,10 @@ func S7DataAlarmMessageParse(readBuffer utils.ReadBuffer, cpuFunctionType uint8)
 	case cpuFunctionType == 0x08: // S7MessageObjectResponse
 		_childTemp, typeSwitchError = S7MessageObjectResponseParse(readBuffer, cpuFunctionType)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [cpuFunctionType=%v]", cpuFunctionType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7DataAlarmMessage.")
 	}
 	_child = _childTemp.(S7DataAlarmMessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7Message.go b/plc4go/protocols/s7/readwrite/model/S7Message.go
index 61372779d..fb482ae84 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Message.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Message.go
@@ -252,11 +252,10 @@ func S7MessageParse(readBuffer utils.ReadBuffer) (S7Message, error) {
 	case messageType == 0x07: // S7MessageUserData
 		_childTemp, typeSwitchError = S7MessageUserDataParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [messageType=%v]", messageType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7Message.")
 	}
 	_child = _childTemp.(S7MessageChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7Parameter.go b/plc4go/protocols/s7/readwrite/model/S7Parameter.go
index 1efd74502..d4f5c37e3 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Parameter.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Parameter.go
@@ -142,11 +142,10 @@ func S7ParameterParse(readBuffer utils.ReadBuffer, messageType uint8) (S7Paramet
 	case parameterType == 0x01 && messageType == 0x07: // S7ParameterModeTransition
 		_childTemp, typeSwitchError = S7ParameterModeTransitionParse(readBuffer, messageType)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [parameterType=%v, messageType=%v]", parameterType, messageType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7Parameter.")
 	}
 	_child = _childTemp.(S7ParameterChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go b/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go
index 595743359..5a5323bdf 100644
--- a/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7ParameterUserDataItem.go
@@ -127,11 +127,10 @@ func S7ParameterUserDataItemParse(readBuffer utils.ReadBuffer) (S7ParameterUserD
 	case itemType == 0x12: // S7ParameterUserDataItemCPUFunctions
 		_childTemp, typeSwitchError = S7ParameterUserDataItemCPUFunctionsParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [itemType=%v]", itemType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7ParameterUserDataItem.")
 	}
 	_child = _childTemp.(S7ParameterUserDataItemChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7Payload.go b/plc4go/protocols/s7/readwrite/model/S7Payload.go
index 6807f0dbe..2a46d648e 100644
--- a/plc4go/protocols/s7/readwrite/model/S7Payload.go
+++ b/plc4go/protocols/s7/readwrite/model/S7Payload.go
@@ -131,11 +131,10 @@ func S7PayloadParse(readBuffer utils.ReadBuffer, messageType uint8, parameter S7
 	case CastS7Parameter(parameter).GetParameterType() == 0x00 && messageType == 0x07: // S7PayloadUserData
 		_childTemp, typeSwitchError = S7PayloadUserDataParse(readBuffer, messageType, parameter)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [parameterparameterType=%v, messageType=%v]", CastS7Parameter(parameter).GetParameterType(), messageType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7Payload.")
 	}
 	_child = _childTemp.(S7PayloadChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go b/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go
index 28c1d1345..3ba258fee 100644
--- a/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7PayloadUserDataItem.go
@@ -225,11 +225,10 @@ func S7PayloadUserDataItemParse(readBuffer utils.ReadBuffer, cpuFunctionType uin
 	case cpuFunctionType == 0x08 && cpuSubfunction == 0x13: // S7PayloadUserDataItemCpuFunctionAlarmQueryResponse
 		_childTemp, typeSwitchError = S7PayloadUserDataItemCpuFunctionAlarmQueryResponseParse(readBuffer, cpuFunctionType, cpuSubfunction)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [cpuFunctionType=%v, cpuSubfunction=%v, dataLength=%v]", cpuFunctionType, cpuSubfunction, dataLength)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7PayloadUserDataItem.")
 	}
 	_child = _childTemp.(S7PayloadUserDataItemChildSerializeRequirement)
 
diff --git a/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go b/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go
index cb8ea5be3..017b7109b 100644
--- a/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go
+++ b/plc4go/protocols/s7/readwrite/model/S7VarRequestParameterItem.go
@@ -127,11 +127,10 @@ func S7VarRequestParameterItemParse(readBuffer utils.ReadBuffer) (S7VarRequestPa
 	case itemType == 0x12: // S7VarRequestParameterItemAddress
 		_childTemp, typeSwitchError = S7VarRequestParameterItemAddressParse(readBuffer)
 	default:
-		// TODO: return actual type
-		typeSwitchError = errors.New("Unmapped type")
+		typeSwitchError = errors.Errorf("Unmapped type for parameters [itemType=%v]", itemType)
 	}
 	if typeSwitchError != nil {
-		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch.")
+		return nil, errors.Wrap(typeSwitchError, "Error parsing sub-type for type-switch of S7VarRequestParameterItem.")
 	}
 	_child = _childTemp.(S7VarRequestParameterItemChildSerializeRequirement)