Time is passing fast, and many components have been updated to make the compatible with the NXP Kinetis SDK V2.0. As a highlight, besides of FreeRTOS the following components are now usable with the NXP Kinetis SDK:
Tag Archives: open source projects
Semihosting with Eclipse and the NXP Kinetis SDK V2.0
The world is changing, and the say is “change is good” :-). In the software and API world, change very often means that a change results into something broken. So I had battled with semihosting working on the NXP Kinetis parts, only to find out that it does not work any more with using the latest version 2.0. The semihosting output e.g. with P&E debug connection remains empty:
So how to fix this?
Solution for OpenOCD “Cannot communicate… target not haltet”
Related to my earlier article about using OpenOCD, I want to share something I have learned (again) with OpenOCD v0.10.0:
I was running often into the following error:
Warn : Cannot communicate... target not halted. Error: auto_probe failed Error: Connect failed. Consider setting up a gdb-attach event for the target to prepare target for GDB connect, or use 'gdb_memory_map disable'. Error: attempted 'gdb' connection rejected
FreeRTOS Thread Debugging with Eclipse and OpenOCD
FreeRTOS is probably the number one RTOS used, and Eclipse is likely the most popular IDE I can think of. But debugging FreeRTOS applications with Eclipse and GDB is somewhat limited? What I would like to get at the minimum is this: ability to see all the different threads in the Eclipse debug view like this:
As you might guess from that screenshot: this post is about how to make FreeRTOS tread debugging possible with Eclipse and GDB :-).
McuOnEclipse Components: 3-Apr-2016 Release
It has been already two months after the Feb 2016 release, and so much things are going on, so a new release was overdue. Today I have released a new version of the McuOnEclipse components on SourceForge with the following main changes and features:
- Kinetis SDK v2 with Processor Expert: Now many components can be used even with the Kinetis SDK v2.0 even with the Kinetis SDK not having Processor Expert included.
- Updated Segger SystemViewer to v2.32a with post-mortem and static buffer support
- Updated Segger RTT to v5.10u and fixed an issue with interrupts on Cortex-M4
- FreeRTOS Thread Awareness with OpenOCD
See readme on SourceForge for the full history.
3D Printed Gameboy and Remote Controller with tinyK20 Board
As a remote controller for the Sumo robot (see “Zumo Robot with Magnetic Encoders“) we have used so far a combination of NXP FRDM-KL25Z board and a Joystick Shield (see “Joystick Shield with nRF24L01 driving a Zumo Robot“). That solution was not ideal, so this weekend I created a 3D printed prototype:
Zumo Robot with Magnetic Encoders
We are using robots to teach advanced embedded system programming at the Lucerne University (see “Sumo Robot Competition“). Students can buy the kit, and we are running out of available hardware. Time to produce a new series of robots :-). It took us a while to get to the next revision of the Zumo Robot, but finally the first one has been produced and assembled, and I think it is looking good :-).
nRF24L01+ 2.4 GHz Wireless Connectivity with the tinyK20 Board
I’m using the tiny and inexpensive Nordic Semiconductor nRF24L01+ transceiver (see “Tutorial: Nordic Semiconductor nRF24L01+ with the Freescale FRDM-K64F Board“) in many projects: it costs less than $3 and allows me to communicate with a proprietary 2.4GHz protocol in a low power way (see “IoT: FreeRTOS Down to the Micro Amps“). I have that transceiver now running with the tinyK20 board too:
Merging S19 Files
If using a bootloader with an application, one thing is to to merge the bootloader with the application into a single file. I do this with the ‘SRecord’ tool like this:
srec_cat bootloader.s19 application.s19 -o merged.s19
How to put the Kinetis K20 on the tinyK20 Board into Bootloader Mode
To put the tinyK20 board with the NXP Kinetis K20 into bootloader mode, well someone could check the schematics, or follow this quick guide :-). In short, the pin PTB1 has to be pulled to Ground (GND) while powering the Kinetis K20. The pin PTB1 is on the outside row as below:









