Page 1 of 1

Interface Panel Time Plot forgetting 'Auto' time axis

Posted: Mon Apr 05, 2021 8:01 am
by adbgw
MegunoLink v 1.33.21076.317

I have a Time Plot on an Interface Panel.

In the Interface Designer I've set the X-Axis Major Tick to 1 minute and Minor Tick to 5 seconds, and checked Auto for both Minimum and Maximum.

When I click Apply the Time Plot on the 'live' Interface Panel resets (clears) Auto for X-Axis Minimum and Maximum - I have to open the Plot Properties and manually check them.

Furthermore the Interface Designer forgets that Auto was checked and clears it. Not sure what triggers this, but it happens frequently.

Additionally :) each time I enter the Plot's properties it reduces the font sizes for the chart and axis titles, and after a few times the fonts become really small, like 2 or 3 points. I change it back to something readable, like 12 or 20pt, and it uses that font until I display the properties again, when it shrinks them again.

As I intend to buy Builder, to create an interface panel for a project I'm working on for a client, I'd like to have the chart stay the way I designed it. Ideally I want to hide all the Plot's user controls so the client can't change it.

(BTW Unrelated, and not a concern, but the MegunoLink Library for MPLABX does not work on MPLABX v5.45 and MCC v4.0.2 "Incompatible with the current core version. Library built with core 4.65".)



Re: Interface Panel Time Plot forgetting 'Auto' time axis

Posted: Tue Apr 06, 2021 5:51 am
by adbgw
Furthermore, is it possible to assign a series to the left or right axis at design time? If not, it should be :).

[The micro should not have to set that, as its a UI property, and the micro should not have to know which axis any particular series is being plotted against. Likewise, colour, etc.]

In fact it should be possible to set all series properties - colour, marker, axis, etc - in the Designer, rather than having to do it at runtime either from the micro or using the plot's series properties control.

Re: Interface Panel Time Plot forgetting 'Auto' time axis

Posted: Wed Apr 07, 2021 2:32 am
by adbgw
Yet another bug with the Time Plot and Auto time axis : If you disable the serial source, clear the plot's series, set the min and max time to Auto, re-enable the serial source, MeguLink will hang when it receives the first TIMEPLOT command.

Re: Interface Panel Time Plot forgetting 'Auto' time axis

Posted: Wed Apr 07, 2021 2:59 am
by adbgw
YAB (Yet Another Bug), this time relating to Gauge Labels: when a project is opened the last Label on each Gauge does not display. Eg if there are 3 labels only the first two are displayed; if there is only one label, nothing is displayed.

You can force the labels to be displayed by opening the Designer, making some change, and clicking Apply.

Workaround is to add one more, blank, label than actually required.

Re: Interface Panel Time Plot forgetting 'Auto' time axis

Posted: Sun Apr 11, 2021 1:24 pm
by adbgw
Some more random observations:
- Cutting and pasting a control in the Interface Designer resets the control's name, requiring the name to be manually reentered.
- Pasted controls always position to the middle of the parent control, instead of remembering their previous position.
- Interface Designer does not remember its layout. Eg you can rearrange and dock the Toolbox and Properties panels, but they always revert to their former sizes and locations.
- Setting a Gauge's GaugeAutoSize to false moves the needle's pivot point, and there doesn't appear to be a way to manually set the pivot point. So have to leave GaugeAutoSize set to true.
- At least the first gauge label should be drawn after the needle, in case the label is displaying the value and is positioned where the needle will at times cover it.
- 'Half circle' gauges - eg BaseArcStart 180, BaseArcSweep 180 - only use the top half of the assigned size.
- There should be a way to delay all responses by a few ms to facilitate use with half-duplex comms, eg RS485.
- Commands are a bit long, and abbreviated forms would save micro ROM and RAM space.
- Would be nice if MLPUIMessageProcessor was enhanced to allow processing of incoming messages from micro. Eg to have one message update both a gauge and a time plot.
- Some basic scripting within the Interface Panel itself would be nice. Eg ability to disable controls based on checkbox. (This could be done by allowing MessageProcessor to intercept send messages and generate its own reply, for processing by the Interface Panel. Similar scheme for received data could handle my previous point, by intercepting received message and generating different, and possibly multiple, message(s) for handling by Interface Panel.)

Re: Interface Panel Time Plot forgetting 'Auto' time axis

Posted: Mon Apr 19, 2021 8:43 am
by Paul
Thanks for your questions and comments. Unfortunately most are bugs that have crept through our internal testing. I don't have solutions yet, but will get them resolved as soon as possible.

Scripting comes up every so often, but we are quite worried that scripting would be too complex for people to use.

MegunoLink does keep track of default series styles internally and the latest release lets you edit them. You can use this to set up the UI (assign axis, colors etc) independently of the micro. Newly documented here: ... es-styles/.