New in this release:
- Segger SystemViewer: Upgraded to V2.30, added stack high-water mark
- Segger RTT: fixed BASEPRI issue on Cortex M4 for critical sections
- Utility: Fixed issue with Utility module and Kinetis SDK (usage of ‘byte’)
- USB CDC: property to specify USB device current usage, new status getter functions.
Segger SystemViewer V2.30
Congratulations to Segger for the nomination of the SystemView for the Embedded World 2016 Award.
The library has been updated to the latest v2.30 version:
I have extended it to report stack watermark information as well (the original 2.30 implementation reports zero as watermark):
Segger RTT: Critical Section Handling
A solution has been implemented with critical section handling on Cortex M4 which could cause sporadic hard faults while using FreeRTOS. Now the library is using the FreeRTOS port critical section for ARM BASEPRI settings (see here for details behind this). For bare metal applications the base priority can now be specified in the properties:
💡 Many thanks to Jarno Manninen identifying pointing out that problem 🙂
USB CDC Stack
There is now a setting to specify the current used by the device so it can be reported properly to the host:
The USB CDC component offers two methods to get the application or transaction status:
I hope this new release is useful. The new release is available on SourceForge here: https://sourceforge.net/projects/mcuoneclipse/files/PEx%20Components/
See “McuOnEclipse Releases on SourceForge” how to download and install it.
Happy Updating 🙂
thanks for grate work!
with components in version 2016-01-10 I have build problem:
* \brief Return the 80bit UID of the device
* \param uid Pointer to the buffer where to store the UID
* \return Error code, ERR_OK if everything is ok.
uint8_t KIN1_UIDGet(KIN1_UID *uid)
uid->id = (SIM_UIDMH>>8)&0xff;
uid->id = SIM_UIDMH&0xff;
uid->id = (SIM_UIDML>>24)&0xff;
uid->id = (SIM_UIDML>>16)&0xff;
uid->id = (SIM_UIDML>>8)&0xff;
uid->id = SIM_UIDML&0xff;
uid->id = (SIM_UIDL>>24)&0xff;
uid->id = (SIM_UIDL>>16)&0xff;
uid->id = (SIM_UIDL>>8)&0xff;
uid->id = SIM_UIDL&0xff;
../Generated_Code/KIN1.c:124:17: error: ‘SIM_UIDMH’ undeclared (first use in this function)
Nothing about this so I assume such problem may still be a case after update?
If I’m not aware of something, and if not someone else fixes it, I assume issues don’t get automatically fixed ;-). So this one is new to me, so it is fair to say it is still there. Is your project a Kinetis SDK project (SDK enabled)?
Hmm, I have answered my own question: it seems that the header file for KE02 only has
#define SIM_UUIDL SIM_UUIDL_REG(SIM_BASE_PTR)
#define SIM_UUIDH SIM_UUIDH_REG(SIM_BASE_PTR)
I see how I can fix this, thanks for reporting 🙂
I have made a fix here:
I hope that works for you?
I have tried overwrite 3 files what you changes but than get problems with loading KinetisTools. I do not know how to generate patch.
I have uploaded for you a one-off release of the component on SourceForge: https://sourceforge.net/projects/mcuoneclipse/files/PEx%20Components/
Do compile! Thanks
I’m still getting the Utility module problem with the usage of ‘byte’. My Kinetis SDK version is 1.001 and my Utility component is version 1.112. What am I missing?
Have you made a Project > Clean and regenerated your code?
It should be
** Component : Utility
** Version : Component 01.116, Driver 01.00, CPU db: 3.00.000
Then: are you using multiple component repositories? Make sure it is using the correct repository.
Your components are very helpful! I would like to see how every components work in background. However, I have been stopped by Import>Component Development/Interface>Import Component/Interface. First, the imported components only Beans folder, no Drivers folder, Second, Even if I copy the Driver folder from myComponents folder into my working project folder, the Methods Source code is still showing “Resource ‘/FlowControlPID/Drivers/null’ does not exist”. the I am using KDS 3.2.0. Did you have issue to re-import your components in KDS? Or that is only myself?
I would like to use the PID floating for my gas flow close loop control, I would like to modify/Recreate your PID float/PID int components to ADC signal (flow rate) + PID(or 2p2z) + PWM output.
You need to use the ‘Import Component(s)’ menu (see https://mcuoneclipse.com/2014/10/21/mcuoneclipse-releases-on-sourceforge/) to import the components. If you are interested where the files are stored, see https://mcuoneclipse.com/2012/06/30/cde-hacking-where-is-my-stuff-a-dissection/.
I hope this helps?
I went though those blog already. Those are very helpful information, I think you misunderstand my question. I could import the components and use them in my project without any issue. However, when I import the an exiting(imported to my repository already) component into the CDE workspace, for example PID int into workspace, Import>Components Development Environment>Import Components/Interface, KDS only import Beans folder without Drivers folder.
Then I tried to could copy the entire Beans and Drivers folder into my project, reopen the KDS, in CDE interface, then I could see the folder and components, however, the Method could not link to the .drv file associate it, it show “/drivers/null” is not exist. If you create a new component, then it could like the method file with .drv file in Drivers folder.
Did you find out this bug for KDS 3.2.0? I tried both Mac and Win10. All the same issue.
I have stopped using the CDE built-in version in Eclipse because of too many issues, and only a few ones I had reported were fixed. So I gave up using it. I continue to use the ‘classic’ BeanWizard which is present in CodeWarrior: that version works fine for me.
I’m affraid that the CDE in Eclipse is broken. And the BeanWizard only works with a licensed version of CodeWarrior (I still have for one of my lectures at the university). You might consider to change the files with a normal text editor (this is what I do frequently too). Otherwise I’m not sure how to help you :-(.
Thanks for you suggestion, I see your point. I read your blog and saw you report the 3.0.0 snapshot bug about not Drivers folder imported, similar to that issue. I could open the drv file directly and cross reference to the Method code. Thank you Erich anyway, your blog is my whole life in recently 🙂