AnsweredAssumed Answered

mcuOnEclipse - GI2C0, use with FreeRTOS

Question asked by Robert Lewis on Jun 7, 2017
Latest reply on Jun 15, 2017 by Robert Lewis


I am using KDS v3.2, sdk 1.3, PE with the mcuoneclipse components. One of the components is a high level i2c driver. I am using this with the devices.c function ReadI2CBytes. This all works as long as the FreeRTOS component is not used. Once I add the rtos, the system hangs. I have gone through the settings many times and selected FreeRTOS both the non-LDD and LDD driver but I can not get it to work with the RTOS. I have tried using the critical component around the access point of the driver but that also does not work


1). This driver is supposed to work and the example project / tutorial shows it working but with non-LDD. If I choose non-LDD I cannot change the device to 0, only 1 and 2 are available, which means the pins do not work. I have tried deleting and adding many times but no luck. Here is the question please, what are the settings for using GI2C with FreeRTOS? If it is non-LDD then how do I get to select device 0? Can anyone share a project that works on the MK20DX256ZVLL10 core or any other, we tried the FRDM-KE02Z code base (no RTOS) from mcuoneclipse and changed the processor, but as explained, we can't get this to work with the RTOS.

2). I can see the correct traffic on the analyzer for non-LDD and no RTOS. If I use LDD and no RTOS is see no traffic with the MasterReceiveBlock. I have set the slave in the init of the component. How do I get this to work? 


I found some code on the net that means adding the register access manually and it works with FreeRTOS. Is that a better way to go? I know that there are end-of-life issues with PE and how NXP chose to support the system. Do I have to go back to sdk 1.2 from sdk v1.3##? What are the recommendations anyone would have.