What features should I expect in MQX TAD?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

What features should I expect in MQX TAD?

491 Views
dave408
Senior Contributor II

I just updated to the latest MQX TAD plugin.  Now I have less menu items available to me -- most of them are grayed out:

pastedImage_0.png

I happen to be trying to debug a problem where I have a task blocked on a LW message queue, but that option is no longer available to me in the MQX menu.  Does this imply that something is misconfigured, or that my particular project cannot support this feature?

Labels (1)
Tags (3)
0 Kudos
2 Replies

267 Views
soledad
NXP Employee
NXP Employee

Hello Dave,

You are using KDS, is this correct? Could you please post your example code in order to test it?

In my experience the options are grayed out if there is not using the services. For example I tested the hello example and only can see the below options.

pastedImage_1.png

However I added a code where a mutex is initialized then I can find the below options:

pastedImage_2.png


Have a great day,
Sol

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

267 Views
dave408
Senior Contributor II

Hi soledad, I cannot post my code, but as an example, I do have one feature that requires the LW message queue.  My modbus packet assembler ISR puts assembled packets into a LW message queue:

  if( g_modbus_state != FrameNotOk) {

   g_modbus_state = FrameOk;

   // copy message to queue

   _lwmsgq_send( (void*)packet_queue, (_mqx_max_type_ptr)g_rxbuff, 0);//LWMSGQ_SEND_BLOCK_ON_FULL);

  }

and a MQX task waits for it to arrive:

// get packet from message queue

_mqx_uint msg[64]; // max number of messages we'll support in message queue is 1 command packet

_mqx_uint timeout_sec = 2;

_mqx_uint timeout_ticks = timeout_sec * 200; // 200 ticks / sec

_mqx_uint ret = _lwmsgq_receive( (void*)packet_queue, msg, LWMSGQ_RECEIVE_BLOCK_ON_EMPTY, timeout_ticks, 0);

it's also initialized in the constructor of my modbus command handler class:

// initialize the message queue so we can get responses from the Modbus RTU slaves

_mqx_uint result = _lwmsgq_init( (void*)packet_queue, 1 /* number of message */, 64 /* message size */);

So I guess it is strange that TAD wouldn't recognize my usage of this feature.  Any other information or ideas for diagnosing this would be appreciated!

Oh, and yes, I am using KDS 3.0 with KSDK 1.2.  Smiley Happy

0 Kudos