Everything you always wanted to know about Eclipse, Embedded Systems Programming, Software and Tools, or any topics of this blog, but where afraid to ask, then this page is for you.

Post a comment, and you might get an answer, either from myself or from the readers of this blog. Otherwise: the answer is always ‘42‘ 😉

For feature requests or bug reports on the McuOnEclipse project end Processor Expert components, you should use the GitHub issue tracking system:


887 thoughts on “Q&A

  1. Hi Erich! great work on his blog ! I’ll use some of your code inside my project ! Quick question about the freeRTOS PE component. I seem to get lost with the priority scheme of freeRTOS, interrupt and your implementation of the freeRTOS component.

    I want to be sure of one thing : IDLE task is assigned priotity 0, I guess it’S the lowest priority, the priority we give in FRTOS1_xTaskCreate() (PE component) should be related to priority number of the free RTOS right ? not the priority of the interrupt.. which are inverted right ?

    lets says i create 2 tasks with your component :
    FRTOS1_xTaskCreate(tsk1, “Task1”, configMINIMAL_STACK_SIZE, &globalhost, 1, NULL);
    FRTOS1_xTaskCreate(tsk2, “Task2”, configMINIMAL_STACK_SIZE, &globalhost, 2, NULL);

    Task2 priority will be greater than Task1 ?



    • Hi Etienne,
      the FreeRTOS component is using the normal FreeRTOS priority scheme (nothing different). If you are new to FreeRTOS and the ARM Cortex interrupts, then I recommend that you have a read at the multipart tutorial starting at https://mcuoneclipse.com/2016/08/14/arm-cortex-m-interrupts-and-freertos-part-1/.
      Keep in mind that FreeRTOS priorities start with zero as the lowest priority, while the ARM Cortex priorities have zero as the highest urgency level.
      So yes, 0 (or tskIDLE_PRIORITY) is the FreeRTOS priority for the IDLE task. The RTOS itself runs with its interrupts (SysTick, PendSV and PendSvReq) at the lowest interrupt priority (15 for 4 priority bits).
      And yes, for your example, the Task2 his higher urgency than Task1 and this one has higher urgency than the IDLE task.
      I hope this helps,


  2. Hello, Erich! I really ensjoy your blog!

    I have a question about mbed, especially openSDA.
    I build a board based on FRDM-KL43Z.
    My trouble is my boards are doesn’t work in my PC. I think absent of bootloader is main problem. Can you teach me how install a new bootloader in a board? There is none-S/W in my board.

    Here is my board symptom.
    1. Power LED is working
    2. MCU USB port ack as USB serial. But it cannot use as storage.
    3. openSDA USB unack.



  3. Hi…in my case my boards are doesn’t work in my PC. I think absent of bootloader is main problem. Can you teach me how install a new bootloader in a board? There is none-S/W in my board.


  4. Hi Erich,
    I just noticed that NXP has a Low Voltage Hbridge PE component (LVHBridge) , and also a medium voltage Hbridge (MVHBridge) component that can be downloaded and work on processors like the K20’s with Processor Expert. Have you seen these before and do you have any experience with them?
    I found it because I want to make a stepper motor driver (microstepping) using discrete components on the theory that it could be better/cheaper than using a microstepping chip- these components look like the easy way to do so.



  5. Hi Erich,
    I am working on a project where I send short text messages between a K64F and an android tablet. I want the K64F to be a host and the tablet to be a device. How do I do this. Do I need an OTG cable.


  6. Hi Erich
    I am trying to modify your example using the Adafruit SPI friend. I want to use the Freedom K64F instead of the Tiny20.

    For the Adafruit SPI you use 5 IO lines. I want to use the Adafruit UART friend, no interrupt and the CS tied to GND. This will use up only 2 IO lines.

    Will this work?



  7. Hi Erich,
    Great website ! I found the site not too long ago ! You seem like a person who loves these works and want to teach others as well!
    I have been struggling to learn embedded electronics but what I have discovered missing is a complete guideline from beginner to expert. If you could write an article on where to start and how to grow from there would benefit many beginners like me I believe.



  8. Hi Erich,
    So I was trying to do the DIY USB joystick but I keep getting this error: “Description Resource Path Location Type
    Generator: FAILURE: at line 10: Property not found: “TxBuffer” (file: Drivers\Common\FSL_USB_HID_Joystick_DeviceSettings.Inc) FRDM-KL25Z_USB_HID_Joystick HIDJ1 Processor Expert Problem”
    Can you help me please?


  9. Hi again
    I have an android tablet talking to a K64F using the Adafruit LE uart. However it will not send more that 20 bytes at a time.Is there a way to increase this limit.


    • You have to implement message fragmentation (sending larger chunk of data with multiple messages). The BLE protocol is optimized for low power and small amount of data, you cannot send more than this 20 bytes in a a single message.


  10. Hi Eric,
    Great work. Really appreciate your insights. Had a question. Is it possible to shutdown a cortex m4? I understand the CPU can be configured to go in Stop Mode or Sleep Mode, but is it possible to to initiate a shutdown from software? I don’t think it is possible as I cannot find any register set that lets me perform such an action, but wanted to run it by you as well
    Thanks again


  11. Hello Erich,
    First of all I would like to thank you for the awesome work and for the effort you have put into these tutorials. I have the following question. I ordered the product FRDM-K64F-AGM01, which consists of a shield and a development board. From the pictures at NXP site, I infered that the sensor shield board would be removable and that I could use the FRDM-K64F standalone. The problem is I can’t remove the shield (if I apply more pressure, I am scared that I will break the board). Do you know if it is supposed to not be removed?

    Thanks in advance,


    • It should be removable. I don’t have that kit, but from the pictures it really should be removable. You should be able to tell this with having a close look at the headers: ther must be a black (high) black row of female headers on the FRDM-K64F board, with a row of male pin headers on the AGM01 board. Try to lift the board carefully on one end, then on the ohter, and so on.
      I hope this helps,


  12. Hello Erich ,
    I have to configure a common SPI bus to be used for two different SP clock frequency 2MHz and 8MHz on K10 series controller. I am using SPIMaster_LDD component in processor expert V10.4.0T.The method SetClockConfiguration() is appear as disabled . How can I enabled it and select the generate code option. Please explain .

    Thanks and Regards,
    Rohit K.


      • Hi Erich,

        In the clock rate configuration of the component i have used ‘list of values’.
        In value type , I am using mode 0 and mode 1.

        I am setting following the values : mode 0 = 0.125µsec and mode 1= 0.5µsec.

        When I reopen the clock rate configuration window , I observed that mode 1 value that I was set is not there. Mode 1 shows the same value as mode 0.
        Can you please let me know why this is happening?

        Thanks and Regards,
        Rohit K.


        • Hi Rohit,
          not sure what is causing this. I assume you have pressed the OK button? The other thing is: have you picked the values from the ‘Possible settings’ list (e.g. double-clicking on the value)? If the value you have entered is not part of that list, it will not be applied.
          I hope this helps,


  13. Hello, Erich,
    im thinking about trying to do a firmware update over the air with delta file optimization. Do you something about that? An elipse configuration which does not change all the file over the smallest change in code, maybe?
    Morais D.


  14. Hi Erich,

    Happy New Year 2019.
    I was looking for some examples for ARM Cortex-M33 with TrustZone and FPU. I couldn’t find any articles on Cortex-M33 here. It is a relatively new ARM core and firmware development on Cortex-M33 is still in nascent stages. Can you please consider writing about it in your next blog?



    • Hi Radhika,
      thanks, Happy New Year to you too!
      Yes, Cortex-M33 is on my radar, but because I have not ordered or used any of these in my projects, I have not written any articles about it. I’ll have to see if one of the university research projects starting next semester could benefit from a M33, and then certainly I will come up with an article about it.


  15. Hi Erich,

    Any idea why the MK20DX128xx5 is not supported in the MCUXpresso IDE? they only seem to have an SDK file for the parts ending in 10 (e.g. MK20DX128xx10).



    • No real idea. But I think it is maybe because this was one of the very first Kinetis devices, so it seems NXP has left it behind from the SDK point of view. The FRDM-K20 board for it is not available any more too.
      But we are using the MK20DX128x5 in many of our designs, and that’s why we continue to use Processor Expert because it is supported with it.


  16. Hello Erich,
    i have a problem with a new FRDM-KV31F board; one time attached to PC with Windows 10 (home), i think have bricked the board-bootloader. Now, the board is unresponsive.
    Also i have read your severals tutorials about resolve it, (in effect i have resolved this identical problem with an FRDM-K66F board), but with the kv31f my probe is not able to program the flash of k20dx128 interface chip, i receive an error message (i dont understand why, the chip is identical to interface-chip of frdm-k66f… or not?!)
    my conditions: pc Windows 10, IDE MCUXpresso 10.3.1, probe usb Multilink of PEMicro.


    • I don’t know the FRDM-KV31F, but if it is similar to the FRDM-KL25Z, then you cannnot reprogram the chip with a debugger as the flash is protected with mass erase disabled.
      But that would be good, as then Windows will not be able to brick the board. Can you try accessing it from a Windows 7 (native, not VM) machine?
      Then you should be able to update the P&E bootloader and load the application again.


  17. Hi…your openSDA/K20 is programmed, right? It does not matter if your KL43Z is empty or not: the K20 will programm it, no matter what.


  18. Hi Erich,

    Any idea where i can find the recommended footprint for the MK22FN256VLH12 (yet another thing NXP/Freescale make difficult)?



  19. Hi Erich,

    Just started using the MCUXpresso IDE with the MK22FN512xxx12, and noticed with an empty project (with just a while loop) 12.5% of the RAM is being used any ideas?

    Memory region Used Size Region Size %age Used
    PROGRAM_FLASH: 2424 B 512 KB 0.46%
    SRAM_UPPER: 8196 B 64 KB 12.51%
    SRAM_LOWER: 0 GB 64 KB 0.00%

    text data bss dec hex filename
    2420 4 8192 10616 2978 MK22FN512xxx12_Project.axf


What do you think?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.