¿ªÔÆÌåÓý


Re: Edit dialog boxes do not open with full width

 

Vince,

That is some really weird behavior.

If you are interested, rename or move the user-interface.xml file and see what happens.

Dave Sand


----- Original message -----
From: "Vince Guarna via groups.io" <vince=[email protected]>
Subject: Re: [jmriusers] Edit dialog boxes do not open with full width
Date: Tuesday, May 20, 2025 2:20 PM

Following up: I created a new config profile with both monitors plugged in. I'm leaving everything in the default location (~/Library/Preferences/JMRI/<profile>.jmri)? now even though I had no problem with that in the past. I set the new profile as active and then restarted JMRI. Skinny windows for the settings window and other windows such as all of the edit windows. I closed JMRI and unplugged the secondary monitor. Restart JMRI and everything appeared to work OK. I re-plugged in the second monitor and everything still appears to work as it has for years. I copied a tables file with a lot of data (turnouts, sensors, blocks, signals, LogixNG, etc) into the new profile. Restart JMRI and loaded the new tables file. Everything appears to display fine and all of the edit dialogs are full size as they should be.
?
So, it's a little inconvenient to create a new profile but that's a rare event, of course. Most of the functionality is working OK so far so this is very usable. I'll keep plucking away and report back if any showstoppers crop up in the future.
?
Thanks for the help, Dave.
?
Vince


Re: Edit dialog boxes do not open with full width

 

Following up: I created a new config profile with both monitors plugged in. I'm leaving everything in the default location (~/Library/Preferences/JMRI/<profile>.jmri)? now even though I had no problem with that in the past. I set the new profile as active and then restarted JMRI. Skinny windows for the settings window and other windows such as all of the edit windows. I closed JMRI and unplugged the secondary monitor. Restart JMRI and everything appeared to work OK. I re-plugged in the second monitor and everything still appears to work as it has for years. I copied a tables file with a lot of data (turnouts, sensors, blocks, signals, LogixNG, etc) into the new profile. Restart JMRI and loaded the new tables file. Everything appears to display fine and all of the edit dialogs are full size as they should be.
?
So, it's a little inconvenient to create a new profile but that's a rare event, of course. Most of the functionality is working OK so far so this is very usable. I'll keep plucking away and report back if any showstoppers crop up in the future.
?
Thanks for the help, Dave.
?
Vince


Re: C/MRI 72-Input node: how to configure in JMRI? #cmri

 

On 5/20/2025 1:32 PM, Erik84750 via groups.io wrote:
@billybob thank you for that complete answer.
I have a few questions on that:
1. "/Your code would need to handle the C/MRI "Init" message as if it was an SUSIC./": CMRI cmri(CMRI_ADDR, 72, 0, bus);? .correct?
That will have to be answered by someone who knows the (Arduind?) code base you are using. And that isn't me.

