Bob, Has the Roco crane controller ever been created? I have one and am trying to get JMRI working for my layout. Allen --- In jmriusers@..., Bob Jacobsen <Bob_Jacobsen@...> wrote:
Bob, You could copy your multi-page fine printed list* here and let
us chose, say, five items. Well, since you asked...
Jon is referring to a "to do" list that I keep for JMRI/DecoderPro. It's in a little database, so not easy to really show well in an email, but I've dumped it below. In cases where there's some context needed, e.g. I've assigned guilt to some element, there's a comment to that effect in (). This is a little terse, as it's made from a working document where I just jot down things I don't want to forget.
It's got about 200 items on it. Most are quite small, like a fix to a small bug I don't want to forget, adding a missing test, etc. But some are really, really large.
Bob
(Windows .bat files) Line-end problems when directly copying,
reading from CD Write README parts of LocoNet server, update web pages
Ant target for making update distributions
(PaneProgFrame) lifting read/write All doesn't stop until pane is done (never, if pane is in error loop)
Pane Prog memory usage high again. Missing dispose? Scrolling?
Can't set baud rate on too many machines; try another javax.comm
e.g. rxtx (AllTest) TurnoutIcon test fails when running from Ant; resources
missing? Should default logging level be ERROR? MarkG things it should never really issue messages?
LocoIO config frame and XML files
(LocoIO) Add support for B2 output (send OPC_INPUT_REP)
Build infrastructure for EasyDcc web access
LocoNet health counters for display (suggested by Alex Shepherd 2002-04-14 email)
(Lenz) register mode in programmer
Ant target for making distribution CD
Understand Jon's suggestion about using the User ID CVs for decoder identification
(Decoder definitions) Provide version-number-controlled options, e.g. "present for version > N", etc.
(Layout) Connect layout to Turnout manager via messages from
TurnoutManager (LocoNet) Move initial Manager config out of LnTrafficManager/PortAdapter for simplicity
Merge Alex's autostart rmiregistry into startup scripts
Create a utility strings package to handle parsing, hex output
formatting, etc. (jmri.jar) Is this getting large due to the resources/ files? Are
they in CVS? (rmi) Apps need to be rebuilt with JVM options?
Roster management code
If you save a Loco as a new ID, you should get a _new_ entry (old still exists)? Or provide another way to copy, and warn user
Need a way to import new roster files. Part of Update? How tell backup files? Also, clean up backups
Does readonly work for enums?
MacOS X comboboxes aren't recolored when not selected.
resize leaves CV table all messed up
ReadSheet on CvTable pane doesn't do anything
Speed table not updating when CV changes? Editting on CV pane doesn't generally work
(Speed Table) force left / force right to be monotonic happens even when reading CVs, so the plot doesn't go white, show what's there
(CvTable, dirty bit, readonly) A write-all still prompts for "some not written", perhaps because CV7,8 still show yellow?
(Readonly) You can write a read-only CV from the CvTable, and it then shows OK with the value you set
(Readonly, decoder .xml) Readonly CVs 7,8 show as zero & yellow in the CV table when it starts up, not a reasonable value
(symbolic programmer) Text suite needs to be reliable
(Cv Read, DecoderPro) only retry a CV read once, rather than getting stuck in a loop
Ops mode programming
TL1 function control needs to map to function selection pane.
Config/monitor window for the NCE packet monitor board
(PaneProgPane) XML option "don't display if empty" default to display
(SpeedTableVar) put text fields in addition to sliders? Alt rep?
(LocoIO) decimal address column, kept in synch with hex, op code
(PaneProgFrame) Put info in frame title: File, decoder name, versions?
(C/MRI) Doc architecture: Polling, multiple items in one command, need config to tell input from output
(sf feature request) Reset to linear button on speed table
(sf feature request) Tick marks and/or scale on sliders
(sf feature request) Numeric echo of slider values in speed table
(communications) Add a verification at startup that asks for some kind of version info and retains it, plus accessor
(TurnoutTable) Neeed for configuring names, showing lots of info in a small place.
(LocoNet programmer) Apparently Ops mode _can_ read if transponding
is in use (decoderdefn) better handling of large families of decoders
(Installer) Windows installer
(Macintosh) Updater vise updater - make it easy to create, start
creating (Windows) Updater Vise updater - make it easy to create, start creating
(Throttle) LocoNet reference implementation
(Interfaces) Write-up description of two-layer architecture, system names, Manager approach to access
display background picture
display general config load & store
(config) Document the config package
(jmri) Multi-bit inputs, outputs
(jmri) general-purpose output interface above Turnout
(app) LocoTools app
(javaDocs) Add package.html to packages - start with README contents
(JavaDocs) get overview.html to work
(jmri) Occupancy interface, connect to Sensor implementation
(Xml) XML defines class, element passed to ctor. That then handles subelements. Do always, even when structure simple, to provide encapsulation. May need to add grouping-elements to map to classes whell.
NCE has "programming mode". Should entry/exit be explicitly supported? What does EB do?
dispose() for local class in DecVar, Long Var, hexVar, Speed var
List.clear() in dispose() methods
pane prog config doc 3 examples of address: All 3 vars; combined var; two addresses with radio boxes next to them
Directional Headlights variable is like a function mapping. Make sure it can be mapped. Also, see TL1 mapping as enum
DH083 config file?
Read-only variables start off with what value? Do they update in read? Need to get right before putting on pane
Need to say that certain variables are readOnly in ops mode?
Read sheet/all should read readOnly vars, set state. State should also color, esp. initially
Ops mode, EvtBlder can't read. Should be a question you can ask the programmer object. What does EB2 say on LocoNet?
Can we add a faint grid to the fnMapping widget?
Programming really needs a progress bar with a stop button.
Provide a sample decoder file that's got all the "names" variables, since its easier to delete than add
Sample programmer file, to show what you can do, keyed to the ConfigFile.html file
show version, other id of programmer and decoder files in use
Better documentation of how fnMap looks at the decoder file
(Common Sel Pane) After you've done identDecoder, how can you get back to the full set of decoders in the ComboBox?
Mark wants to see programmer, decoder versions on screen somewhere
All Frames should have removeAll in their dispose() methods
All Frames should have a dispose() method
All Frames need to dispose when they close, so they need registered close handlers
Gray out 'read' buttons when working with EB
Document to web the "label" attribute of output element, esp for
wire labeling. Mark G things programming mode selection is too obvious
EasyDCC should default to paged ID, while others default to register
jmrix.loconet Programming collisions need to be sorted out, e.g. two requests for ops programming at same time, hitting a read button while another window is reading.
jmrit.*.CvTableModel Problem in PaneProg. Display/edit is all messed up. Should cells _inherit_ from Swing Components?
jmrit.*.PaneProgPane CV pane changes don't update variable display. Thought to be due to same old text edit blindness, as some changes do propagate.
No separators on MacOS X, Classic L&F
Is there a problem when you lift the "readScreen" button while reading the speed table sliders? Doesn't stop
Changing Roster Entry pane fields doesn't set file-dirty
Instructions/support for building a program based on JMRI. First example: simple signalling?
Ask NCE groups for Open Source ops prog pkt code, as somebody probably has written it
Some variables control whether others appear grayed out or not. Enums, also small digital values. How to represent?
Allow variable to "control" a row/column; display as BorderedPane
Get permission for locomon to show PM4 messages; Leonard Kerns requested
Add a preference for "fixed screen size", so they're always full screen
Need a clean shutdown mechanism, closing all windows, so all dirty checks are made
PaneProgFrame "tooltip" item is in docs, but not yet presenting - provide a connection to comments?
Split roster pane into individual, specifiable variables would allow you to have a "walk through for beginners" programmer
rethink panes in decoder files. Instead, have them elsewhere, but allow references to the files in decoder file?
LocoNetAdapter Has error handling and reporting that's not in NCE, MS100; move to a common base class.
PaneProgAction move the preload of various things out of this, or at least figure out a way to make sure they're not duplicated by other actions
(jmrit.symbolicprog) Update to use New/Found Frame at startup
(jmri.symbolicprog) Symbolic (table) programmer use split pane layout, perhaps side-by-side?
Confirm button should show value from memory, but set color on
difference Allow info pane to be put anywhere
CV table shows CVs in order from the file; numeric order would be better
loconet.SlotMon will need table updates
Empire Builder can't read - how handle that?
Digitrax TD1 decoder file
Digitrax TL1 decoder file
Digitrax DZ121 doesn't have direct mode
Some of the sound CVs need a capability of graying-out a variable if another is on/off; tooltip?
XmlFile parse errors are exceptions, which propagate up to a higher level. Can some of this be centralized?
(PaneProgFrame) needs some progress bars or similar so you know how its doing during programming, startup
(jmrit.*.VariableTableModel) Display/edit is all messed up. Should cells _inherit_ from Swing Components?
Remove Vector in favor of ArrayList, array where possible
Create a ABC for platform-specific behaviour, where you fill the methods & ctor invokes
Mark Gurries suggests an "Add panes" item. In menu? Allow initial ComboBox to have multiple selections? Maybe prog file is pointer to pane files?
Sensors/Inputs Need an "override" capability to change the expressed state until the next real change
Get Jbuilder CVS working
LocoNet message parsing mess, redo along NCE model
(jmrit.*.AbstractValue) Lots of *Table tools are in PaneProgFrame, PaneProgPane - should live in an AbsValueTable?
ABC for both symbolic programmer (renamed table programmer?) and Pane programmer?
Pull JDOM definition of test cases from test classes to single place
NceInterfaceScaffold is in NcePowerManager; move it to file of its own
PaneProg tests directly invoke setUpDecoder from DecoderFileTest
Check how DecoderFile interacts with other classes; hint that VariableTable, CvTable are right tools for interchange?
Check how DecoderFile creates its full information; is it really obeying open/closed?
Break monolithic DecoderPro config into parts
Ugly hack in LocoFile.loadCvModel so that LongAddr shows as FromFile after read from file.
dccAddrPane has ugly hack to register variables in PaneProgPane create row/column code. Also, reads longaddr when not needed (slow)
Set Mac filetypes to "TEXT" when writing file
symbolic (table) programmer uses same start-up code as pane programmer
(ConfigFile.html) Add more info to ConfigFile docs
(jmrix.loconet.?) Tool for convenient "status editting" of locos
Roster management tools: Delete an item, import a file.
Start a manual!
Check loco ID before writing
(PaneProgFrame) add a preference item (?) specifying a "read loco address" confirmation before writing
(VarValue) Config entry for colors, for mapping to states
(LocoFile) Investigate .dec files, which seem to be Excel-compatible output from PR1WIN? See JMRI mailbox
(jmrix.loconet) DT100 throttle sends SW_REQ_ACK, has separate ON & OFF commands. Should we do this?
ABC for PaneProgrammer Panes
FnPane needs a Test routine
(SymbolicProgFrame) has a writeFile operation that should be deferred to LocoFIle
(Variables, VarTableModel) This really has to be cleaned up; not overlaps in setRow and setConstant, and code dup throughout
Roster update button on PaneProgrammer entry frame is disabled
Document .lcf file, how to control logging, categories
(loconet.SlotManager) needs tests, esp. of programming packets
(PaneProgFrame) When you lift readAll/writeAll, the current pane completes its read/write. Should stop faster
NCE command station configurer like "commando"
Max/min handling in dec, hex variables (part of text edit update?)
(JDOM) Is JDOM not thread safe?
Restrict file choosers to possible files
Visual (video) block ID
Some kind of LocoPalm connection?
Monitor window scrollbars should stay at the bottom as new items added (SourceForge item)
Can't copy from monitor window on Macintosh (SourceForge item)
jmrix.loconet.? Not handling turnout feedback completely, only has
the one form (lots!) Protect text fields from invalid entries, e.g. non-numeric
(jmrix.loconet.hexfile) Hexfile should create a debug programmer before you open the file to ease testing
(jmrix.loconet.SlotManager) Slot manager state model not good, LACK not handled robustly
If you close MS100 et al before selecting something, show a warning
dialog. Update logo on web pages - see home.html, home2.html
Printing support
Roco Crane controller!
Use block detection to switch reversing-section PM4, removing hesitation? Is there a hesitation?
has TrainProgrammer, which uses a Tree interface, has nice speed graph
jmrix.loconet.? DS54 programmer (search mail in JMRI folder)
jmrix.loconet.? Chief configurer (See
Digitoys-systems.com/Chf_Download_e.htm) jmrix.loconet.? Digitrax consist manager (see Wielgus email 12/7/01, loconet_hackers files)
Throttle implementations; a key part of getting the interface right!
"About" handler
Program icons for Classic, OS X (iconeer?), folder icons (Folder
Icon X?) JMRI, jmri creator codes to be used
Better menu control in demo, with only available system-specific
tools active (PowerManager) Subdistrict support, esp for PM4 subdistricts
(PowerManager) TRIPPED state, e.g. off-due-to-protection-circuitry, not because it was commanded off
(PowerManager) Is there a state for "power is on, no packets being
sent"? (PowerManager) Feedback: Loconet knows real state from network; NCE just knows if commanded; could actually measure! Like for turnout
(Digitrax) Route programmer - use a trace to figure out what the
throttle does periodically, check memory growth and update dispose() tree as needed
Layout monitor for decoding DCC packets?
Sensor/SensorManager semantics
Sensor/SensorManager tests are still (?) based on Turnout tests, hence erroneously passing
DS54 pointed out that having non-contiguous enum values would be nice; DS54 now to be handled differently
Support for 'options' in decoder definitions
Packet generator at
-- -------------- Bob Jacobsen (Bob_Jacobsen@..., 510-486-7355, fax 510-495-2957)
|