This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

GUI composer 5.5 Modem example app.js no data.

Guru 56093 points
Other Parts Discussed in Thread: LM3S8971

Anyone know the proper syntax allowing a widget (submit, value button) to output the binding post function calling the named value:, a function() embedded in the target?

Adding a statement on a value button to call remote target functions merely resets repaints the GUI screen when forwarding the value: of the button holding the target function symbol name. The button should submit that value a function of the target into the Json post-processor for output into the XDS100v2 simulator. Don't work for some reason?

The Wiki page example: Modems Dial widget post-processing (Output to Target) value: entry in (app.js) is missing. BTW: User has to zip the modem project files importing to composer albeit either the import forced conversion v.5.x up to v.5.5 might be stripping the data from app.js?  Wiki article claims a modem.zip to be available but can not find link to the zip.

Below is simple output post-process function not working:

}

function Run_Submit(valueToTarget) {

return valueToTarget;

//return valueFromTarget;

}

  • Hi Brett,

    There is no builtin infrastructure in GUI Composer to perform RPC to your target code. You can implement your own RPC by monitoring a variable on your target and use GUI Composer to write to this variable.

    Regards,
    Patrick

  • Patrick thanks for info but simply trying to send a name string using a built in widget to invoke the remote function by its external symbol name.

    Could the problem actually be the target symbol to be transmitted must first be convert from ASCII string value into a hex string value so the MPU will execute the binary string or am I just over simplifying the entire issue?

    Really strange the MPU can assert a variable symbol on target but not a external function symbol, something is up with that.

     

  • Calling a function is not the same as reading and writing memory from/to the target. Yes, each symbol on the target can be evaluated to an address, but having the host PC to invoke a function on the target is not the same as read or writing memory. 

    We have discussed in the past for been able to call a function on the target, but work hasn't started yet.

    Patrick

  • Really just assumed being a GUI it could have some higher capability into the target environment without having to  write several new triggered variables assuming here to be more advance Boolean switch structures?

    Stellaris LM3s8971 code did not ventured into object classes such the C2000 code uses extensively. Many check boxes (not buttons) in the Insta-spin web GUI and see no special code in the object classes to invoke the target functions makes this ability more obscure. 

  • Hi Brett, 

    C2000 InstaSpin GUI does not perform function calls. Every single GUI element gets and sets its data through reading/writing global variables, where target code spins in a loop to interpret those variables and take necessary actions. 

    Martin

  • Thanks Martin not really the best way to do things but do see the limitation of doing business in a Debug secession comes at the expense of functionality at least for now. Not a complaint at all GCP5.5 is a fantastic user interface generating tool. One easily gets fooled by the power of this box under the table. :)

    Placing a call to the spinning code in systick seems to handle the looping method class using button widgets set as button in GUI composer (button submit is openGl disruptive) for some reason. Of course the remote target variable has to be assigned external in *.h.

    void

    uiGUISwitchVars(void)

    {

    if (ucMainRunWidget == 1)

    {

    MainRun();

    }

     

     

  • You are absolutely correct that a better option would be some sort of RPC framework in this case. We are considering this for a future version of GC. It would require an agent of some sort on the target side to be able to handle and dispatch those request. 

    martin

  • Another wild future idea is a virtual GUI debug shell tied to JTAG registers with a small FAT, any RDK can run a GUI on board using LCD display making great use of user friendly GUI creation tools.

    Back in the 80's worked for a company had a debugger prom, 32KB built around i8085/i80286 machine code. We used to IPL computer HDD from streamer tape commands entered through the debug console, a CRT connected to the RS232 port.