USB Component Splitted and Updated

Checking the download statistics of my Processor Expert components on http://www.steinerberg.com/EmbeddedComponents/, there is a clear winner: FSL_USB_Stack 🙂

It has been a while I presented that universal USB CDC component in this blog. The component has received a larger re-architecture, I wanted to support more than just USB CDC. For this, the CDC part is now present in a separate sub-component:

FSL_USB_Stack with Sub-Components

FSL_USB_Stack with Sub-Components

Continue reading

Tutorial: USB CDC with the KL25Z Freedom Board

Question: What to do on a rainy Sunday?
Answer: Having fun with USB and the KL25Z Freedom board! :-).

In “A shell for the Freedom board” I used the UART-to-USB OpenSDA capability of the KL25Z Freedom board: The KL25Z processor uses the OpenSDA K20 microprocessor as Serial-to-USB converter. But this only works because of the P&E OpenSDA USB CDC (Communication Device Class) implementation. If I create my board without OpenSDA, I need a different approach: I want to do USB CDC with the KL25Z :twisted:.

USB CDC Device on COM22

USB CDC Device on COM22

Continue reading

Sports Timing System in a Lunch Box

The 2012 London Olympics are over. And I had my own special sports event last weekend. Although not part of the Olympics, it is part of the Switzerland Central Mountain Race Championship. This is a series of mountain running challenges. And no, I did not run the race. I love the mountains, and I love hiking in the mountains, but this is definitely for the greatest athletes. Instead to run the race, I have chosen to implement and run the timing system :-).

Athletes approaching the finish line

Athletes approaching the finish line

Continue reading

A Shell for the Freedom KL25Z Board

I’m a big fan of physical UART/RS-232 ports on boards. So I was somewhat disappointed not to see a serial 9pin connector on the Freedom KL25Z board. But it is perfectly understood that for this price costs are critical, and a serial header or connector is pushing the budget for that board very likely out of the water. Still, I want serial connectivity for my applications.

Freedom Board with RGB LED

Freedom Board with RGB LED

Continue reading

FSL_USB_Stack updated: sending 16 or 32 byte blocks

The FSL_USB_Stack Embedded Component presented in “USB CDC, reloaded” has been updated to V1.004 and is available here. I was running into issues if the USB CDC stack had to send out either 16 or 32 bytes of data in the App_Task() function. In that case the data is not sent until the next USB_Class_CDC_Interface_DIC_Send_Data() request.

Continue reading

USB CDC, reloaded

The Processor Expert USB CDC component posted in USB or not: CDC with Processor Expert has found many friends :-). A new version is available for download here with examples. It adds a bunch of new features and makes many things: simpler dependencies and setup, generation of an easily accessible cdc.inf and availability of error hooks. I have it running now with the TWR-MCF52259 and the DEMOJM (MCF51JM128 and S08JM60). Continue reading

USB or not: CDC with Processor Expert

I had a PREN student showing up into my office. He wanted to choose a microcontroller for that project. One requirement put on the table was “it needs USB”. Well, I asked why USB is required. I was not surprised by the answer: “to use USB instead of RS-232”. Wow. So what he really wanted was USB CDC (Communication Device Class). Yep. Most notebooks today have no serial COM port (see “Processor Expert Configurations“). But because “USB is serial” does not mean “USB CDC is simple”. Nope. USB is not simple. But it can be with Processor Expert.

Continue reading