I am using beyond studio to build zigbeePro application. The build process is too slow. If a single file is modified it takes around 4+ minutes. For a clean and build of the ZigbeeControlBridge Sample code, the ide takes 35+ minutes.
The PC I am using is an i7 with around 8 GB Ram
Task Manager shows the following
the content of bstudio_nxp.ini is as follows
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20130807-1835
-vmargs
-XX:MaxPermSize=768m
–Xmx768m
How can I solve this issue?
I did the same test that you did and it takes me around 6 min too.
was it for a clean build? for me, clean build takes 35mins or more!
Hi Dost,
I cleaned the project and this was my compilation time.
Could you please try to uninstall beyond studio and install it again?
Regards,
Mario
Hi Dost,
What is the application that you are working on?
You have a lot of factors that are affecting your compiling process, is your CPU doing other routines? Do you have enabled your antivirus that is checking all the write and read process?
I am working with the JN-AN-1229, I cleaned and build the coordinator process and it takes 45s 372ms
The task manager shows the following, but remember Beyond Studio is based on the Kepler release of the open-source Eclipse IDE, and as you know Eclipse takes a lot RAM, so it explains in my case the 144MB.
Please let me know your findings.
Best Regards,
Mario
Hi Mario,
What is the application that you are working on?
I am working on JN-AN-1223 and I have tried with JN-AN-1216 and I face the same issue.
You have a lot of factors that are affecting your compiling process, is your CPU doing other routines? Do you have enabled your antivirus that is checking all the write and read process?
I am using windows 10, and I have not installed any other antivirus software, I am using the default windows defender.
I am working with the JN-AN-1229, I cleaned and build the coordinator process and it takes 45s 372ms
The task manager shows the following, but remember Beyond Studio is based on the Kepler release of the open-source Eclipse IDE, and as you know Eclipse takes a lot RAM, so it explains in my case the 144MB.
when I am building this is what I am getting in the task manager. CPU usage keeps changing ...
and for a build without clean it takes around 6 mins. I am using the demo code without any alterations.
11:42:16 **** Incremental Build of configuration ZigbeeNodeControlBridge_EEPROM_JN5168 for project ZigbeeNodeControlBridge ****
make TRACE=1 PDM_BUILD_TYPE=_EEPROM JENNIC_CHIP=JN5168 VERSION=66455124 all
JENNIC_MAC is Mini MAC shim
Building trace version ...
Compiling /c/NXP/bstudio_nxp/workspace2/ZigbeeNodeControlBridge/Source/ZigbeeNodeControlBridge/app_Znc_cmds.c ...
/c/NXP/bstudio_nxp/sdk/Tools/ba-elf-ba2-r36379/bin/ba-elf-gcc -c -o app_Znc_cmds.o -DUART_BAUD_RATE=115200 -DVERSION=66455124 -DUART_DEBUGGING=1 -DDEBUG_UART=DBG_E_UART_1 -DDEBUG_ZCL -DDEBUG_ZB_CONTROLBRIDGE_TASK -DTRACE_APP -DDEBUG_AGE_CHILDREN -DAPP_APS_ACK -DJN516x=5160 -DJN5168=5168 -DJENNIC_CHIP_NAME=_JN5168 -DJENNIC_CHIP_FAMILY_NAME=_JN516x -march=ba2 -mcpu=jn51xx -mredzone-size=4 -mbranch-cost=3 -fomit-frame-pointer -Os -fshort-enums -Wall -Wpacked -Wcast-align -fdata-sections -ffunction-sections -flto -DWATCHDOG_ENABLED -DJENNIC_HW_BBC_RXINCCA=1 -DJENNIC_HW_BBC_DMA=1 -DJENNIC_HW_BBC_ISA=0 -DJENNIC_SW_EXTERNAL_FLASH=0 -DJN516X_DMA_UART_BACKWARDS_COMPATIBLE_API=1 -DUART_BACKWARDS_COMPATIBLE_API=1 -DJENNIC_CHIP=JN5168 -DJENNIC_CHIP_JN5168 -DJENNIC_CHIP_FAMILY=JN516x -DJENNIC_CHIP_FAMILY_JN516x -DJENNIC_STACK_ZLLHA -DJENNIC_MAC_MiniMacShim -Wall -Wunreachable-code -DEMBEDDED -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Platform/Common/Include -DJENNIC_PCB=DEVKIT2 -DJENNIC_PCB_DEVKIT2 -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Platform/DK2/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Common/Include -DPDM_USER_SUPPLIED_ID -DPDM_EEPROM -DDBG_ENABLE -DZPS_APL_OPT_SINGLE_INSTANCE -DOTA_NO_CERTIFICATE -DPLME_SAP -I/c/NXP/bstudio_nxp/workspace2/ZigbeeNodeControlBridge/Source/ZigbeeNodeControlBridge -I/c/NXP/bstudio_nxp/workspace2/ZigbeeNodeControlBridge/Source/ZigbeeNodeControlBridge/.. -I/c/NXP/bstudio_nxp/workspace2/ZigbeeNodeControlBridge/Source/Common -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/JennicLogo/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Utilities/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Random/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/NXPLogo/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Utilities/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Patch/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/OVLY/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Aes/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Utilities/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/AppApi/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MiniMac/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MMAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/HardwareApi/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Aes/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/DBG/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MicroSpecific/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MiniMAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/MMAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/TimerServer/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Random/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSMAC_Mini/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/OS/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/PWRM/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSTSV/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/AES_SW/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/PDUM/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSAPL/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Random/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/PDM_EEPROM/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/DBG/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSZLL/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSNWK/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/PDM/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSMAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZPSNWK/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Source -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/General/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/General/Source -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/Lighting/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/MeasurementAndSensing/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/EnergyAtHome/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/SE/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/GreenPower/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/HVAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/OTA/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/SmartEnergy/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/IAS/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/HA/Common/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/HA/Generic/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/HA/EnergyAtHome/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/HA/HVAC/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/HA/IAS/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Clusters/LightLink/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/ZLL/Include -I/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Profiles/GP/Include /c/NXP/bstudio_nxp/workspace2/ZigbeeNodeControlBridge/Source/ZigbeeNodeControlBridge/app_Znc_cmds.c -MD -MF app_Znc_cmds.d -MP
Linking ZigbeeNodeControlBridge_JN5168.elf ...
/c/NXP/bstudio_nxp/sdk/Tools/ba-elf-ba2-r36379/bin/ba-elf-gcc -Wl,--cref,--gc-sections -Wl,-u_AppColdStart -Wl,-u_AppWarmStart -march=ba2 -mcpu=jn51xx -mredzone-size=4 -mbranch-cost=3 -fomit-frame-pointer -Os -fshort-enums -flto -nostartfiles -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Chip/JN5168/Build -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Chip/JN5168/Library -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Platform/DK2/Library -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/Library -Wl,--gc-sections -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Components/ZCL/Build -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Stack/ZBPro/Build -L/c/NXP/bstudio_nxp/sdk/JN-SW-4168/Stack/ZLLHA/Build -Wl,--defsym=__stack_size=6500 -Wl,--defsym,__minimum_heap_size=2000 -TAppBuildZBPro.ld -o ZigbeeNodeControlBridge_JN5168.elf -Wl,--start-group os_gen.o os_irq.o os_irq_alignment.o os_irq_buserror.o os_irq_illegalinstruction.o os_irq_stackoverflowexception.o os_irq_unimplementedmodule.o pdum_gen.o zps_gen.o app_Znc_cmds.o app_Znc_zcltask.o app_ZncParser_task.o app_ZncCommission_task.o app_start.o SerialLink.o uart.o NumToString.o app_timer_driver.o ecb_decrypt.o appZpsBeaconHandler.o appZdpExtraction.o pdum_apdu.o app_scenes.o app_ota_server.o app_poll_control_commands_handler.o app_zbp_utilities.o AgeChildren.o Alarms.o AlarmsClientCommands.o AlarmsCommandHandler.o AlarmsServerCommands.o AlarmsTableManager.o AnalogInputBasic.o AnalogOutputBasic.o Basic.o BasicClientCommands.o BasicCommandHandler.o BinaryInputBasic.o BinaryOutputBasic.o Commissioning.o DeviceTemperatureConfiguration.o Diagnostics.o DoorLock.o DoorLockCommandHandler.o DoorLockCommands.o ElectricalMeasurement.o Groups.o GroupsClientCommands.o GroupsCommandHandler.o GroupsServerCommands.o GroupsTableManager.o Identify.o IdentifyClientCommands.o IdentifyCommandHandler.o IdentifyServerCommands.o LevelControl.o LevelControlClientCommands.o LevelControlCommandHandler.o MultistateInputBasic.o MultistateOutputBasic.o OOSC.o OnOff.o OnOffCommandHandler.o OnOffCommands.o PollControl.o PollControlClientCommands.o PollControlCommandHandler.o PollControlServerCommands.o PowerConfiguration.o Scenes.o ScenesClientCommands.o ScenesClusterManagement.o ScenesCommandHandler.o ScenesServerCommands.o ScenesTableManager.o TC.o Time.o FlowMeasurement.o IlluminanceLevelSensing.o IlluminanceMeasurement.o OccupancySensing.o PressureMeasurement.o RelativeHumidityMeasurement.o TemperatureMeasurement.o zll_CommissionCmdHandler.o zll_UtilityCmdHandler.o zll_commission.o zll_utility.o colour_light.o colour_remote.o colour_scene_remote.o colour_temperature_light.o commission_endpoint.o control_bridge.o dimmable_light.o dimmable_plug.o extended_colour_light.o non_colour_remote.o non_colour_scene_remote.o on_off_light.o on_off_plug.o on_off_sensor.o zll.o BallastConfiguration.o ColourControl.o ColourControlClientCommands.o ColourControlCommandHandler.o ColourControlConversions.o ApplianceControl.o ApplianceControlClientCommands.o ApplianceControlCommandHandler.o ApplianceControlServerCommands.o ApplianceEventsAndAlerts.o ApplianceEventsAndAlertsClientCommands.o ApplianceEventsAndAlertsCommandHandler.o ApplianceEventsAndAlertsServerCommands.o ApplianceIdentification.o ApplianceStatistics.o ApplianceStatisticsClientCommands.o ApplianceStatisticsCommandHandler.o ApplianceStatisticsServerCommands.o PowerProfile.o PowerProfileClientCommands.o PowerProfileCommandHandler.o PowerProfileServerCommands.o home_gateway.o white_goods.o FanControl.o Thermostat.o ThermostatCommandHandler.o ThermostatCommands.o ThermostatUIConfig.o temperature_sensor.o thermostat_device.o DRLC.o DRLCCommandCanceAlllLoadControlEvents.o DRLCCommandCancelLoadControlEvent.o DRLCCommandGetScheduledEvents.o DRLCCommandHandler.o DRLCCommandLoadControlEvent.o DRLCCommandReportEventStatus.o DRLCCustomCommandResponsesClient.o DRLCCustomCommandResponsesServer.o DRLCEffectiveTime.o DRLCScheduler.o DRLCTableManagerNoMutex.o DRLCTableManagerServer.o DRLCUserEventOptInOut.o Price.o PriceBlockPeriodTableManager.o PriceCalorificValueTableManager.o PriceCommandGetBlockPeriod.o PriceCommandGetCalorificValue.o PriceCommandGetConversionFactor.o PriceCommandGetCurrentPrice.o PriceCommandGetScheduledPrices.o PriceCommandPriceAck.o PriceCommandPublishBlockPeriod.o PriceCommandPublishBlockPeriodReceive.o PriceCommandPublishCalorificValue.o PriceCommandPublishCalorificValueReceive.o PriceCommandPublishConversionFactor.o PriceCommandPublishConversionFactorReceive.o PriceCommandPublishPrice.o PriceCommandPublishPriceReceive.o PriceConversionFactorTableManager.o PriceCustomCommandHandler.o PriceCustomCommandResponses.o PriceScheduler.o PriceServerAttributeManager.o PriceTableManager.o SimpleMetering.o SimpleMeteringCommandHandler.o SimpleMetering_SendRequest.o IASACE.o IASACEClientCommands.o IASACECommandHandler.o IASACEServerCommands.o IASWD.o IASWDCommandHandler.o IASWDCommands.o IASZone.o IASZoneCommandHandler.o IASZoneCommands.o ancillary_control_equipment.o control_and_indicating_equipment.o warning_device.o zone.o dlist.o zcl.o zcl_CustomCommandReceive.o zcl_CustomCommandSend.o zcl_PDUbufferReadWrite.o zcl_PDUbufferReadWriteString.o zcl_WriteAttributesRequestHandle.o zcl_WriteAttributesRequestSend.o zcl_WriteAttributesResponseHandle.o zcl_attribute.o zcl_buffer.o zcl_clusterCommand.o zcl_command.o zcl_configureReportingCommandHandle.o zcl_configureReportingCommandSend.o zcl_configureReportingResponseHandle.o zcl_defaultResponse.o zcl_discoverAttributesExtendedRequestHandle.o zcl_discoverAttributesExtendedRequestSend.o zcl_discoverAttributesExtendedResponseHandle.o zcl_discoverAttributesRequestHandle.o zcl_discoverAttributesRequestSend.o zcl_discoverAttributesResponseHandle.o zcl_discoverCommandsRequestHandle.o zcl_discoverCommandsRequestSend.o zcl_discoverCommandsResponseHandle.o zcl_event.o zcl_heap.o zcl_library_options.o zcl_readAttributesRequestHandle.o zcl_readAttributesRequestSend.o zcl_readAttributesResponseHandle.o zcl_readReportingConfigurationCommandHandle.o zcl_readReportingConfigurationCommandSend.o zcl_readReportingConfigurationResponseHandle.o zcl_reportManager.o zcl_reportMaths.o zcl_reportScheduler.o zcl_reportStringHandling.o zcl_reportStructure.o zcl_search.o zcl_timer.o zcl_transmit.o OTA.o OTA_ClientUpgradeManager.o OTA_CustomCommandHandler.o OTA_CustomReceiveCommands.o OTA_ServerUpgradeManager.o OTA_client.o OTA_common.o OTA_server.o -lZPSMAC_Mini_JN516x -lOS_JN516x -lPWRM_JN516x -lZPSTSV_JN516x -lAES_SW_JN516x -lPDUM_JN516x -lZPSAPL_JN516x -lRandom_JN516x -lPDM_EEPROM_JN516x -lDBG_JN516x -lZPSZLL_JN516x -lZPSNWK_JN516x -lMiniMac_JN516x -lMiniMacShim_JN516x -lMMAC_JN516x -lAes_JN516x -lHardwareApi_JN516x -lMicroSpecific_JN516x -lBoot_JN516x -lBoardLib_JN516x -lm -Wl,--end-group -Wl,-Map,ZigbeeNodeControlBridge_JN5168.map
/c/NXP/bstudio_nxp/sdk/Tools/ba-elf-ba2-r36379/bin/ba-elf-size ZigbeeNodeControlBridge_JN5168.elf
text data bss dec hex filename
183834 2584 30509 216927 34f5f ZigbeeNodeControlBridge_JN5168.elf
Generating binary ...
/c/NXP/bstudio_nxp/sdk/Tools/ba-elf-ba2-r36379/bin/ba-elf-objcopy -j .version -j .bir -j .flashheader -j .vsr_table -j .vsr_handlers -j .ro_mac_address -j .ro_ota_header -j .ro_se_customData -j .rodata -j .text -j .data -j .bss -j .heap -j .stack -S -O binary ZigbeeNodeControlBridge_JN5168.elf ZigbeeNodeControlBridge_JN5168.bin
cp ZigbeeNodeControlBridge_JN5168.bin ../bin
11:48:11 Build Finished (took 5m:54s.416ms)
Hi Dost,
Yes, It is ok, Remember Beyond studio is based on Eclipse, and as you know it takes a lot of memory Ram.
Then that example that you are working on its really heavy, the Application Note shows how the ZigBee Control Bridge can be controlled by an application running on a PC.
I did the same test that you did and it takes me around 6 min too.
Regards,
Mario