2. How do you manage to include the 'B' before the input number?
(You've answered this yourself.)


Re: Engine and bell sounds work but no horn after decoder install

 

Thank you Heiko, that does help. I did not know that you could look at the projects online. Thanks for the links. According to the ESU description, the horn should be in sound slot 3 for this project. But it's not apparently. I have ordered a LocProgrammer to see what's going on, figuring I'll be able to put it to other uses since I have about 20 locos (purchased) with ESU decoders, and plan to do more ESU installs in others.
Best Regards,
Dan
?


Re: C/MRI 72-Input node: how to configure in JMRI? #cmri

 

...where CMRI_ADDR = 1 (for example)..


Re: C/MRI 72-Input node: how to configure in JMRI? #cmri

 

I think i found the answer to my second question:
Alternate Numbering Scheme for C/MRI System Names

An alternate scheme for numbering in C/MRI System Names was developed to give user access to the full number of lines allowed by C/MRI hardware design. The main numbering system allows access to 999 input and output lines on each node. The C/MRI hardware design, however, supports many more bits for USIC and SUSIC nodes. Most JMRI users will never need this alternate scheme, and should use the main numbering scheme.

The alternate numbering scheme is similar to the main numbering scheme, except the node address and bit number are separated by a "B", and both node address and bit number can range to any value supported by C/MRI. The format is thus:

c[c]pn[nn]Bbbbb

where "B" is the separator between the node number and the bit number, which can now go up to 2048 (depending on how the C/MRI node is defined to JMRI).

Still remains question 1: is this initiation for SUSIC 72 inputs, node address 1 correct: CMRI cmri(CMRI_ADDR, 72, 0, bus);


Re: C/MRI 72-Input node: how to configure in JMRI? #cmri

 

@billybob thank you for that complete answer.
?
I have a few questions on that:
1. "Your code would need to handle the C/MRI "Init" message as if it was an SUSIC.": CMRI cmri(CMRI_ADDR, 72, 0, bus);? .correct?
2. How do you manage to include the 'B' before the input number?


Re: C/MRI 72-Input node: how to configure in JMRI? #cmri

 

On 5/20/2025 11:38 AM, Erik84750 via groups.io wrote:
After some searching I discovered that a SUSIC can be configured for 24 or 32 bits, and selectable IO. I then made a SUSIC node 24 bit, with three cards being defined as inputs. In the resulting summary I now see a SUSIC with 0 out bits and 72 in bits.
1. Is that a correct approach for my situation (per the program shown in my OP and with a card having 72 inputs?
It _can_ work, if you implement your (Auduino?) code correctly. Your code would need to handle the C/MRI "Init" message as if it was an SUSIC.

2. how do I address these inputs if the node address = 1? Is that 1001 for the first input and 1072 for the last input?
Almost. JMRI (usually) uses "CS" a "prefix" to define its "System Addresses" for CMRI Sensors. That makes it "CS1001" thru "CS1072" for a CMRI "node" that implements 72 "inputs".

Or JMRI can use an "alternate" way of dealing with the "System Address". In the alternate way, the "CS" prefix stays the same, but the "node address" portion is separated from "input number" by a "B". In this case, the "System Name"s for your case would be "CS1B1" thru "CS1B72".

(I prefer to use the "B" method, because I find the extra "B" helps me see the node address separately from the input/output number.)

Note that the _card_ number is _not_ specificly used as part of the JMRI "System Address". C/MRI's data streams simply do not include a card number. The "Init" message tells the SUSIC how to route data to/from a "card" and the RS-485; only the "Init" message has anything to do with C/MRI "card numbers" when configuring a USIC/SUSIC.

And for completeness, JMRI "System Address"es for Turnouts (C/MRI outputs) use the (usual) prefix "CT", and are otherwise similar to JMRI "System Address"es for JMRI Sensors (C/MRI Inputs), as described above. Again, JMRI's System Addresses start at address 1 for a given node. It doesn't matter which C/MRI "card" implements the first output (JMRI "Turnout"). And JMRI can use then "alternate" way of addressing Turnout "System Addresses", too. The JMRI "Turnouts" start at

- "CS(node number)(3-digit address, starting at 001)", or, alternately,

- "CS(node number)B(address, starting at 1)".


Re: Edit dialog boxes do not open with full width

 

Breaking News....I plugged the second monitor in again and now all seems to be working.
?
I'll try adding a new profile or two to see if the luck holds....
?
Vince


Re: Edit dialog boxes do not open with full width

 

Cosmic -- I had just had the same thought when your email came in. I unplugged the Thunderbolt and, sure enough, the turnout edit dialog appears in full size!
?
This is partially good news...but I frequently have many tables open... as well as two full screen layout panels. Very crowded. I would also hate to have to unplug and replug a monitor every time I go into and out of JMRI.
?
Is there something I can look at to see what is different in the UI with one vs two monitors?
?
Also, I don't suppose it's relevant, but the older (working) machine runs with Adoptium version of Java 11.
?
Vince


Re: C/MRI 72-Input node: how to configure in JMRI? #cmri

 

After some searching I discovered that a SUSIC can be configured for 24 or 32 bits, and selectable IO. I then made a SUSIC node 24 bit, with three cards being defined as inputs. In the resulting summary I now see a SUSIC with 0 out bits and 72 in bits.
1. Is that a correct approach for my situation (per the program shown in my OP and with a card having 72 inputs?
2. how do I address these inputs if the node address = 1? Is that 1001 for the first input and 1072 for the last input?


Re: Edit dialog boxes do not open with full width

 

Vince,

The context looks ok. ?

You might try using a single monitor as a test.

It appears that you have the macOS menu bar hidden. ?That should not make a difference.

Dave Sand


----- Original message -----
From: "Vince Guarna via groups.io" <vince=[email protected]>
Subject: Re: [jmriusers] Edit dialog boxes do not open with full width
Date: Tuesday, May 20, 2025 10:10 AM

Sorry about the image pasting for the log....rookie mistake.
?
I have two monitors. My main display is the Apple 27" 5K display (5120x2880) and the other is an old 27" Thunderbolt display (2560x1440).
?
It's interesting that JMRI was opening on my secondary screen (lower res). And, I can see in the context file that its resolution is reflected there. I did another quick experiment by moving the startup JMRI dialog to my main screen and close/re-opened JMRI. The startup dialog was then on the main screen. No change in behaviors, tho.
?
By the way, my older machine is one of the old Intel iMacs that also has a 5K screen. I used this same Thunderbolt monitor as the secondary screen. JMRI 5.10 worked fine there. FWIW. I'm going to do a diff on the two context files to see if there's anything interesting to look at.
?
Here is the content of the Context window (I XXX'ed out local network specifics figuring they were not important):
?

JMRI Version: 5.10+Rca461bd266 ??
JMRI configuration file name: null ? (from org.jmri.apps.Apps.configFilename system property)
JMRI main window name: LocoNet Simulator ??
JMRI Application: PanelPro ??
Connection 0: Digitrax connected via LocoNet Simulator on (none) Disabled false ??
Available Communication Ports:
?Found 4 serial ports
?Port: cu.debug-console
?Port: tty.debug-console
?Port: cu.Bluetooth-Incoming-Port
?Port: tty.Bluetooth-Incoming-Port
Active profile: My JMRI Railroad ??
Profile location: /Users/vince/Library/Preferences/JMRI/My_JMRI_Railroad.jmri ??
Profile ID: My_JMRI_Railroad.3f232d79 ??
JMRI Network ID: jmri-1C1DD3D6BA2F-3f232d79
JMRI Storage ID: 659c4cb1-9b31-46e2-8f8f-0f98b2459238
Preferences directory: /Users/vince/Library/Preferences/JMRI/My_JMRI_Railroad.jmri/ ??
Program directory: /Applications/JMRI ??
Roster index location: /Users/vince/Library/Preferences/JMRI/My_JMRI_Railroad.jmri/roster.xml ??
Current panel file: [none] ??
Locale: en
Audio factory type: [not initialised] ??
java.version: 17.0.15 ??
java.vendor: Azul Systems, Inc. ??
java.home: /Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home ??
java.vm.version: 17.0.15+6-LTS ??
java.vm.vendor: Azul Systems, Inc. ??
java.vm.name: OpenJDK 64-Bit Server VM ??
java.specification.version: 17 ??
java.specification.vendor: Oracle Corporation ??
java.specification.name: Java Platform API Specification ??
java.class.version: 61.0 ??
java.class.path: .:classes:target/classes:jmri.jar:lib/JavaVersionCheckWindow.jar:lib/apiguardian-api-1.1.0.jar:lib/batik-anim-1.14.jar:lib/batik-awt-util-1.14.jar:lib/batik-bridge-1.14.jar:lib/batik-constants-1.14.jar:lib/batik-css-1.14.jar:lib/batik-dom-1.14.jar:lib/batik-ext-1.14.jar:lib/batik-gvt-1.14.jar:lib/batik-i18n-1.14.jar:lib/batik-js-1.8.jar:lib/batik-parser-1.14.jar:lib/batik-script-1.14.jar:lib/batik-shared-resources-1.14.jar:lib/batik-svg-dom-1.14.jar:lib/batik-svggen-1.14.jar:lib/batik-transcoder-1.17.jar:lib/batik-util-1.14.jar:lib/batik-xml-1.14.jar:lib/beansbinding-1.2.1.jar:lib/bidibwizard-common-2.0.18.jar:lib/bidibwizard-model-2.0.18.jar:lib/bidibwizard-simulation-2.0.18.jar:lib/bluecove-2.1.1-SNAPSHOT.jar:lib/bluecove-bluez-2.1.1-SNAPSHOT.jar:lib/bluecove-gpl-2.1.1-SNAPSHOT.jar:lib/commons-collections4-4.4.jar:lib/commons-compress-1.18.jar:lib/commons-csv-1.9.0.jar:lib/commons-io-2.11.0.jar:lib/commons-lang3-3.7.jar:lib/commons-logging-1.2.jar:lib/commons-net-3.9.0.jar:lib/commons-text-1.2.jar:lib/eventbus-1.4.jar:lib/gluegen-rt.jar:lib/hid4java-0.5.0.jar:lib/jSerialComm-2.10.4.jar:lib/jackson-annotations-2.13.4.jar:lib/jackson-core-2.13.4.jar:lib/jackson-databind-2.13.4.2.jar:lib/javax.activation-api-1.2.0.jar:lib/javax.servlet-api-3.1.0.jar:lib/jaxb-api-2.3.1.jar:lib/jaxb-core-2.3.0.1.jar:lib/jaxb-impl-2.3.2.jar:lib/jbidibc-core-2.0.18.jar:lib/jbidibc-jserialcomm-2.0.18.jar:lib/jbidibc-messages-2.0.18.jar:lib/jbidibc-net-serial-over-tcp-2.0.18.jar:lib/jbidibc-serial-2.0.18.jar:lib/jbidibc-simulation-2.0.18.jar:lib/jdom2-2.0.6.jar:lib/jetty-http-9.4.28.v20200408.jar:lib/jetty-io-9.4.28.v20200408.jar:lib/jetty-security-9.4.28.v20200408.jar:lib/jetty-server-9.4.28.v20200408.jar:lib/jetty-servlet-9.4.28.v20200408.jar:lib/jetty-util-9.4.28.v20200408.jar:lib/jgoodies-binding-2.13.0.jar:lib/jgoodies-common-1.8.1.jar:lib/jhall.jar:lib/jinput-2.0.9-natives-all.jar:lib/jinput-2.0.9.jar:lib/jinputvalidator-0.8.0.jar:lib/jlfgr-1_0.jar:lib/jmdns-3.5.5.jar:lib/jmri.script.jsr223graalpython.jar:lib/jna-5.13.0.jar:lib/jna-platform-5.13.0.jar:lib/joal.jar:lib/json-schema-validator-1.0.28.jar:lib/jsoup-1.15.3.jar:lib/jsplitbutton-1.3.1.jar:lib/jul-to-slf4j-2.0.7.jar:lib/jython-standalone-2.7.4.jar:lib/libusb4java-1.3.0-darwin-aarch64.jar:lib/libusb4java-1.3.0-darwin-x86-64.jar:lib/libusb4java-1.3.0-linux-aarch64.jar:lib/libusb4java-1.3.0-linux-arm.jar:lib/libusb4java-1.3.0-linux-x86-64.jar:lib/libusb4java-1.3.0-linux-x86.jar:lib/libusb4java-1.3.0-win32-x86-64.jar:lib/libusb4java-1.3.0-win32-x86.jar:lib/log4j-api-2.20.0.jar:lib/log4j-core-2.20.0.jar:lib/log4j-slf4j2-impl-2.20.0.jar:lib/mailapi.jar:lib/openlcb.jar:lib/org-openide-util-lookup-RELEASE150.jar:lib/org.eclipse.paho.client.mqttv3-1.2.5.jar:lib/pi4j-core-1.2.jar:lib/purejavacomm-1.0.5.jar:lib/slf4j-api-2.0.7.jar:lib/thumbnailator-0.4.8.jar:lib/usb-api-1.0.2.jar:lib/usb4java-1.3.0.jar:lib/usb4java-javax-1.3.0.jar:lib/vecmath-1.5.2.jar:lib/websocket-api-9.4.28.v20200408.jar:lib/websocket-client-9.4.28.v20200408.jar:lib/websocket-common-9.4.28.v20200408.jar:lib/websocket-server-9.4.28.v20200408.jar:lib/websocket-servlet-9.4.28.v20200408.jar:lib/xAPlib.jar:lib/xbee-java-library-1.3.1.jar:lib/xercesImpl-2.12.2.jar:lib/xml-apis-ext-1.3.04.jar:lib/xmlgraphics-commons-2.6.jar ??
java.library.path: .:lib/macosx:lib ??
java.compiler: null ??
java.ext.dirs: null ??
file.encoding: UTF-8 ??
os.name: Mac OS X ??
os.arch: aarch64 ??
os.version: 15.5 ??
python.home: null ??
python.path: null ??
python.cachedir: null ??
python.cachedir.skip: null ??
python.startup: null ??
user.name: vince ??
user.home: /Users/vince ??
user.dir: /Applications/JMRI ??
user.country: US ??
user.language: en ??
user.timezone: America/Chicago ??
jmri.log.path: /Users/vince/Library/Preferences/JMRI/log/ ??
FileSystemView#getDefaultDirectory(): /Users/vince
FileSystemView#getHomeDirectory(): /Users/vince
Default JFileChooser(): /Users/vince
Screen size h:1440, w:2560 Inset t:0, b:0; l:0, r:0
Screen resolution: 108
Environment max bounds: java.awt.Rectangle[x=0,y=0,width=2560,height=1440]
Device: Display 3 bounds = java.awt.Rectangle[x=-2560,y=0,width=2560,height=1440]
Device: Display 3 insets = java.awt.Insets[top=0,left=0,bottom=0,right=0]
Device: Display 5 bounds = java.awt.Rectangle[x=0,y=0,width=2560,height=1440]
Device: Display 5 insets = java.awt.Insets[top=0,left=0,bottom=0,right=0]
JmriInsets t:0, b:0; l:0, r:0
Look and Feel: Mac OS X
Network Interface: ipsec0
?Long Name: ipsec0
?Host Name: XXX
?IP address: XXX
Network Interface: en1
?Long Name: en1
?Host Name: XXX
?IP address: XXX
Network Interface: en0
?Long Name: en0
?Host Name: XXX
?IP address: XXX
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
?


Re: Edit dialog boxes do not open with full width

 

Sorry about the image pasting for the log....rookie mistake.
?
I have two monitors. My main display is the Apple 27" 5K display (5120x2880) and the other is an old 27" Thunderbolt display (2560x1440).
?
It's interesting that JMRI was opening on my secondary screen (lower res). And, I can see in the context file that its resolution is reflected there. I did another quick experiment by moving the startup JMRI dialog to my main screen and close/re-opened JMRI. The startup dialog was then on the main screen. No change in behaviors, tho.
?
By the way, my older machine is one of the old Intel iMacs that also has a 5K screen. I used this same Thunderbolt monitor as the secondary screen. JMRI 5.10 worked fine there. FWIW. I'm going to do a diff on the two context files to see if there's anything interesting to look at.
?
Here is the content of the Context window (I XXX'ed out local network specifics figuring they were not important):
?

JMRI Version: 5.10+Rca461bd266 ??
JMRI configuration file name: null ? (from org.jmri.apps.Apps.configFilename system property)
JMRI main window name: LocoNet Simulator ??
JMRI Application: PanelPro ??
Connection 0: Digitrax connected via LocoNet Simulator on (none) Disabled false ??
Available Communication Ports:
?Found 4 serial ports
?Port: cu.debug-console
?Port: tty.debug-console
?Port: cu.Bluetooth-Incoming-Port
?Port: tty.Bluetooth-Incoming-Port
Active profile: My JMRI Railroad ??
Profile location: /Users/vince/Library/Preferences/JMRI/My_JMRI_Railroad.jmri ??
Profile ID: My_JMRI_Railroad.3f232d79 ??
JMRI Network ID: jmri-1C1DD3D6BA2F-3f232d79
JMRI Storage ID: 659c4cb1-9b31-46e2-8f8f-0f98b2459238
Preferences directory: /Users/vince/Library/Preferences/JMRI/My_JMRI_Railroad.jmri/ ??
Program directory: /Applications/JMRI ??
Roster index location: /Users/vince/Library/Preferences/JMRI/My_JMRI_Railroad.jmri/roster.xml ??
Current panel file: [none] ??
Locale: en
Audio factory type: [not initialised] ??
java.version: 17.0.15 ??
java.vendor: Azul Systems, Inc. ??
java.home: /Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home ??
java.vm.version: 17.0.15+6-LTS ??
java.vm.vendor: Azul Systems, Inc. ??
java.vm.name: OpenJDK 64-Bit Server VM ??
java.specification.version: 17 ??
java.specification.vendor: Oracle Corporation ??
java.specification.name: Java Platform API Specification ??
java.class.version: 61.0 ??
java.class.path: .:classes:target/classes:jmri.jar:lib/JavaVersionCheckWindow.jar:lib/apiguardian-api-1.1.0.jar:lib/batik-anim-1.14.jar:lib/batik-awt-util-1.14.jar:lib/batik-bridge-1.14.jar:lib/batik-constants-1.14.jar:lib/batik-css-1.14.jar:lib/batik-dom-1.14.jar:lib/batik-ext-1.14.jar:lib/batik-gvt-1.14.jar:lib/batik-i18n-1.14.jar:lib/batik-js-1.8.jar:lib/batik-parser-1.14.jar:lib/batik-script-1.14.jar:lib/batik-shared-resources-1.14.jar:lib/batik-svg-dom-1.14.jar:lib/batik-svggen-1.14.jar:lib/batik-transcoder-1.17.jar:lib/batik-util-1.14.jar:lib/batik-xml-1.14.jar:lib/beansbinding-1.2.1.jar:lib/bidibwizard-common-2.0.18.jar:lib/bidibwizard-model-2.0.18.jar:lib/bidibwizard-simulation-2.0.18.jar:lib/bluecove-2.1.1-SNAPSHOT.jar:lib/bluecove-bluez-2.1.1-SNAPSHOT.jar:lib/bluecove-gpl-2.1.1-SNAPSHOT.jar:lib/commons-collections4-4.4.jar:lib/commons-compress-1.18.jar:lib/commons-csv-1.9.0.jar:lib/commons-io-2.11.0.jar:lib/commons-lang3-3.7.jar:lib/commons-logging-1.2.jar:lib/commons-net-3.9.0.jar:lib/commons-text-1.2.jar:lib/eventbus-1.4.jar:lib/gluegen-rt.jar:lib/hid4java-0.5.0.jar:lib/jSerialComm-2.10.4.jar:lib/jackson-annotations-2.13.4.jar:lib/jackson-core-2.13.4.jar:lib/jackson-databind-2.13.4.2.jar:lib/javax.activation-api-1.2.0.jar:lib/javax.servlet-api-3.1.0.jar:lib/jaxb-api-2.3.1.jar:lib/jaxb-core-2.3.0.1.jar:lib/jaxb-impl-2.3.2.jar:lib/jbidibc-core-2.0.18.jar:lib/jbidibc-jserialcomm-2.0.18.jar:lib/jbidibc-messages-2.0.18.jar:lib/jbidibc-net-serial-over-tcp-2.0.18.jar:lib/jbidibc-serial-2.0.18.jar:lib/jbidibc-simulation-2.0.18.jar:lib/jdom2-2.0.6.jar:lib/jetty-http-9.4.28.v20200408.jar:lib/jetty-io-9.4.28.v20200408.jar:lib/jetty-security-9.4.28.v20200408.jar:lib/jetty-server-9.4.28.v20200408.jar:lib/jetty-servlet-9.4.28.v20200408.jar:lib/jetty-util-9.4.28.v20200408.jar:lib/jgoodies-binding-2.13.0.jar:lib/jgoodies-common-1.8.1.jar:lib/jhall.jar:lib/jinput-2.0.9-natives-all.jar:lib/jinput-2.0.9.jar:lib/jinputvalidator-0.8.0.jar:lib/jlfgr-1_0.jar:lib/jmdns-3.5.5.jar:lib/jmri.script.jsr223graalpython.jar:lib/jna-5.13.0.jar:lib/jna-platform-5.13.0.jar:lib/joal.jar:lib/json-schema-validator-1.0.28.jar:lib/jsoup-1.15.3.jar:lib/jsplitbutton-1.3.1.jar:lib/jul-to-slf4j-2.0.7.jar:lib/jython-standalone-2.7.4.jar:lib/libusb4java-1.3.0-darwin-aarch64.jar:lib/libusb4java-1.3.0-darwin-x86-64.jar:lib/libusb4java-1.3.0-linux-aarch64.jar:lib/libusb4java-1.3.0-linux-arm.jar:lib/libusb4java-1.3.0-linux-x86-64.jar:lib/libusb4java-1.3.0-linux-x86.jar:lib/libusb4java-1.3.0-win32-x86-64.jar:lib/libusb4java-1.3.0-win32-x86.jar:lib/log4j-api-2.20.0.jar:lib/log4j-core-2.20.0.jar:lib/log4j-slf4j2-impl-2.20.0.jar:lib/mailapi.jar:lib/openlcb.jar:lib/org-openide-util-lookup-RELEASE150.jar:lib/org.eclipse.paho.client.mqttv3-1.2.5.jar:lib/pi4j-core-1.2.jar:lib/purejavacomm-1.0.5.jar:lib/slf4j-api-2.0.7.jar:lib/thumbnailator-0.4.8.jar:lib/usb-api-1.0.2.jar:lib/usb4java-1.3.0.jar:lib/usb4java-javax-1.3.0.jar:lib/vecmath-1.5.2.jar:lib/websocket-api-9.4.28.v20200408.jar:lib/websocket-client-9.4.28.v20200408.jar:lib/websocket-common-9.4.28.v20200408.jar:lib/websocket-server-9.4.28.v20200408.jar:lib/websocket-servlet-9.4.28.v20200408.jar:lib/xAPlib.jar:lib/xbee-java-library-1.3.1.jar:lib/xercesImpl-2.12.2.jar:lib/xml-apis-ext-1.3.04.jar:lib/xmlgraphics-commons-2.6.jar ??
java.library.path: .:lib/macosx:lib ??
java.compiler: null ??
java.ext.dirs: null ??
file.encoding: UTF-8 ??
os.name: Mac OS X ??
os.arch: aarch64 ??
os.version: 15.5 ??
python.home: null ??
python.path: null ??
python.cachedir: null ??
python.cachedir.skip: null ??
python.startup: null ??
user.name: vince ??
user.home: /Users/vince ??
user.dir: /Applications/JMRI ??
user.country: US ??
user.language: en ??
user.timezone: America/Chicago ??
jmri.log.path: /Users/vince/Library/Preferences/JMRI/log/ ??
FileSystemView#getDefaultDirectory(): /Users/vince
FileSystemView#getHomeDirectory(): /Users/vince
Default JFileChooser(): /Users/vince
Screen size h:1440, w:2560 Inset t:0, b:0; l:0, r:0
Screen resolution: 108
Environment max bounds: java.awt.Rectangle[x=0,y=0,width=2560,height=1440]
Device: Display 3 bounds = java.awt.Rectangle[x=-2560,y=0,width=2560,height=1440]
Device: Display 3 insets = java.awt.Insets[top=0,left=0,bottom=0,right=0]
Device: Display 5 bounds = java.awt.Rectangle[x=0,y=0,width=2560,height=1440]
Device: Display 5 insets = java.awt.Insets[top=0,left=0,bottom=0,right=0]
JmriInsets t:0, b:0; l:0, r:0
Look and Feel: Mac OS X
Network Interface: ipsec0
?Long Name: ipsec0
?Host Name: XXX
?IP address: XXX
Network Interface: en1
?Long Name: en1
?Host Name: XXX
?IP address: XXX
Network Interface: en0
?Long Name: en0
?Host Name: XXX
?IP address: XXX
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
ZeroConfService host: jmri-1c1dd3d6ba2f-3f232d79 running 0 service(s)
?


Re: Edit dialog boxes do not open with full width

 

Vince,

For future reference, use the "Copy to clipboard" button to get the system console text. ?Screenshots don't zoom well and the text cannot be copied.

Since you are running a Mac Studio, that means you have an external monitor. ?What is it? ?Also, go to "Help -> Context". ?Use the "Copy to clipboard" button and paste the content. ?That should tell us what the display looks like to Java.

Make note of the "storage identify" line. ?The user-interface.xml file is located within that directory which is in the profile directory at the user files location. ?That file contains a number of GUI settings, including window location and sizes. ?

Dave Sand


----- Original message -----
From: "Vince Guarna via groups.io" <vince=[email protected]>
Subject: Re: [jmriusers] Edit dialog boxes do not open with full width
Date: Tuesday, May 20, 2025 9:05 AM

OK, clean start.
?
  1. Wiped out /Applications/JMRI and /Users/Vince/Library/Preferences/JMRI.
  2. Re-installed 5.10
  3. Started JMRI for the first time
  4. It creates My_JMRI_Railroad and opens the skinny settings window.
  5. I stretch the settings window
  6. Added a LocoNet simulator connection
  7. Allow it to restart JMRI.
  8. Open the settings window - it looks fine (it remembered the size I set it to)
  9. Go to Tools -> Tables -> Turnouts
  10. Add a LocoNet turnout LT333
  11. Click the Edit button on the line for that turnout in the table (it's the only line, of course).
  12. It's a skinny edit window. I stretch it out until the layout is correct.
  13. Added a comment
  14. Clicked Apply and OK.
  15. The table now reflects the comment I added (good)
  16. Click edit again and get the skinny window again (it did not remember the size I stretched it to)
  17. Open the console log - it's a skinny window
  18. Stretch the window out far enough for no line breaks.
  19. Close the window.
  20. Reopen the console window - it remembered the size.
  21. Here's the log (no errors):

?
This should all have been done with a fresh JMRI installation. No new folders, no extra profiles. Most non-UI things seem to work. For fun, I opened the Monitor LocoNet window. It first appears as a skinny window but I stretched it and it retains its size after closing and re-opening and also quitting and restarting JMRI. Pushed the State button on the table a few times and the right message appear in the monitor window, FWIW.
?
The problem is so consistent - seems like it's one of those "simple once you know what it is" things. But I can't think of anything else to look at or try.
?
Vince


Re: Colors for JMRI shirts (was re: JMRI merchandise for donations

 

For Tee I vote cool grey and also royal blue with inverted logo.?

For denim, faded blue.?

¡ª´³´Ç³ó²Ô.


Re: Edit dialog boxes do not open with full width

 

OK, clean start.
?
  1. Wiped out /Applications/JMRI and /Users/Vince/Library/Preferences/JMRI.
  2. Re-installed 5.10
  3. Started JMRI for the first time
  4. It creates My_JMRI_Railroad and opens the skinny settings window.
  5. I stretch the settings window
  6. Added a LocoNet simulator connection
  7. Allow it to restart JMRI.
  8. Open the settings window - it looks fine (it remembered the size I set it to)
  9. Go to Tools -> Tables -> Turnouts
  10. Add a LocoNet turnout LT333
  11. Click the Edit button on the line for that turnout in the table (it's the only line, of course).
  12. It's a skinny edit window. I stretch it out until the layout is correct.
  13. Added a comment
  14. Clicked Apply and OK.
  15. The table now reflects the comment I added (good)
  16. Click edit again and get the skinny window again (it did not remember the size I stretched it to)
  17. Open the console log - it's a skinny window
  18. Stretch the window out far enough for no line breaks.
  19. Close the window.
  20. Reopen the console window - it remembered the size.
  21. Here's the log (no errors):
?
This should all have been done with a fresh JMRI installation. No new folders, no extra profiles. Most non-UI things seem to work. For fun, I opened the Monitor LocoNet window. It first appears as a skinny window but I stretched it and it retains its size after closing and re-opening and also quitting and restarting JMRI. Pushed the State button on the table a few times and the right message appear in the monitor window, FWIW.
?
The problem is so consistent - seems like it's one of those "simple once you know what it is" things. But I can't think of anything else to look at or try.
?
Vince


Re: Edit dialog boxes do not open with full width

 

No errors in the log (didn't even know I could get the log when not running from a shell....thx).
?
Previous system was (and still is) an old Intel iMac running 5.10 and Java 11. Ventura OS.
?
New system is M4 Mac Studio running Sequoia (and 5.10 and Java 17 as you know from my previous post).
?
I just copied over the xxx.jmri folder over from the old system to the new system. Things generally seemed to look OK (layout panels were correct, tables looked right, etc). But, I did change the default location of the .jmri folders (as I did with the old system).
?
Your questions have me thinking about moving the default config folder location. Even though it worked before, who knows what other little things I might have done along the way that might have had an impact.
?
For a better-controlled test environment for the A/B comparison I think I will delete and re-install JMRI and try again using just the default My_JMRI_Railroad profile for testing. I am assuming that deleting /Applications/JMRI and ~/Library/Preferences/JMRI will get me back to a clean install state.
?
Vince


Re: Colors for JMRI shirts (was re: JMRI merchandise for donations

 

I like seeing the discussion.
I will buy a polo and t shirt ASAP.
?
I do JMRI clinics at our regional conventions.
?
--
John Crellin
Bradenton,? FL?


Re: Colors for JMRI shirts (was re: JMRI merchandise for donations

 

¿ªÔÆÌåÓý

Any chance we could direct shirt choices direct to Bob and not all of us?

Phil G

On 19 May 2025, at 21:43, John Bauchiero via groups.io <john4dhmr@...> wrote:

? Bob, For what my two cents are worth, I agree the colors you chose. ?For a little humor the Polo Shirt in Coffee Bean would have been appropriate, but it¡¯s dark and _discontinued_. I would go for a pocket-T.?

John ?Bauchiero
-?NCE PH-Pro & PowerCab, Pi4, DCC-EX
- JMRI 5.11.5
- Java 17.0.12

On May 19, 2025, at 4:10?PM, Bob Jacobsen via groups.io <rgj1927@...> wrote:

Daylight Sales got back to me. ?They can do JMRI polo shirts, denim shirts, pocket t-shirts and/or coffee mugs.

Now we get to pick a color! ?The available colors for each item are shown as swatches on these pages:

Polo = https://www.sanmar.com/p/112_CoolGrey?text=k500p

Denim = https://www.sanmar.com/p/2934_FadedBlue

Pocket t's ?= https://www.sanmar.com/p/1163_SportGrey

Coffee mugs are white.

Note that our logo is mostly black and white, with just a touch of red:

https://www.jmri.org/images/logo-jmri.gif
https://www.jmri.org/community/original_icons/JMRI.png

It might not show up well when embroidered on really dark colors.

I¡¯m color blind, so give this a large grain of salt, but I suggest:

¡°Cool gray" for polo shirts
¡°Faded blue¡± for denim shirts
¡°Sport gray¡± for pocket t-shirts

I¡¯m happy to follow any color consensus that emerges.

Bob
¡ª
Bob Jacobsen
rgj1927@...











C/MRI 72-Input node: how to configure in JMRI? #cmri

 

I have this board with 72 inputs, how to configure this node in JMRI?
An Smini is standard 24IN/48OUT, yet how to modify this to 72IN?
?
This is my code used for the board:
?
#include <Auto485.h>
#include <CMRI.h>
#include <SPI.h>
#define CMRI_ADDR 5 ? ? ? ? ? ? ? ? ? ? ? // select the CMRI node address
#define DE_PIN 2 ? ? ? ? ? ? ? ? ? ? ? ? ?// Arduino pin 2 -> MAX485 DE and RE pins
// #define NOP __asm__ __volatile__("nop") ? // macro for the "nop" assembly instruction
#define NOP __asm__ __volatile__ ("nop\n\t") // https://forum.arduino.cc/t/very-short-delays/43445/5
// pin 74HC165
const byte LATCH_165 = 9; // LATCH
Auto485 bus(DE_PIN); ? ? ? ? ? ? ? ? ? ? ?// RS485 bus transceiver
CMRI cmri(CMRI_ADDR, 72, 0, bus); ? ? ? ? // sets up an SMINI with address 5, SMINI = 72 inputs, 0 outputs
uint8_t input_state[9];
void setup() {
? Serial.begin(9600);
? delay(10);
? Serial.println("DCCpp_CMRI_nopxor75-in_v3.ino");
? delay(1000);
? bus.begin(57600, SERIAL_8N2); ? ? ? ? ? // open the RS485 bus at 57600bps
? SPI.begin (); ? ? ? ? ? ? ? ? ? ? ? ? ? // serial data protocol used to control 74HC165
? pinMode(LATCH_165, OUTPUT);
? digitalWrite (LATCH_165, HIGH);
}
void loop() {
? // 1: update inputs
? digitalWrite (LATCH_165, LOW); ? ? ? ? ?// pulse the parallel load latch
? NOP; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?// use the macro instead of inline assembly
? NOP;
? digitalWrite (LATCH_165, HIGH);
? uint8_t new_input_state[9];
? for (int i = 0; i < 9; i++) {
? ? new_input_state[i] = ~(SPI.transfer(0));
? }
? bool updated = false;
? for (int i = 0; i < 9; i++) {
? ? if (new_input_state[i] != input_state[i]) {
? ? ? cmri.set_byte(i, new_input_state[i]);
? ? ? input_state[i] = new_input_state[i];
? ? ? updated = true;
? ? }
? }
? // 2: main processing node of cmri library
? if (updated) {
? ? cmri.process();
? }
}