An error occurred while writing the changes to the device

Hello, We are working with AXC F 2152 HW 02 FW 2021.0.3 LTS (21.0.3.35554) [Updated from 2020.0.1 LTS (20.0.1.26832)] This PLC have connected this module: AXL SE DO16/1, AXL SE DI16/1, AXL SE SC-A, AXL SE AI4 U 0-10 and AXL F IF CAN 1H We are using PLCnext Engineer 2021.0.2 (Build 4.7.1183.0) We need use to use CAN communication in our project, and for this reason I have downloaded CANbus library from https://www.plcnextstore.com/563 Version 9 We just want execute this example CAN_9_EXA_AXL_CO.pcwex , but while sending this example to the PLCnext, we obtain this message in the log window of PLCNext Engineering „An error occurred while writing the changes to the device.“ We reset (Type 1) and then we updated the PLC FW in the hope that this could be resolved, but in vain. After the error; D led in modules are green blinking, and Controller show RUN led flashing green and FAIL on red. Using tail -f /opt/plcnext/logs/Output.log when we send the example, we obtain: 25.03.21 17:11:45.678 Arp.Device.Interface.Internal.DeviceStatus WARN - DeviceStatus: Ident "Status.Fan.Plugged" not found 25.03.21 17:20:46.500 Arp.Device.Interface.Internal.DeviceStatus WARN - DeviceStatus: Ident "Status.Interfaces.Ethernet.2.1.Link" not found 25.03.21 17:20:46.501 Arp.Device.Interface.Internal.DeviceStatus WARN - DeviceStatus: Ident "Status.Interfaces.Ethernet.2.1.Duplex" not found 25.03.21 17:20:46.502 Arp.Device.Interface.Internal.DeviceStatus WARN - DeviceStatus: Ident "Status.Interfaces.Ethernet.2.1.Baudrate" not found 25.03.21 17:25:42.488 Arp.System.Um.Internal.SessionManagement INFO - failed with GetSessionByToken Session with ID: "F4868DDD" not exist 25.03.21 17:25:42.497 Arp.System.Um.Internal.SessionManagement INFO - failed with GetSessionByToken Session with ID: "F4868DDD" not exist 25.03.21 17:26:17.798 Arp.Services.ProfiCloud.Internal.ProficloudTSDAdapter INFO - Could not read GDS metrics file /opt/plcnext/projects/ProfiCloud/metrics.json. 25.03.21 17:26:17.799 Arp.Services.Ehmi.EhmiComponent INFO - 2647544512 EhmiComponent: OnPlcLoading 25.03.21 17:26:18.751 Arp.Plc.Esm.Internal.EsmDomain INFO - ESM configuration successfully loaded. 25.03.21 17:26:18.756 Arp.Plc.Esm.Internal.TaskController INFO - Configuring Sleep class with a sync point interval of 500us, an watchdog interval of 500us and an axio interval of 500us 25.03.21 17:26:18.877 Arp.Io.Axioline.Internal.TicConfig.Tic2ConfigSvc INFO - AXIO Master with 5 devices. 25.03.21 17:26:18.880 Arp.Io.Axioline.AxiolineComponent INFO - AxiolineComponent: SetupPlc(False): Activate /var/tmp/AxlC.config.svc 25.03.21 17:26:19.214 Arp.Io.Axioline.Internal.AxioDrvAcc WARN - CheckConfirmation(): PDI conf with neg. result: cmd 8042, slot 0002, index ff8f,errCode ff8f, addInfo 0607. 25.03.21 17:26:19.506 Arp.Io.Axioline.Internal.AxioDataExchange INFO - Axioline use sleep mode 25.03.21 17:26:19.507 Arp.Io.EthernetIP.EthernetIPComponent INFO - LoadPlc, isChanging=false 25.03.21 17:26:19.522 Arp.Io.EthernetIP.EthernetIPComponent INFO - SetupPlc, isChanging=false, startKind=Warm 25.03.21 17:26:19.525 Arp.Io.EthernetIP.EthernetIPComponent INFO - 2929701568 OnPlcLoaded PlcLoaded=false 25.03.21 17:26:19.528 Arp.Io.EthernetIP.EthernetIPComponent INFO - 2929701568 ESDK 0xffff, AddAssemblies, toInstanceID=110, toSize=256, otInstanceID=100, otSize=256 25.03.21 17:26:19.712 Arp.Plc.Gds.Internal.GdsDomain INFO - GDS configuration successfully loaded. 25.03.21 17:26:19.886 Arp.Plc.Domain.Internal.PlcManager ERROR - Exception occurs while setting up plc component 'Arp.Plc.Gds': Exception of type 'Arp::System::Commons::KeyNotFoundException' was thrown GetBufferIDByFullPortName: Could not find portName 'Arp.Io.AxlC/0.IN64byte' in fbIoPortsFramesMap at Arp::Plc::Gds::Internal::Connections::GdsConnectionInfosBuilder::CreateIoDataConnectionInfo(std::shared_ptr const&, Arp::Plc::Commons::Io::IIoProvider* const&, Arp::Plc::Gds::Internal::GdsMetaManager&, Arp::Plc::Gds::Internal::GdsContext&, bool) at Arp::Plc::Gds::Internal::Connections::GdsConnectionInfosBuilder::CreateDataConnectionInfo(std::shared_ptr const&, Arp::Plc::Gds::Internal::GdsMetaManager&, Arp::Plc::Fbm::FieldbusManager&, Arp::Plc::Gds::Internal::GdsContext&) at Arp::Plc::Gds::Internal::Connections::GdsConnectionInfosBuilder::CreateDataConnectionInfos(Arp::Plc::Gds::Internal::Config::GdsConfiguration const&, Arp::Plc::Gds::Internal::GdsContext&) at Arp::Plc::Gds::Internal::Connections::GdsConnectionInfosBuilder::CreateConnectionInfos(Arp::Plc::Gds::Internal::Config::GdsConfiguration const&, Arp::Plc::Gds::Internal::GdsContext&, std::map, std::shared_ptr >, Arp::Plc::Gds::Internal::Connections::ConnectionInfo, std::less, std::shared_ptr > >, std::allocator, std::shared_ptr > const, Arp::Plc::Gds::Internal::Connections::ConnectionInfo> > >&) at Arp::Plc::Gds::Internal::GdsDomain::Setup() at Arp::Plc::Gds::GdsComponent::SetupPlc(bool, Arp::Plc::Commons::Domain::PlcStartKind) at Arp::Plc::Domain::Internal::PlcComponentInfo::SetupPlc(bool, Arp::Plc::Commons::Domain::PlcStartKind) at Arp::Plc::Domain::Internal::PlcManager::LoadAndSetupPlcComponents(bool) at Arp::Plc::Domain::Internal::PlcManager::LoadAndSetupPlcInternal() at Arp::System::Commons::Threading::TaskQueue::ProcessTasksInternal(unsigned int) at Arp::System::Commons::Threading::TaskQueue::ProcessTasks() at Arp::System::Commons::Threading::TaskThread::RunInternal(void*) at Arp::System::Commons::Threading::Thread::RunThread(Arp::System::Commons::Threading::ThreadBinaryCompatibilityExtensions*) at Arp::System::Commons::Threading::Thread::RunInternal(void*) at Arp::System::Ve::Internal::Linux::ThreadService::RunInternal(void*) 25.03.21 17:26:19.887 Arp.Plc.Domain.Internal.PlcManager ERROR - Plc component 'Arp.Plc.Gds' returns false while SetupPlc(isChanging=false, startKind=Warm) was called. 25.03.21 17:26:19.896 Arp.Io.EthernetIP.EthernetIPComponent INFO - ResetPlc, isChanging=false 25.03.21 17:26:19.897 Arp.Io.EthernetIP.EthernetIPComponent INFO - 2929701568 OnPlcUnloaded PlcLoaded=true 25.03.21 17:26:19.897 Arp.Io.EthernetIP.EthernetIPComponent INFO - 2929701568 ESDK 0xffff, RemoveAllAssemblies 25.03.21 17:26:19.899 Arp.Io.EthernetIP.EthernetIPComponent INFO - UnloadPlc, isChanging=false 25.03.21 17:26:19.899 Arp.Io.EthernetIP.EthernetIPComponent INFO - 2929701568 OnPlcUnloaded PlcLoaded=false 25.03.21 17:26:20.349 Arp.Plc.Domain.Internal.PlcManager ERROR - Reverted all yet loaded components. 25.03.21 17:26:20.351 Arp.Services.Ehmi.EhmiComponent INFO - 2647544512 EhmiComponent: OnPlcUnloaded, onError=true Could help us ? Could you tell me if we need a particular version of FW or library to make work this example code ? Thank you for your time upd1.- Reading more messages in this forum https://www.plcnext-community.net/en/discussions/error-on-plc-after-sending-project.html I have remove IO modules and now I only have CAN module in PLCnext, and for now the problem has gone away. upd2.- Definitely, the problem has disappeared changing the order of the modules, installing CAN module first, then we have placed other modules.

Hi Javier, we encountered this issue now a few times and in the meantime we could simulate this issue as well. After changing the bus and close PLCnext Enigineer without saving via the menu options are somtimes not all necessary files of the busconfiguration correctly generated. The missmatch is detected from the firmware and the project does not start. Removing the failing module resolve the problem and you can download the project again withouth having any issues. We will fix this behaviour in the upcoming PLCnext Engineer version 2021.3 Hope that helps, Frank

Hi Frank, I was able to continue works with the CAN module as the first module. However I will download the CAN module again. Thank you for your answer. Regards,