HOME  |  NEWS  |  BLOGS  |  MESSAGES  |  FEATURES  |  VIDEOS  |  WEBINARS  |  INDUSTRIES  |  FOCUS ON FUNDAMENTALS
  |  REGISTER  |  LOGIN  |  HELP
Comments
You must login to participate in this chat. Please login.

@Yves

I have not done that specifically. I will look for it in the Freescale site.

Thanks!

Iron

@mRlu2012 Have you also downloaded

and installed the MQX 4.1 package? ( installable file:FSLMQXOS_4_1_0_GA.exe 194MB)

Iron

Thanks all - I have a lawn that is going to swallow the house if I don't attack it, so mow duty calls.. See you tomorrow!

Iron

mRlu2012 you may need to re-install MQX after CW to get CW to "see" it

Iron

Thank you Charlesfor the lecture.

@Charles,

I've downloaded and installed CW10.6 evaluation version and I still can't get the "New MQX 4.1 project" item choice in the Project Creation Commander window! I don't know if it has anything to do with version 10.5 being present...

Iron

What other burning issues would you like to see (time allowing) tomorrow?

It could be semaphores.

@Charles Thank you.  

Iron

Yes - part of tomorrow!

Iron

Idea - How to assign task priorities properly.

Iron

@cghaba - they can have the same priority or different.  Will talk about that tomorrow

Iron

I agree with Yves : Not afraid of huge slide decks...   ;-)
Thanks to Charles, Rob, Digi-Key and IEEE....

Iron

@fred45 - the FRDM boards (Arduino outline) can do this task, but just don't have the LCD. There are aftermarket LCDs in that form factor that could be used.

Iron

What would our task function prototypes look like?

It would look like a function prototype in C: containing the type, name of function, list of parameters, followed by a semicolon.

Thank you again Charles.

Iron

Do tasks in MQX have unique priority levels?

Iron

10.5 may be a more stable version, but I think they made the jump to 10.6 for a reason.  I really look forward to the stable version of KDS!

Iron

@charles unfortunate not having board. But board looks big for real usage of this app. how much smaller can be done? depends on foot print of tech. chips?

Iron

KDS will look the same (Eclipse based) but was written by a new group and includes the 'official' ARM tool chain. It will be free but will be almost the same as the pro version of CW.

Iron

@cjloard - you've alluded to issues with CW v10.6 in todays talk. Would you suggest those of us who will revisit this when board arrives use v10.5 instead?

Iron

My multi-day live training classes have been something like 150 slides at times. Lots of background info.

Iron

What is the different between Freescale KDS and Codeworrier?

Iron

Not afraid of huge slide deck.

Kinda like them!

Iron

Sure - I will sqeeze that in (I see a huge slide deck coming!)

Iron

Thanks to Charles, Rob, Digi-Key and IEEE....

