MakerPlot-J
Revision Notes
Version 1.000 has been released for Windows. Linux versions
are still essentially in beta, though the release will show same as Windows
Version.
Version 1.220 - May
28, 2024
·
Fixed a problem on populating ListBoxes on editor creation
·
Modified to show controls set to be
non-visible when in edit mode. May be turned off with main Interface property showInvisibleOnEdit.
·
Added Flip Horiz
and Flip Vert popup menus to image controls and canvas control in edit mode.
·
Added Lock Manual State popup menu
to Image Toggle Buttons in edit mode
·
Added Editable popup menu choice to
text and textArea boxes in edit mode
·
Added clearing constant drawing
popup menu to Canvas in edit mode
·
Added Run choices to Timer Control
popup menu
·
Added Enable Logging and Open
Logging Editor to popup menu for logging control
·
Added Clear popup menu to ListBox
Version 1.210 - May
18, 2024
·
Corrected an issue with controls
moving between interfaces on save and open interfaces.
·
Corrected an issue with plot time
values showing NaN (Not a Number).
·
Added properties of flipHoriz and FlipVert
to Image button style controls and the canvas background image.
·
Modified Child Interface loads to
not appear/disappear if set to not visible or hideOnLoad
is set.
·
Lacking any big issues, this will be
the last update for a while as we work on changes.
Version 1.200 - May
15, 2024
·
New, faster loading, cleaner
selection interface. Old version available in interfaces/index.htm
·
Corrected an issue to keep Child
Interfaces on the screen when creating.
·
Other small non-critical updates.
Version 1.100 - April
26, 2024
·
Corrected a bug which prevented
standard radio controls from being created.
·
Added popup menus for Interfaces and
Controls to allow choices for cut/copy/paste/duplicate while in Edit Mode.
·
Added popup menus for Move to Top/Bottom/Move
Up/Move Down to set zOrder of controls.
·
Control and Interfaces menus will
have specific control properties added for often-used needs in upcoming
updates.
·
Changed the licensing scheme to
allow "Personal" licenses of the development use for personal-home
use at lower costs.
·
Renamed "Individual"
license type to "Standard" for standard development licenses in About
menu.
·
Added "Personal" Licenses
for at-home, non-commercial use with development use.
·
Updated the EULA to reflect license
types. Please See Licenses and Limitations and the License Agreement (EULA).
Version 1.010 - April 15, 2024
·
Starting May 15, 2024, the free
trial time will be 7 days instead of 30.
·
Fixed zOrder
for new canvas controls to be on top.
·
Changed DumpInterval
to be a property to allow saving/loading.
·
Corrected an error when plotting
both analog and digital dumped data.
·
Added means to import data from a
file with help instructions, see Import Data
File
Version 1.006 - April
7, 2024
·
Updated how registration information
is saved due to issues with it not working for some.
Version 1.005 - April
3, 2024
·
Corrected a problem of removing icon
images from various controls if deleted in properties.
·
More consistent updating of meter
values
·
Corrected errors in the HMI Example
Version 1.001 - March
31, 2024
·
Missed some HMI Symbols required in
the initial release.
Version 1.000 - March
31, 2024
·
Released as Version 1.000. There
will always be things to correct/modify/add but we feel the software is stable
enough to release as non-beta.
·
Added the HMI Simulator code to the
installed files!
·
Upcoming Immediate Plans:
·
Continue to seek out and fix
remaining bugs.
·
Revise the Selection Interface for
faster loading and sleeker look.
·
Adding more graphical functionality
to canvas controls.
·
Add pop-up menus to controls for
easier development and use.
Version 0.99970 - March
30, 2024
·
Corrected a bug where control placed
on child interface was not showing in editor on creation.
·
Added "Resize Interface on
Load" to main Interface - See Interfaces Menu
·
Saves Interface Controls Silence and
Resize settings to MPJ Settings to save for next app run.
·
Corrected the progressBar
to accept floats, will round to an integer (plus spinners and sliders).
·
Added vert and horiz
properties to progressBar instead of relying on
aspect only.
·
Correct a problem with digital plots
returning the wrong mouseY position
·
Reordered the zOrder
so that newer controls have the lowest Zorder (on
top).
·
Revised the save interface routine
to used the Interface/zOrder
List in the interface editor
·
Add a <timer> event to
canvas controls, timerInterval property sets
the time of events down to 10 (10mS). 0 Turns off the event trigger.
·
Added standard and other HMI Symbols
to the media library - Thanks to Open Architecture Software (OAS) for the use
of these symbols
·
Added 3 new Interfaces including HMI
Example.
·
Added Arduino code to simulate
system conditions for the HMI Example
Version 0.99936 - March
16, 2024
·
Fixed a bug created last update
which prevents textboxes from using the update value.
·
Added hideMenus
property for Child Interfaces. Note: F3 for the Interface Editor window and
other F-keys only respond on the background, not specific controls on the Child
Interface.
Version 0.99935 - March
14, 2024
·
Corrected an issue where some
control with update values, such textboxes, were not changing the intended
properties due to asynchronous nature of updates/changes.
·
Added hideOnLoad
property to hide child interfaces once the interface loads. It is off by
default.
·
Greatly reduced CPU cycle use when
updating meters and other controls.
·
Hopefully fixed the issue of not
being able to register unless being run under admin account.
Version 0.99930 - March
3, 2024
·
Added the Data Modifier (See
Data Menu) to quickly and globally scale incoming analog data and parse data
from incoming message strings.
·
NOTE: A User has reported
the registration feature would not work until they ran the software as the
Administrator. This may effect saving data as well, Investigating a fix.
Version 0.99927 - February 25, 2024
• Added properties to the analog plot’s to select point colors – colorPointChx.
• Modified the Registration Window to better show
the OK button.
Version 0.99926 - February 17, 2024
•Added a means to silence control sounds for the environment via a
menu under the Main Interface: Interfaces menu.
•Added documentation on plotting from non-standard strings, see
help files, Parsing Message Strings for Plotting.
•Added a <message> event to analog plots.
•Reformatted some tables for the PDF version of this manual.
•Added more text tips to the interface.
Version 0.99924 - February
4, 2024
·
Added FREE Home use, Non-Developer’s
License. See the registration menu. If the registration menu is not showing,
use the Debug/CLI (F4) and enter !showReg
Version 0.99923 - February
3, 2024
·
Corrected a bug where saying NO to
exit, exited anyway.
·
Added lockSize
(prevents resizing/maximizing) and maximized properties to the main
interface.
·
Saving the interface will now save
its state (normal or maximized) and the position & size of the main
interface.
·
zOrder
works on Child Interfaces now. See Setting
Control Order.
·
The Interface Editor now lists
objects by interface and by zOrder on the interface.
Interface saves are structured in the same manner.
·
The zOrder
of plots may now be set.
·
Using a textbox on top of a plot
requires the mouse pointer to stay over the text control when changing values
in it or the plot will grab focus.
Version 0.99921 – January
28, 2024
Corrects an error saving interfaces
which contains a Child Interface and showing all controls in the Interface
Editor.
Version 0.99920 - January
27, 2024
This update is based on
recommendations by users, mainly on the forum.
·
Added a major and minor grid width
properties to the analog plot and to the plot settings window.
·
When text-style controls are
non-editable, disabled turning it yellow on changes.
·
Hiding the Analog Legend checkboxes
when the legend is turned off (showChLegend).
·
MPJ will NOT ask if you wish to exit
when closing unless the user has opened the Controls Palette (F2), the
Interface Editor Window (F3) or entered Edit Mode (F9).
·
Began work on setting the order of
control (which is on top). All controls except for plots may have the zOrder set and whether to refresh (zRepaint) when the analog plot refreshes. Please see
Setting Control Order.
Version 0.99910 - January
20, 2024
_ A user reported black plots, meters not showing
properly, etc.
We've corrected the software to use US/English regional settings. Our apologies
to any non-US number formatted users!!! But also please be sure to use the
format of 1.234 and not 1,234 for decimal places where number input is needed.
Version 0.99900 - January
19, 2024
_ Revised the digital plots operation (mouse drags, etc) to match the analog plots.
_ Corrected a bug where plotting with plotName.plotChan
within an !if had incorrect timing. Still need to correct in digital plots.
_ Added a multiple plot example MPJ code to help files for
the ADC-10-F103C and example of scaling data.
Version 0.99850 - December
28, 2023
_ Digital data may now be plotted on analog plots to allow
easier analysis and require only 1 plot saving space.
_ The order of din0 to din99, the bits of a digital data
string, have been reversed to clear up confusion. The order is din0 is the LSB
now to match how channels and bits on plots are ordered.
_ Added light crosshairs to the analog plot.
_ Planned work before final release:
_Rework the digital plot to be more
similar in control action to the analog plot.
_Review/clean up the help files and
intrinsic help.
Version 0.99840 - December 20, 2023
_
Changed the serial connection limit to 10 minutes when not registered.
_ Corrected issue with multiple serial ports causing
processing.
_ Added a sec/div textbox to analog plots.
_ Improved operation of scroll horizontal scroll bar on
analog plot - Press space to resume instead of double-click.
_ Improved operation of pausing the plot between plot
dragging, pause button and X-axis scroll bar pausing.
_ Added Terminal Mode to Debug for direct communications to
the Serial port for testing. The port must be named 'serial'. Neither data from
Debug/Immediate or the controller will be processed by MPJ for operation. Data
is sent ending with a \n\r.
Version 0.99831 - October 23, 2023
_By Popular Demand - Buttonized the plot control controls.
_With drawText you may use \n in
the string for a new line\carriage return
_Fixed an issue with a lag in changing value when using plot.plotChan.
_Added support for the ADC-10-F103C ADC Module - Use the Devices
menu and select the device. It will place code in the Main Interface Event Code
to parse the strings from the device.
Version 0.99830 - October 20, 2023
_ We believe the reconnect on serial disconnect is fixed.
_ Corrected significant problems with single analog channel
plotting using plot.plotChan channel, value:
_ Corrected to use Pre-Formula
scaling.
_ Corrected an error where traces
were disappearing.
_ Modified the Four-Plots Interface
to show min/max/avg data better and added a textbox to name the file to be
logged to.
_ Modified the Serial Control to
allow it to be made smaller but usable still.
Version 0.99822 - October 10, 2023
_Refined interval timing with new
operations called Interval Data and Timed Data.
_Interval Data allow simpler strings
to define the time elapsed since last data, once enabled:
3, 10, 20 will plot 10 and 20 three seconds after the last sample.
_Timed Data allows setting the
actual time of the data in seconds:
3, 10, 20 will plot 10 and 20 at three seconds on the x-axis.
_Please see Interval
Timing of Data in Help Files
_Enabled the "Plot Styles"
setting of analog plots in the pop-up menu to enable/disable showing points and
lines for non-XY plot types to accurately view where plotted points are.
_Renamed "Main" menu to
"Data".
_Added Code examples for Parallax
Propeller 2 in Spin.
_Analog/Digital Plotting
_Interactive Control
_High Speed ADC Sampling with
Dumping by Interval
_Timed Data saved to Propeller
microSD Card and dumping timed data to MJP.
Version 0.99821 - September 24, 2023
_ Corrected reading analog channels
from a second serial port.
_ Posted a video on using 2 serial
ports on the website.
_ Added two forms of plotting by defined interval time for precise
timing of sent data allowing plotting resolution down to
1nanosecond! Please see help file version updates.
_ Added a
"Main" menu to the main interface for interval timing and other
features that may be placed there.
_Some
updates to the digital plot, but still needs work to bring it up to analog plot
features.
Version 0.99801
– August 11, 2023
_ Fixed a problem where plot resets
with data in processing queue caused to plot at times less than 0 seconds.
Version 0.99800 - August 8, 2023
_ improved plot timing resolution from 1mS to 200nS!
_ Increased instruction and data processing speed by nearly a
factor of 10!
_ Greatly reduced CPU usage under light plotting needs!
Version 0.99702
– August 3, 2023
_ Fixed a problem introduced into plot.plotChan instruction
_ Prevents deleting a control when
not in Edit Mode.
Version 0.99701
- July 31, 2023
_ Moved Shorthand Edit to the Edit
menu...
_ Added Import Shorthand List to
import from other interface directories.
_ Added !plot.store
to store a review point in code (like s key) that can be revisited using b
(back) and f (forward) keys.
_ Suspend shifting when b is press
to review a stored point. Press space to resume shifting.
_ Increased number of stored points
to 100.
_ Added 3D
Circle Macro Child Interface, use File -->
Run Macro from Folder
_ Fixed a
problem with states of standard radio buttons.
_ Added
post-Plot formulas to Analog Plot Settings to allow applying a formula to a
plotted channel without affecting the raw data to plot it. Please see Settings
Window.
_ Moving a
plot manually will cause shifting to pause. To re-enable shifting:
Hit the space bar
Move the X-scrollbar full right
Drag the plot so the end is before X-Max
_ Hitting
space-bar while plotting will pause plotting. Hit it again to re-enable
plotting. Ensure cursor is over the plot.
_ Added
Shorthand features for sending serial data or using the Debug/CLI, so that long
strings can minimize controller memory and transmission time. These are not
meant for use in Event Code. For examples, the following defines a shorthand
term and definition:
^pcn^ !plot.drawCircle [plot.now],[plot.ch0],3,RED
Please see the Main Interface's Edit Menu for more information.
_ Added a
PDF of the reference file to Help per user request.
_ Returned
to 30 Day evaluation with 30-minute connection limit.
Version 0.99655
_
Implemented a control name refractor - When you change the name of a control it
asks if you want to update all controls that referenced this one, so that it
will update any event code, properties and update values which referenced that
changed control name.
Version 0.99652
_
Mouse over plot and use SPACE-BAR to pause/start plotting.
_ [plot.now] can be used in place of [plot.plotTimeSeconds]
_
Added drawFont for drawing instructions
on Interface, plots, etc.
!plot.drawFont Arial
_ The
Analog plot now has a property, fontDraw, that
when selected will issues a !plot.drawFont
instruction in-line with other drawing instructions so that different text can
have different fonts. Issue first one before any text is drawn if you plan on
changing font during drawing.
_
Drawing instruction abbreviations are available to reduce data size and
transmission requirements from a microcontroller.
Version 0.9965
_ Changed connection limit to 7-day
testing and 10-minute continuous connection limit.
_ Bug fix to stop duplicate named controls from being created.
_
Allows saving an analog plot's axis settings for cycling through saves for data
review, allow to mark points while plotting, then pause or stop plotting and
review them, or using them for analysis aspects.
_ Ensure the mouse cursor is over
the plot.
_ Press 's' to save axis settings.
_ Press 'b' to go back through saved
settings.
_ Press 'f' to go forward again.
_ Press 'c' to clear save settings.
_ Current maximum of 20 settings
will be saved, after that the oldest will be removed when adding new.
Version 0.9964
_ We
have changed the license keys. MakerPlot-
registrations keys will need an upgrade. If you purchased a license after July
2022, please Email us with your old registration key: support@selmaware.com
If not, please see our upgrade or purchase options at makerplot-j.com
New codes are prefixed with MakerPlotJ vs. MakerPlot
Version 0.9963
_
Various bug fixes.
_
Allows use of ALT-Left-Mouse drag for measurements since right-mouse opens
pop-up on pressed on MacOS.
_
Warning for unregistered users that only 5 controls will be saved for an
interface file.
Version
0.9962 – July 14, 2023
_ Corrected issues with Saving/Loading Interface Settings and
various default paths for files.
_
Expanded saving settings to include nearly all properties except position and
code for all controls.
_
Changed Label and Canvas controls to run "click" event code without
the <click> if desired.
_
Cleaned up some interfaces.
_
Adjusted Plot Pause to prevent deleting old data points and work with XY Plots.
Version 0.996 – July 12, 2023
_ A
number of changes have been made to the analog plot control. Please see the
reference files, Updates.
-
Added save instruction to analog and digital plots
!plot.save filename
!plot.save mydata_[systemDateDash]
-
Fixed a bug where first item in Interface Editor was not
showing help correctly when right-clicked.
-
Added Clear Drawings and Clear Constant Drawings to pop-up menu for plots
-
Added saving of 'normal' plot drawings as well as constant
drawings to plot saves/loads
(Added for digital too)
-
Digital Plots were reduced just single high and low colors
instead of per channel.
-
Modified plot snapshot default directory to be the interface's
directory, [path] instead
of /snapshots to allow different interfaces to use the same filename.
!plot.snap myplot.png
-
Modified the Serial Control:
-- Added choice & property to use the connectionString - ran when connecting
-- Modified colors
-- Made colors & border color selectable as
properties
-- Corrected an issue of reconnecting when disconnecting
-
Greatly Improved CPU usage when images are used as background
on main interface
-
Added <cond1> <cond2> and
<cond3> Event triggers for logging
controls to run code
when an event trigger is true.
Release 0.99 – March 4, 2023
_ Large
updates to the help/reference files.
_ Multiple !dialogInfo string and !dialogWarning
string will add the string specified to the info or warning window instead
of creating new windows for each.
_ Added a user
property to all interfaces and controls for developer's use.
_ Variables
contain ? on creation with no initialization or assignment.
!makeVar varTest
? [varTest]
_
Redeclaring a variable once declared with an assignment will update its value:
!makeVar test=20
It is recommended to create variables as part of a control's or
interface's load event:
<load>!makeVar
test=20
Use !runLoad to declare and
initialize during development in the Debug/CLI.
!runLoad
In Version 0.95 the redeclaration will NOT affect the value of the
variable.
_ Added a
for-Loop which can use floating point values: forLoopFP
_ Corrected
runMacro to place contents on the top of the
queue for processing.
_ Fixed a
problem converting image paths to [path] when saving the interface.
_ Added !messageShow and !messageClear
to the Message Window instructions
help reference.
Also added support for \t and \n.
_ Modified
the selectable 7-segment display to have a index
scale range of 0 to 9 instead of 0 to 100.
_ Added decimalPlace property to the Canvas Control
to define which decimal value in a number to use for indexing. Please see
Indexed Decimal Place help reference,
_ Darkened
the unlit segments on the 7-Segment display to make values more readable.
Release 0.985 – Oct 8, 2022
-
Modified installed interfaces to use !snapInterface
instead of !snapDisplay as shown in release
0.980 information.
- Released MacOS Version and Linux Versions (Linux not yet tested by us). File
icon files and associations need some work, updater seems to work.
Release 0.981 – Oct 5, 2022
-
Correction to the registration code checker, if you have issues using old MakerPlot codes, please let us know.
Release 0.980
_
Reworked ‘snap’ routines
‘snap’
takes a snapshot of the interface calling it, but can cause lockups. Can be
minimized.
‘snapInterface’ takes a snapshot using the OS’s
screenshot call of the interface, must be visible, MPJ will attempt to make it
so. Must be on the primary display.
‘snapScreen’ take a snapshot of the entire primary
display using the OS’s screenshot call.
Release 0.975 – 08/08/22
_
Reworked the Serial Port Connect/Disconnect routines
_ Reworked the Control Update code, now updated every 50mS, removed option for
Run Updates on Analog/Digital as unnecessary.
_ Modified reference help files to discuss installed code
Release 0.973 – 08/07/22
_
Corrected an issue with serial port disconnecting
Release 0.972 – 08/06/22
This is planned to be the last update with any significant changes as we focus
on help file, remaining bug fixes.
_ First release to have a Windows Installer
Certification License!
_ Added stack operations to processing values/operations
_ Each control have their own instances of math operations to prevent
cross-contamination of the stack
_ Fixed problems with [var++] and similar
_ Improved stack processing
Release 0.970 – 08/03/22
_ Update of installed plot select interfaces.
_ Fixed memory leak of playing sounds
_ For logging control, renamed “logPathFile” to
“fileName”
_ Added manual logging instruction for logs, !controlName.logData
string
_ Added <log> event for logs for manual logging (logData string).
_ Fixed last snapshot names.
_ Refined meter alarming operation:
_ When
alarming is off, properties of .highAlarm and .lowAlarm will be set/cleared depending on data.
_ Added a .soundAlarm property to silence the alarm but leave alarming
enable, accessible through the meter popup menu.
_ Increased
the size of vertical/horizontal meter needles.
Release 0.960 – 07/27/2022
_ Worked on preventing lockups when !snap is issued,
little success
_ Added a WatchDog Timer to
monitor the queue processing and start a new instance if needed.
_ Added a Macro Menu that lists the macro files in the
Macro directory
Release 0.955 – 07/25/2022
_ Various fixes and updates.
_ Fixed an issue with gradual slowing of software when
using message data
_ Fixed issue with some registration keys not working.
_ Added a macro to create a plot control interface for any
plot.
_ Modified macros to request parameter list from user plus
description, added to File Menu.
_ Added “alwaysOnTop” property
and menu choice items to child Interfaces.
_ Added “Stay on Top” checkbox to Interface editor.
_ Added time operations to Post-Fix Math.
_ Implemented redundancyCheck
for serial control – must receive 2 identical strings before being processed
when enabled.
_ Improved graphics scaling routines for image buttons
_ Disabled autoscaling when Reset Scales is used.
Release 0.940 – 07/15/2022
_ Implemented registration licensing, not required for now
but can be used.
_ Modified Edit Menu and Edit Mode. Locking edit mode not
fully implemented yet
_ Reopened Beta
_ Implemented button Icons
Release 0.925 Beta – 06/30/2022
_ Modified plot control buttons to be more intuitively
placed icons
_ Changed formatting of reference files.
Release 0.921 Beta – 06/27/2022
_ Changed thickness of analog/digital plot channels.
_ Changed digital plots to red/green
_ Partial bug fix on digital issues. Still seems to
disappear after a while.
Release 0.920 Beta – 06/27/2022
_ Corrected an issue where non-leading 0’s for digital
plots were plotted as HIGHs.
_ Added ‘Take Snapshot’ to Interfaces Menu on main and
child interfaces.
_ Added ‘Folders’ menu to access common folders.
_ Corrected <load> to show on all controls and NOT
show main events unless main selected for the Code Editor.
_ Added “edit comments” to edit window to allow developers
to add comment header (name, date, etc.). It’ll be listed in the generated code
as comments. (not yet adopted in selectable interfaces)
_ Added “edit about” to edit menu to allow developers to
add an about which can be viewed under the “help” menu or opened with !showAbout from code. (not yet adopted in selectable
interfaces)
_ Cleanup the edit-->Cut/Copy/Paste menu item.
_ Moved “unlock for editing” to the edit menu.
_ Moved “New Interface” to the edit menu.
_ Adapted code to allow assigning on null. !txtTest=
_ Fixed the forLoop to
accommodate values, [], in the string to be processed
_ Various clean-ups of processing code.
Release 0.912 Beta – 06/23/2022
_ Corrected an issue with serial data caused in a recent
update.
_ Corrected image paths for controls
_ Added ‘flat’ control ovals to Control Palette.
Release 0.910 Beta
_ Modified load routines to overcome issues with F-keys not
functioning on load. Seems to be better?
_ Added logo to screen on load.
_ Added table popups to Debug/CLI and Code Editor. Select
and right-click. Select and press F1 to show in Debug text.
Release 0.909 Beta
_ New main interface properties to update controls on
analog or digital arrival. Monitor for erratic behavior with high-speed data.
_ Added tooltip to DataLogger to
“double-click to configure” for default controls.
_ Reworked paths to show properly based on OS.
_ Hides HX plot button with others
Release 0.908 Beta – 6/20/2022
_ Fixed File --> Load on Start for new installations.
Release 0.907 Beta
_ Corrected many issues seen in beta videos including:
comboBox load,
imageRadio buttons not placing, Control Palette and
Editor positions, increased control update speed to every 100mSec.
Initial Beta Release: 0.906 Beta