Did the addition of state tags mess up status replies that are routed to my TCP connected UI? Data is being sent even though it was not requested at fixed intervals. This problem appeared after upgrading from a early version of 2.9 pre0 master to current version of 2.9 pre0. master. No changes have been made to it.

As far as I know the normal replies to status requests are handled by the emcmaintask at whatever rate is requested by the remote as long as it slower than the timing rate set in the .ini file. The below shows that there are seven data transmissions sent that are causing serious problems at regular intervals.

The normal transmission of status data to the remote is in response to a status peek request of buffer 2 and such a request is always constant in size with the location of data within it also being constant unless the LinuxCNC configuration is changed. Inserting a bunch of added data preset  intervals is really bad when thinking about this from a remotes point of view. In such a case the remote has to be expecting it and as a minimum need to know the size or length of the data.  Neither of those two requirements can be met right now. I suspect  that two separate processes are fighting for control with the remote ending up being the looser. A real time process and a none real time process.

I have looked at actual length of the data that is causing this issue which may be 72980 bytes. Other other data is likely being merged into it from the remote status peek requests. The long one on the end of each bad data segment is likely the TCP buffer filling up due to the remotes inability to empty it because of being locked out for a while.

I'm working around this issue temporarily by pulling the problem data out of the TCP buffer and dumping it. This does cause the loss of some status updates but allows me to continue to work on other UI work.

Is the bad data is likely being generated separately by a real time task that sends it out at specific intervals?. The below pattern is repeating over and over. Additional comment at the end.

Data error 74272 lenght is not 103716, Bad data Lenght: 74272 Data Not part of emcStatus Data error 74224 lenght is not 103716, Bad data Lenght: 74224 Data Not part of emcStatus Data error 74276 lenght is not 103716, Bad data Lenght: 74276 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74424 lenght is not 103716, Bad data Lenght: 74424 Data Not part of emcStatus Data error 74436 lenght is not 103716, Bad data Lenght: 74436 Data Not part of emcStatus Data error 280176 lenght is not 103716, Bad data Lenght: 280176 Data Not part of emcStatus
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
Data error 74272 lenght is not 103716, Bad data Lenght: 74272 Data Not part of emcStatus Data error 74224 lenght is not 103716, Bad data Lenght: 74224 Data Not part of emcStatus Data error 74276 lenght is not 103716, Bad data Lenght: 74276 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 280628 lenght is not 103716, Bad data Lenght: 280628 Data Not part of emcStatus
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
Data error 74220 lenght is not 103716, Bad data Lenght: 74220 Data Not part of emcStatus Data error 74276 lenght is not 103716, Bad data Lenght: 74276 Data Not part of emcStatus Data error 74276 lenght is not 103716, Bad data Lenght: 74276 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 280628 lenght is not 103716, Bad data Lenght: 280628 Data Not part of emcStatus
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
103716 <<<<< Data bytes matches with what was sent (maintask)
Data error 74272 lenght is not 103716, Bad data Lenght: 74272 Data Not part of emcStatus Data error 74224 lenght is not 103716, Bad data Lenght: 74224 Data Not part of emcStatus Data error 74276 lenght is not 103716, Bad data Lenght: 74276 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 74204 lenght is not 103716, Bad data Lenght: 74204 Data Not part of emcStatus Data error 280628 lenght is not 103716, Bad data Lenght: 280628 Data Not part of emcStatus

I have read some notes within files that the index position of the tags within a enum is not important. This struck me as strange since then the only way to find the right one would by through a search of some kind for name instead of direct addressing. This would seem to defeat part of the purpose of tags due to decreasing speed.  I mention this because a remote would likely expect consistency in data locations.



_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to