(Didn't have any audio problems, ie8)..

Thanks again to Charles, Rob, and all who are involved

Iron

Why do you think gaps in the priorities that you use cause system slowdown?

System checks each priority level to see if there is a task at it.

@cjloard - would you share those install issue notes with us tomorrow??

Iron

StephT - exactly! The debug session is where we will look at the issues of having all the same and what happens we we change them up

Iron

Also - tomorrow I will be asking for what topics you wonderful folks would like to see in future CEC classes - be thinking about this and I will ask tomorrow.

Iron

@cjlord :  In today's code, so far, all 3 tasks are of the same priority ; you have not declared each with it's own level, correct ?   Will that be done tomorrow (part of "Priority issues" listed on p.20) ?

Iron

@charles thank you so much. This is a great presentation  and class . I like t see it working. I will play more with it and hopefully I can make it work. If not maybe your notes will get me going

Iron

The KL25 has to use MQX-Lite, which includes a BSP/PSP for that board and processor

Iron

Shameless plug... I will be teaching a two-day class (live and in person) on MQX this summer. It is not sponsored and free and dates not set. Looking at Portland and Ft Lauderdale.  Email me if interested.

Iron

I have a FRDM-KL25Z board which I want to use for testing MQX. The problem is that I didn't find the BSP for it. This means I cannot use MQX or that I have to create myself the BSP/PSP?

Iron

The audio download is not working as it did on the other days. The audio starts up at page 11.

 

@charles  i agree with @cghaba

Iron

I would like to know more about communication between ISR's and Tasks with MQX

@cghaba - good idea; I will posit this to Design News...

Iron

Vic14 - unfortunately, that is a vague error that means it can't find something. I have some notes on install issues that has a few ideas on that (and I have seen it before) so I will try to find it for you

Iron

Charles, you can schedule MQX part II for all issues that will not fit in the tomorrow presentation.

Iron

Thanks Charles, Rob, Steph, and Digi-Key

Iron

the lightweight messaging is the usual way to communicate between tasks

Iron

Any function for communication between Task in MQX? Like pipe or something?

Iron

Lots of great ideas for tomorrow... it may be three hours after all (joking!)

Iron

@charles any soultions to problems I had. I was trying to run the debuge for the 3 files and it is asking me for an IP address for SEGGER J-Link v4.80- Emulator selection??

Iron

@samdisp06 - again, the new Freescale KDS will solve the learning tool issue. This goes along with what other mfrs (Renesas etc) that offer free IDEs that only work on certain processors.

Iron

@tpyn - yes, MQX supports multicore and multiple processors. I will touch on that tomorrow - good question!

Iron

drrowley - yes you can specify a max time for a task to run either in ticks or in real time. Thread is still a valid term - you will see it tomorrow

Iron

Usually, the code size limit version is not enough for RTOS to do a real job. Any better way to do this for learning purpose?

Iron

Can MQX be used for the multicore processors that are becoming more popular now? How about the cpu combined with other processor options: DSP, FPGA, GPU ...

Iron

@RMRSS - yes! There is a free tool coming from Freescale called Kinetis Development System - will be free but will include MQX and Processor Expert support. In "almost beta" mode and not ready for prime time yet.

Iron

another idea: how to write/design task code to avoid deadlocks

Iron

good session, thanks

 

Iron

Thanks Charles and Rob

Iron

idea for tommorow: inter-task communication, what are the pros/cons for each solution

Iron

Q: The "Special" (free) version of CodeWarrior for Kinetis has code limits, based on the Kenetis family. Are any of the limits so small that it essentially precludes using MQX on that family. Feel free to post the answer tomorrow.

Iron

CJ,  Is there a more reasonably priced alternative to Code Warior perhaps even an open source version?

 

Iron

cj's? theory makes since, mechanics so far, doesn't... (not a programmer by trade)

is there a count for max number of ticks the task runs or is it a thread?

is 'thread' still a software definition or is it not used anymore?

@charles More about Kinetis processor priorities handiling.

Iron

Idea for tomorrow - show how to use debugger to see that each task is getting "hit", and with what frequency are they being hit. Is there some way to observe this while still allowing code to run full speed?

Iron

Thanks Charles! This is really a good lecture.

Iron

Thanks again for a very informative lecture

More in depth on semaphores and mutexes

Iron

@mccurry I HOPE NOT!

Iron

Thanks Charles and Rob

Iron

I am interested in more non-intrusive debugging techniques.

Iron

Idea for tomorrow - Show how to design the system to make best use of time spent on each task. Show how to debug and visualize how much time is spent in each task.

Iron

Thanks Charles, excellent lecture!

Iron

Thank you very much.

Great presentation!

Iron

Keep up the good work.

Iron

Thank you!!!   Just see how the tasks interact...

Iron

what would cause you to look at options other than MQX? 

Iron

Thank you!

The lecture has been very informative. 

Iron

Thanks Charles and Rob.

Iron

    Excellent presentation again!  Looking forward to tomorrow's 3-hr session.

Iron

the extern is optional right?

Iron

Thanks to Digi-key, Charles, DN, Rob, Et. tal.

Iron

Timing analysis for real-time critical applications

Iron

Thanks for the information today. This is helpful.

Thank you Charles and Rob.

Iron

Thank you Charles. for another great lecture.

Iron

Thanks Charles, Rob & Digi-Key

Good day, all!

Iron

I would like some hints about how to debug a RT application based on MQX

Iron

Charles, Rob,

Many Thanks!

Iron

Excellent class
Thank you Charles, Rob, and Digi-Key

Gold

Will it be possible to have some comparative analysis between MQX and others?

Iron

semaphores and mutexes

Iron

thank you amazing lecture

Thank you very much Charles

We're now on slide 23:

Blogger

We're now on slide 22.

Blogger

Question from Charles:

What other burning issues would you like to see (time allowing) tomorrow?

Blogger

We're now on slide 21.

Blogger

the start task will print  "We are running the Start Task"

UI "We are running the User Interface Task"

Test "We are running the Test Task"

Iron

Good afternoon from Florida. Excuse me I enter late today.

extern void xxx_task(uint32 initial_data); fill in xxx with each task name

Iron

We're now on slide 20.

Blogger

extern void task_name(uint32 initial_data);

Iron

I suspect the prototype would have the definitions of function and variables and associated types.

Iron

Start_task, UI_task, test_task

 

Iron

don't know what these prototypes will be

Iron

Prototypes, function defs ?

Iron

void Start_task(uint32 initial_data);

void UI_task(uint32 initial_data);

void Test_task(uint32 initial_data);

Iron

task function prototypes would look like normal C protos.

Iron

C function prototype syntax

Iron

extern void task(uint signal)

Iron

body consisting ofwhile(1){  }

Iron
void Start_task(uint32 initial_data);, void UI_task(uint32 initial_data); and void test_task(uint32 initial_data);
Iron

Function call skeleton

Iron

void UI_task(uint32);

Iron

extern void Start_task(uint32 initial_data);

extern void UI_task(uint32 initial_data);

extern void Test_task(uint32 initial_data);

Iron

Function prototypes in C contain the type, name of function, list of parameters, followed by semicolon.

Iron

cj's? protypes look like? don't know...

calls to functions.

Iron

We're now on slide 19.

Blogger

Question from Charles:

What would our task function prototypes look like?

Blogger

We're now on slide 18.

Blogger

We're now on slide 17.

Blogger

We're now on slide 16.

Blogger

@78RPM Thank you so much 

Iron

We're now on slide 14.

Blogger

We're now on slide 13.

Blogger

You can also do a File >> New >> Source File to get that screen

Gold

We're now n slide 12.

Blogger

We're now on slide 11.

Blogger

Very good. Thank you clarification.

Iron

@Charles: this can be solved creating a linked list ordered by priority

Iron

It checks all the priorities and some are not used, wasting time.

Iron

We're now on slide 10.

Blogger

Hi good afternoon from Boston. Sorry I am late.

Slows the scheduler down to check for unassigned priorities.

Iron

We're now on slide 9.

Blogger

I suspect it

1.checking for unassigned priorities.

2.Running a skip and going back to lower priority

I would need to more about the OS and its settings

Iron

Yes, it will slow down the system.

Iron

My guess is what the others are saying, they are checked anyways used or not.

 

Understanding the system requirements might help increase the thru-put

Iron

It still takes time to check the queues of those priorities.

Iron

the scheduler wastes the skip time.

Iron

It takes a while for checking priority especially if missing or have a gaps.

Iron

Wasted clock cycles.

Iron

gaps in priorities , don't  slow the system

Iron

I'm suprised it does unless it's creating empty queues or tasks of the unused priorities

looking for tasks don't exist

Iron

Contiguous enumeration makes it easier calculate the index to the available tasks.

Iron

it's using clock cycles

Iron

I think it check for priority level

Iron

The system has to check more sequences?

Iron

They are still preformed in serial

Iron

I would assume that the system checks each priority to see if there is a task associated with it.  Skipping numbers would cause unnecessary checks...

Iron

Can the stack size be changed during the run time?

 

Iron

context switch will take more time

Iron

I presume it's searching tables of vectors ifor non-existant routines

 

Iron

The RTOS checks to see if there is something to run at that priority.

Iron

Gaps cause the CPU to take time running clock cycles.  If there is nothing there, that time was wasted.

Iron

Sytem will need to waste time checking for tasks with those missing priorities.

Iron

I would think it scans the non existant priorities  thus wasting time.

 

I expect the proc needs to check for any other tasks at the unused priorities.

Iron

Oops Late arriving...

Iron

cj's? gaps in priorities , don't know..

It has to test for priorities that don't exist and thus spend CPU cycles to find the next task to run

Iron

I suppose the OS actually checks each priority level to see if there is a task at that priority

Gold

system probably scans through all processes looking for each priority

Iron

We're now on slide 8.

Blogger

Charles question:

Why do you think gaps in the priorities that you use cause system slowdown?

Blogger

We're now on slide 7.

Blogger

We're now on sldie 6.

Blogger

Good afternoon from Rochester, NY

Iron

We're now on sldie 4.

Blogger

We're now on slide 3.

Blogger

We're now on slide 2.

Blogger

Hey from Charlotte

Iron

We're now on slide 1.

Blogger

Howdy from Tomball, TEXAS!

Iron

Hello from Oviedo, Spain

Iron

Hello from Montreal, Qc

Iron

Hello again from Denver area!

Hi all from NY upstate

 

Iron

hello everyone from Timisoara

Iron

Hi all -Audio is live! If you don't see the audio bar at the top of the screen, please refresh your browser. It may take a couple tries. When you see the audio bar, if it doesn't start automatically, hit the play button. If you experience audio interruptions and are using IE, try using FF or Chrome as your browser. Many people experience issues with IE. Also, make sure your flash player is updated with the current version. Some companies block live audio streams, so if that is the case for your company, the class will be archived on this page immediately following the class and you can listen then. People don't experience any issues with the audio for the archived version.

Hello from Calgary Alberta

Hi from Toronto, spring has arrived

Iron

Hello from Pittsburg, KS

 

Iron

cloudy in Lincoln NE

Iron

Hello from Greensboro, NC

Iron

Hello from Albuquerque.

Iron

Hello from Pearland, TX

Iron

Hello from Montreal, Quebec

Iron

Greetings from Vermont, 50 degF, winds 16MPH gusting to 27

Iron

@charles looking at shaker I see kwikstik40x256_Int_Flash_Debug and  kwikstik40x256_Int_Flash_release. The error I send you was for  kwikstik40x256_Int_Flash_release. when I switched to kwikstik40x256_Int_Flash_Debug it is asking me to make changes to the header file??

Iron

Hi from Montreal, Canada!

 

Iron

Hello from Co Springs!

Iron

Greetings from Boston MA. A breezy 56 degF day!

Iron

Hello from sunny Asheville, NC! A pleasant 68F here

Iron

How are you Charles and Rob? I am looking forward for another great lecture

Iron

Hello from Thornville, Ohio

Iron

hi again from Guadalajara!

-The streaming audio player will appear at the top of this web page when the show starts at 2 PM Eastern time today. When you see it, click on the play button to start the audio. Note however, that some companies block live audio streams. If when the show starts, the audio bar doesn't appear or you don't hear any audio, try refreshing your browser. If that doesn't work, try using Firefox or Google Chrome as your browser. Some users experience audio interruptions with IE. Also, make sure your flash player is updated with the current version. If that doesn't work, the class will be archived immediately following our live taping. You shouldn't experience any problems with the audio when listening on-demand.

Blogger

How is everyone doing? I hope everyone is well.

Iron

Hello from Summerville, SC

Iron

Hello from Sunny Longmont, CO

Iron

@charles yes I did all! after it failed, I cleaned and build both BSP and PSP it was good. When I tied to build Shaker after the failure, it does not perform it. there is an x on the Shaker.Any suggestion of what to do? thanks 

Iron

Greetings from sunny (but chilly) Buffalo, NY!

Iron

Another gorgeous spring day in HOUSTON!

Iron

Hello again from Long Island, NY

Iron

Hi from sunny Pennsylvania!

Iron

@vic14 - did you import and build the BSP and PSP files? There is a missing path in the linker and that is a common reason.

Iron

@Charles  Yesterday I received the following when I ran the debug: "mingw32-make: *** No rule to make target `C:/Freescale/Freescale_MQX_4_1/lib/kwikstikk40x256.cw10gcc/release/bsp/intflash.ld', needed by `explicit-dependencies'."  Stop. Shaker C/C+ Problem

whay did I get this? thanks

Iron

Hello from Montana

Gold

Hello from Chicago

Iron

Conected and waiting in WI.

Iron

-Be sure to click 'Today's Slide Deck' under Special Educational Materials above right to download the PowerPoint for today's session.

Blogger

Hello from sunny SE Lake Simcoe Ontario Canada.

Iron

The slides are now available.

Blogger

good morning from Detroit!

You are eligible to earn IEEE Professional Development Hours by attending these courses and participating in the chat function. Additionally, we are no longer using the points system, offering "graduation", or giving grades. The IEEE hours are taking the place of that. There are some important things for you to know about earning the hours. The most important ones are that you need to attend these courses live, you need to attend a minimum of two of them per semester, you need to fill out a course evaluation form within 2 weeks of the end of the class, you need to attend 4 out of the 5 classes per course, and you need to participate in the chat function every day you attend. Please click on the link at the top of this page that says "How do I earn IEEE professional development hours" to read all of these important details and more.

Blogger

An aside - I am working on my next talk here (in June) on the industrial applications of IoT - if any of you have thoughts on what you would like to see (or feedback) please feel free to contact me. My email is on the last slide of all of my presentations. THANKS!!! Talk to you in a little over an hour!

Iron

Your instructor has FINALLY uploaded the files to Design News.  They will be posted soon (whew!) There were some issues with CodeWarrior 10.6... if any of you are having issues with not responding etc you are not alone...

Iron

The slide deck will be up soon.

Blogger

Hello from Albuquerque, New Mexico.

Blogger

-Please join our Digi-Key Continuing Education Center LinkedIn Group at http://linkd.in/yoNGeY and be sure to follow @designnews and @DigiKeyCEC on Twitter for the latest class information. We encourage you to tweet about today's class using #DigiKeyCEC.

Blogger

Are slides available yet?



Partner Zone
Latest Analysis
Researchers in Canada have developed a chin strap that harvests energy from chewing and can potentially power a digital earplug that can provide both protection and communication capabilities.
In case you haven't heard, the deadline to enter the 2014 Golden Mousetrap Awards is coming up fast Oct. 28! Have you entered yet?
Made by Monkeys highlights products that somehow slipped by the QC cops.
A Tokyo company, Miraisens Inc., has unveiled a device that allows users to move virtual 3D objects around and "feel" them via a vibration sensor. The device has many applications within the gaming, medical, and 3D-printing industries.
In the last few years, use of CFD in building design has increased manifolds. Computational fluid dynamics is effective in analyzing the flow and thermal properties of air within spaces. It can be used in buildings to find the best measures for comfortable temperature at low energy use.
More:Blogs|News
Design News Webinar Series
9/25/2014 11:00 a.m. California / 2:00 p.m. New York
9/10/2014 11:00 a.m. California / 2:00 p.m. New York
7/23/2014 11:00 a.m. California / 2:00 p.m. New York
10/7/2014 8:00 a.m. California / 11:00 a.m. New York
Quick Poll
The Continuing Education Center offers engineers an entirely new way to get the education they need to formulate next-generation solutions.
Oct 20 - 24, How to Design & Build an Embedded Web Server: An Embedded TCP/IP Tutorial
SEMESTERS: 1  |  2  |  3  |  4  |  5  |  6


Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.
Next Class: October 2
Sponsored by Altera
Learn More   |   Login   |   Archived Classes
Twitter Feed
Design News Twitter Feed
Like Us on Facebook

Sponsored Content

Technology Marketplace

Copyright © 2014 UBM Canon, A UBM company, All rights reserved. Privacy Policy | Terms of Service