True, There's no reason to not have an XML file (or larger database for that matter) that includes min/max/default values along with several strings for help information. In fact a default format and standard might even be a good idea. Might be better than abstract configuration files stored all over the place.
I ran into that issue when I designed my ELS. Internally all the data shown on the LCD display along with the data and where it's displayed is all in a linked list of structures. Want another menu, insert it into the list. Min/Max and even units like metric or imperial are part of each screen's information. With an 8 bit PIC18F series the structures were hard coded. And I never did create a PC menu generator application although the infrastructure was there. Even just displaying all the .ini parameters for MachineKit in a table format with min/max/units/default values and comments that would then be parsed is better than a file with incorrect documentation. Anyway, this isn't path pilot so I've changed the subject back to MachineKit on the BeagleBone because if I understand some of the other postings correctly, none of these issues exist on the full blown PCs running Linux with mesa interface cards. It's only the baby BeagleBone that has these sorts of issues. John > -----Original Message----- > From: Chris Albertson [mailto:albertson.ch...@gmail.com] > Sent: October-13-17 12:03 AM > To: Enhanced Machine Controller (EMC) > Subject: Re: [Emc-users] Path Pilot on LinuxCNC -- Was MachineKit on the > BeagleBone Black > > there are several ways to handle this. > > (1) When an internal object needs a config file entry it defines the entry > along > with a validation method. Later the configuration form is created > dynamically > from all the parameter definitions. ou can embed the parameter definitions > right inside the files where they are used. > > (2) ROS uses an XML file to define parameters then you could have both > the HAL and > configuration form generator read the XML. If you don't like XML pick JSON or > whatever. Basically a place where parameters are defined. (If a parameter > can > be used in two places then you need a common place to define them. #1 about > won't work.) > > (3) Parameter servers are another good idea. You include a process who's > job it is to manage parameters. It can accept and store both parameter's > metadata (type, validation rules and access controls ) as well as the value. > Then you might add a GIU so the values could be manly changed. These > are much nicer then config files. These can be as simple as just using > Berkeley DB. > > More ways I'm sure but, point is you don't have to give up flexibility > for better > design. > > One important goal of getting user input is always to detect errors as soon as > it is logically possible to detect them and then of course have some way > for the user to > correct them right away. The way this happens is the software that is > accepting input has to "know" a little bit about what is being input. > > > > On Thu, Oct 12, 2017 at 4:40 PM, andy pugh <bodge...@gmail.com> wrote: > > > > On 13 October 2017 at 00:31, Chris Albertson <albertson.ch...@gmail.com> > wrote: > > > > > At the very least this could have been implemented with an HTML form > > > where clicking on the parameter name brings up a pop-up wit the > parameter's > > > definition > > > > > > > > > The HAL file can do pretty much the same thing as Simulink does. > > Simulink and LabVIEW are the two "graphical" interfaces that most > > closely relate to the function of the HAL file, and if you have ever > > used them (I have) you would realise that that is just as much > > "programming" as editing a text file. > > > > Chris Morley did try to make PnCConf do exactly what you are > > describing, but the complexity inherent in all the different ways that > > Mesa cards can be connected together, along with the constant trickle > > of new hardware from Mesa made that a Sisyphean task. > > > > For a simple parallel-port based system Stepconf comes close to what > > you describe. Except that you still do need to know what you want to > > do. > > > > -- > > atp > > "A motorcycle is a bicycle with a pandemonium attachment and is > > designed for the especial use of mechanical geniuses, daredevils and > > lunatics." > > � George Fitch, Atlanta Constitution Newspaper, 1916 > > > > ------------------------------------------------------------------------------ > > Check out the vibrant tech community on one of the world's most > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > _______________________________________________ > > Emc-users mailing list > > Emc-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/emc-users > > > > > -- > > Chris Albertson > Redondo Beach, California > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users