Tag Archive: troubleshooting

Using the JNIOR should be a smooth process, with only having to connect an ethernet cord to your network and finding it in the JNIOR support tool. Unfortunately nothing always goes perfectly, and maybe you aren’t able to access your JNIOR via beacon or an internet browser. Connecting to a Series 3 JNIOR serially is also a great way to troubleshoot when its no longer responding correctly. Luckily, the JNIOR can be connected to serially to access and hopefully fix this issue.

To access the JNIOR serially, a serial cable needs to be connected between the RS-232 port on JNIOR and your computer. If you don’t have a serial port on your computer, you may need a serial to USB cable instead. Once that is connected, you can then open a command line prompt (You can open an easy to use command line from the support tool under the Tools Tab.) and access the serial connection. When doing this, make sure that the setting for the Serial Connection match what your JNIORs are. If you can’t check, the default settings for the connection are:

  • Baud Rate: 115200
  • DataBits: 8
  • StopBits: 1
  • Parity: None

Once you have set the correct serial settings, you should be able to hit connect and access the JNIOR via the command line! If by chance you are trying to change the JNIOR’s IP because its using one that doesn’t work with your local networks IP, you can change the IP of a JNIOR by using the ‘ipconfig’ command. Simply enter ‘ipconfig -a’ followed by a space and the IP address you are trying to change the JNIOR to. For example, you are trying to change the IP address to 10.0.0.201, you would use this in the command line: ‘ipconfig -a 10.0.0.201’.

Version 3.4 introduced a bug that prevented DMX client connections from working.

This was due to the AppData/Dmx/TerminationBytes registry key not processing the escaped string correctly.  \r\n should be processed as 2 bytes, one Carriage Return and one Linefeed.  Unfortunately the string was not un-escaped  and the termination string was processed as 4 bytes, ‘\’, ‘r’, ‘\’, ‘n’.

Here is a Wikipedia article on Escape Characters for those who are interested.

Resolution

Version 3.5 has been released to resolve this issue.

When using Tasker, there may be an instance where something isn’t working properly. Here is a list of solutions for different issues where your Tasker setup might not be running correctly.

Workspace/Trigger/Schedule/Task may be disabled

When waiting for a schedule to activate, pressing a control panel to activate a trigger, or executing a task in the Task tab, all three of these things can be disabled so they don’t activate when you don’t want them to. Even the entire workspace can be disabled. Make sure that when activating something in Tasker that it isn’t disabled. You can make sure by looking at the checkbox next to them and making sure they are checked. Checked means enabled, unchecked means disabled.

Variable/Value is not logging

Being able to use variables and reference I/O on the JNIOR in Tasker is major factor in Tasker’s usefulness. Sometimes though, if these variables/values aren’t entered correctly, it can lead to errors in Tasker. If you are logging variables/values in Tasker, make sure that you are encasing each one in {{}}. This denotes the value as not just a string of letters but the actual value its supposed to represent.

Variable isn’t working in different Task

One of the ways variables in a workspace are useful, is that they can be referenced from other tasks. You can create a Global Variable by putting “$$” in front of it. For example, if you wanted the word “number” to be a Global Variable, when you declare it you’ll put “$$number”. 

Tasks in the Task Tab are grayed out

An easy way to test a Task is by manually executing it in the Task Tab. When you are currently within a workspace that has changes being made to it though, the play buttons to execute tasks are grayed out. This is because the workspace needs to save the changes made before it can execute Tasks.

External Module not working when referenced in Tasker

In Tasker, you can reference External Modules that you have connected to the JNIOR in Tasker. Sometimes though, Tasker might have trouble interacting with your External Modules. This is because when you connect an External Module to the JNIOR, its information is saved. Then if a different External Module is connected, it may still be trying to connect to the previous one that was there. To avoid this issue, make sure when a External Module is removed that you perform the “extern -r” command in the JNIOR console. This will clear any information in the JNIOR of External Modules that are no longer connected, and Tasker will then reference only Modules currently connected to the JNIOR.

Communication action not working with Device

Tasker has the functionality to communicate with other devices, sending them data or commands. When communicating with an external device though, you need to make sure that the device you are sending to is configured to receive data the same way the device in your device tab is configured to. Make sure if its a TCP send that the device has the IP and TCP port you set for the Ethernet Device in the Device Tab. Same goes for SNMP with its IP and UDP port.

When you are using the JNIOR, you may want to change the IP address to fit a pre-existing schema for JNIOR’s on the network. JNIOR’s are set to use DHCP by default to get their IP address. DHCP searches a network the JNIOR is trying to connect to and finds an available IP on the network for it automatically. If the IP of the JNIOR gets set to 0.0.0.0, this is because a device on the network is already using that IP address. The JNIOR doesn’t want to interrupt pre-existing IP communication with a device on the network, so rather then take the IP and create a conflict between itself and the other device, it simply defaults it’s IP to 0.0.0.0. To confirm another device is on your network using the same IP, you can try pinging the IP Address that has the additional device on it. If the ping replies successfully, you’ll know you have another device somewhere that is on the network using that IP. In order to ping on windows, you simply open the command line and type “ping (IP address)”. NOTE: Not all devices on a network have ping capabilities.

Ping command in windows command line

To resolve the issue, you have to change the JNIOR or other device on the network to another IP that prevents the two devices from conflicting with each other. To change the IP address from the command line, you can do so using the ipconfig command, entering “ipconfig -a” followed by the new IP address you want to assign to the JNIOR. You can also do so from the Support Tool by right clicking a JNIOR in the beacon tab and selecting Configure/IP Configuration, which opens a dialog box that can be used to set the IP of the JNIOR as well. This is where DHCP can be disabled as well, which can fix a 0.0.0.0 IP when DHCP can’t find an available IP address on the network, or if the network doesn’t support DCHP.

A lot of JNIOR applications log information about what they are doing. This information can be about different things. Sometimes the application is purposely creating log files to keep track of data such as water levels or I/O changes. Logs can also be used to keep track of information about the application itself and if its run into any errors. Here is a quick post on how to look at Logs on a JNIOR.

To access information on a Series 4 JNIOR, you’ll first need to open the JNIOR WebUI. Once the on the JNIOR WebUI, you’ll then access the folder tab. Here you can see a list of all the files located on the JNIOR. Navigating through the folder shows the different files you can view, including log files.

Folders tab of JNIOR Web Page

Another way to access files on either a Series 3 or 4 JNIOR, you can open the File Transfer Protocol from the Support Tool. To start you’ll open the Support Tool, then in the beacon tab you’ll right click on the JNIOR and select Tools/Open FTP. You’ll then see a dialog open asking for the JNIOR’s username and password. Once you enter that, you should see all the available files on the JNIOR, including log files.

NOTE: The address in file explorer will match your JNIOR’s IP Address

Sometimes an application wont run on a JNIOR Series 3 unit.  This issue may be due to “insufficient heap“.

This error message means that there was not enough contiguous space in “heap” or the SRAM memory for the application.  The application must find contiguous memory of at least the file size of the application.  Once the application finds that space it will stay in that same space until the application is updated.  The memory can become fragmented over time since the SRAM is used for application executables, application memory and the root file system.

Most likely this error condition will occur after updating to a new version of an application.  If the new application is larger than the old application it cannot occupy the same contiguous block in memory.  It must find a new contiguous block.  That space may not be available depending on the fragmentation of the memory. Even if there is a contiguous block of memory large enough when the file is updated, it still might give you an “insufficient heap” error. This might happen because until its run as an executable, the file doesn’t know it needs to be stored as contiguous space and fragment its memory anyways, which would then cause the error.

The fragmentation is caused by file blocks that have become scattered throughout memory over time.  To clear up the fragmentation we could delete a file at a time until a contiguous block has become available.  This would be a very slow approach.  You would not know which file gives you the best chance of finding a contiguous block.  Since the root of the file system contains mostly log files we can just clear the heap on a reboot.  In order to that we execute the reboot -a command.

What about my cinema devices and macros files?

The cinema files are automatically backed up to flash/cinema_backup.  This location is not affected by the reboot -a.  The cinema files will be restored next time cinema runs.

If you experience issues with your Dolby IMS2000 Cinema Server connecting to or executing commands on the JNIOR you may need to follow one of the procedures below. There are two issues that I have seen.

Dolby has resolved the issue for the IMS3000.

A Dolby may not even try to connect to a JNIOR when it should.

Make sure you have rebooted the Dolby IMS after adding the JNIOR as a device.

To determine if this is the issue:

  1. Go to the DCP for the JNIOR
  2. Click on the Console tab
  3. Click ‘Start Session’
  4. Log in when prompted
  5. enter the netstat command
  6. There should be a connection to 9200 with the Dolby Server IP Address for the Remote IP

The Dolby is connected but nothing happens on the JNIOR when the Dolby sends the command.

When Dolby tries to connect to the JNIOR it may not be able to log in to the JNIOR due to a bad password. The highlighted bytes below are corrupted.

The bytes should represent the password like this…

The previous images are screenshots for the WireShark application when analyzing a network capture. This capture is included in a JNIOR Support Tool Snapshot. I have been told by Dolby that this is likely due to the browser auto-fill.

To determine if this is the issue you should check the protocol.log on the JNIOR

To do that:

  1. Go to the DCP for the JNIOR
  2. Click on the Console tab
  3. Click ‘Start Session’
  4. Log in when prompted
  5. Enter the cat protocol.log command

If you don’t see a successful login or do see a failed login then do the following:

  1. Go to the JNIOR Device Configuration on the Dolby IMS
  2. Remove the JNIOR device
  3. Reboot the Dolby IMS
  4. Add the JNIOR as a device but DO NOT enter the password
  5. Reboot the Dolby IMS

You can now re-test the JNIOR connection to see if this is resolved.

If it is not resolved then make sure your browser is not using auto-fill for the site. The procedure differs per browser. Follow one of the links below for your browser.

If it is not resolved you can try to analyze the network capture or contact INTEG for additional support.

I hope this article helped you out. Please contact us to let us know!

There is a chance you will see the following PHP error. For this to be seen you must have a Series 4 JNIOR that had JANOS version 1.6 or older and you just updated to a new JANOS version

Why did this happen?

The older JNIORs had a different web page than we have now. The main web page used to be served out of the flash/www folder. Now the DCP, the newer web page, is served out of the flash/www.zip file. If the flash/www/index.php file is still found then the web server will process it and serve it instead of the index.php in the www.zip file.

How do we fix it?

To fix this we need to remove the old flash/www/index.php file. This will allow JANOS to look in the flash/www.zip file. This should be a step in the All-In-One update project. You can do it manually with a Telnet connection like this…

The JNIOR Support Tool will allow foreign characters in the filenames for macro and device files. Here is a quick video showing how to delete them.

1. Create a console session.
2. login
3. type rm mac
4. Then press tab

The JNIOR will fill in the name of the macro file.  In your case, press tab until you get the file with the offending name.

5. Then use the left arrow key to go back and insert a quote at the beginning of the file name

6. Press enter

You can then go back to the folders tab to see that the file is gone.

Repeat the same steps for the “macro file not found.log” file.

If the JNIOR series 4, models 410, 412 or 414, is not working with the GDC Cinema Server then check to make sure MODBUS is enabled. The built-in library for the JNIOR on the GDC server uses MODBUS.

MODBUS communicates on port 502.

The series 3 enabled the MODBUS server by default. The MODBUS server is an optional application that needs to be enabled on the series 4. You can look at the following links for more information

Sometimes the JNIOR doesn’t appear to be working but follow these steps and you might be able to determine why. There are a few steps that you can take before contacting INTEG or declaring that the JNIOR is not functioning. Hopefully the steps below will help save some time.

The number one way for INTEG to help provide support is to send us a Snapshot using the Support Tool. We can use the Snapshot to look at logs, analyze your configuration and to look at network interactions. Snapshots are most effective when taken soon after the issue is noticed. If too much time has passed the logs and network information may no longer contain relevant information pertaining to the time of the issue.

Power

The JNIOR requires 12 – 24v DC. We recommend a power supply capable of 1 Amp.

The very first thing to check is to make sure the unit has power. No, I don’t mean “did you plug the JNIOR in?” We need to make sure that the internal power supply is functioning and that the wires going in to the connector on the outside of the JNIOR have not broken.

To check the internal power supply we need to verify that the BLUE LED is illuminated next to the power connector.

If the BLUE LED is not illuminated then we want to make sure the wires have not been broken. This can easily happen if there is stress put on the wires during installation or if the connector was not securely fastened before being shipped.

Operating System

Is the OS running? To check this remove power. Upon applying power the amber light next to the BLUE power LED should come on for two or three seconds and then go out. Another thing we can check is to unplug the Ethernet cable. As of JANOS v1.8 the Status LED will blink Morse code indicating the value of the last octet of the IP Address when the Ethernet cable is unplugged.

Ethernet

The first thing to check regarding Ethernet connectivity is that the lights on the Ethernet port are lit. If they are not, please check both end of the cable to make sure it is connected. If the cable appears to be properly connected and the lights are not lit, please try a different cable.

Check Beacon to see that the JNIOR is on the network. Beacon is a feature on the JNIOR that uses UDP to broadcast itself on the network. The JNIOR Support Tool implements beacon and will query the network for any JNIORs. Any JNIOR that hears the query will respond. Because this feature uses UDP a valid working IP Address is not necessary.

If the cable, lights and beacon all appear to be in working order then the last thing to check here is the IpConfig/Allow setting. That will need to be done using the serial port. You can read about that procedure in the Dangers of IpConfig/Allow.

As of JANOS v1.8 the Status LED will blink Morse code indicating the value of the last octet of the IP Address when the Ethernet cable is unplugged.

Serial Port

The serial port can be used to diagnose JNIOR issues. Most of the time the Ethernet connection will be used to do this but in the case that the Ethernet connection is suspect we will need to use the serial port. There are two serial ports on the JNIOR but the RS-232 port is the is the port that facilitates the command line functionality. To connect to the JNIOR for command line use you will need to use the following settings. 115200 baud, 8 data bits, 1 stop bit and no parity. Once the cable is connected and you launched your favorite serial application you will need to press enter to see the login prompt. You could also reboot the JNIOR to observe the banner.

Configuration

If the hardware steps above do not alert you to the issue you are having then configuration is most likely to blame. Please contact us INTEG for further assistance. We can walk you through configuration issues, connect to your computer via TeamViewer, or determine if your unit needs to be replaced.

MODBUS client is not able to connect to the JNIOR

The MODBUS server running on the JNIOR is a separate application from the Operating System. It does not run by default when the JNIOR is shipped. It is installed by default. It must be activated by the end user before the the MODBUS connection can be successful.

To activate it go to the DCP, click on the Configuration tab. Half way down the left side click on Applications. You will see a list of applications that are loaded on the JNIOR. Check the box next to Modbus Server. This will tell the JNIOR to run the application when the JNIOR boots up. You will need to reboot the JNIOR at this point to get the MODBUS Server to start.

To verify that the MODBUS server is running we can list the listening network sockets using the netstat command.

Lastly, you can change a few configuration parameters for the MODBUS server under the registry tab.

Port 502 is the default MODBUS port. Most likely this will NOT need to be changed. The Timeout setting is the number of milliseconds to wait for a MODBUS client to poll the server. If a request is not made within this amount of time then the JNIOR will close the connection. If any configuration needs to be changed it will probably be the Login setting. Not very many MODBUS clients implement a login. If they dont log in then you will see the following in the Modbus Server log…

Setting the Login key to false will allow this device to connect successfully.

The problem: You get the following screen when trying to go to the DCP or any web page on the JNIOR.

In this image we tried to go to the IP Address of the JNIOR.  This should present us with the DCP web page.  In this case we are presented with the “Page not found” response page.

This means that the file cannot be found in the filesystem for this page resource.

To troubleshoot this we need to look at the filesystem.  Since the DCP is not available we need to use FTP or a telnet session.

Using FTP

Open Windows Explorer. In the address bar type ftp://IP ADDRESS. You might see the message that Windows Explorer cannot access your folder.

Most likely this is because you need to provide credentials. To do that you need to right click in the white-space in the window and select Login As…

Once you log in navigate to the flash directory.

If the the DCP or default web page is missing then all of the following must be met:

  • www.zip is missing
  • public.zip is missing
  • www/ directory is missing or there is not an index.php file in the www/ directory
  • public/ directory is missing or there is not an index.php file in the public/ directory

Using Telnet

We can use Telnet to look at the filesystem as well. To do this, open your favorite Telnet application. Make a connection to the JNIOR. Log in. You will then use either the dir command or the ls command. Both commands are the same and will list the directory contents.

Use the command of your choice, whichever command is easier to remember, and add “flash” as a parameter. This wil cause the command to list the contents of the flash directory. If the the DCP or default web page is missing then all of the following must be met:

  • www.zip is missing
  • public.zip is missing
  • www/ directory is missing or there is not an index.php file in the www/ directory
  • public/ directory is missing or there is not an index.php file in the public/ directory

The IpConfig/Allow registry key can be powerful to help secure your JNIOR.  It can successfully thwart unauthorized access and prevent DOS attacks.

The danger comes in when the registry key is mis-configured. It can be a typo or not fully configured, something simple, but when this happens it can prevent legitimate attempts to access the unit.

If this happens a USB-to-Serial cable is needed to access the unit via the RS-232 port. Make sure to use the correct serial settings of 115200, 8 data bits, 1 stop bit and no parity. Once connected you can issue the reg command.

Above you can see that the IpConfig/Allow key is set for 10.0.0.0/24. This states that the first 24 bits of the address must match for a network connection to be accepted. If, for some reason, this was mistyped then legitimate connections would not be allowed. This would basically render the network port useless. The user might not have noticed what the error was.

Using the Serial to USB cable is the only way to access the unit. The key can then either be fixed or removed to regain access over the network.

While we are always available one-on-one to answer any questions and/or discuss how JNIOR can help your company, we wanted to answer some of the more frequently asked questions.

Contact INTEG Process Group for additional assistance with your Technical Questions and General Questions.

General Questions

Where is the JNIOR manufactured?

The JNIORs and Expansion Modules are made in the USA. We purchase the PCBs from a company a company in the US. The components are sourced globally. The PCB and components go through surface mount assembly here in the office. Programming and testing is also performed in our office.

What does “JNIOR” stand for?

JNIOR (pronounced “junior”) is a Network I/O Resource utilizing the Java™ platform.

What are the JNIOR Certifications?

TUV Safety Mark (IEC, EN 60950), CE Mark, FCC Class B, CB Scheme Available, RoHS Compliant. A copy of the TUV Certification PDF can be obtained from the All Downloads page.

How much does the JNIOR weigh?

11 ounces (312 grams).

What is the warranty on JNIOR?

2 years. Here is the JNIOR Warranty

How do I submit an RMA?

If you want to return your JNIOR via an RMA, make sure you contact INTEG support first. They will try and review your JNIOR and if it is defective will help you with the RMA process. They can be contacted at support@integpg.com or through our chat on our website.

How does the JNIOR internal time clock keep current?

The JNIOR has NTP (Network Time Protocol) capability.  You can enter an IP address (or URL) and the JNIOR will sync its time when it boots up with that computer. It will continue to sync it every 4 hours.

Do JNIOR Expansion Modules need power?

No. The modules draw their power via the Sensor Port on the JNIOR.

How many Expansion Modules can be connected to one JNIOR?

Multiple plug-and-play expansion modules can be daisy-chained to the JNIOR via the Sensor Port.  The exact number of modules that can be connected is a function of the mix of expansion modules being used.  Each module draws differing amounts of current. Please contact INTEG with your proposed mix of expansion modules.

What programming language do I use to program the JNIOR?

The applications on the JNIOR are developed using Java, but we have standard applications included with each JNIOR that meet a variety of needs so 99% of our customers do not actually do any programming on the JNIOR! But if you want to add your own software, we would be glad to help you get started.

What is the recommended power for the JNIOR?

We recommend 12 Volts DC at 1 Amp.  Although the JNIOR can handle 12 – 24 VDC or AC for the JNIOR power supply. The JNIOR digital inputs and relay outputs handle 0 – 60 volts DC or AC. 

Support Questions

How do you take a Snapshot?

To take a snapshot, you open the support tool and go to the snapshot tab. There you’ll click “take snapshot” and select the JNIOR you want to take a snapshot of.

How do you control external modules with a macro?

To control an external module with a macro command, you’ll create a macro in the support tool and send it to the analog presets program using cinema.

How do you close or pulse an output when the JNIOR boots?

In order to close an output on boot, you can open the support tool and go to the configuration page. On the configuration page in the outputs section, you can set the initial action of any channel to 0 which will close that output on boot. If any positive number is set in the initial action, that output will pulse for that many milliseconds on boot.

How do you invert an input?

Inputs can be digitally inverted on JNIORs to help test when they are triggered. Inverting an input can be done via the JNIOR Web Page, or by setting the ‘Inversion’ registry key through the command line.

How do you view the Environmental Monitoring Module data?

To view data from an environmental monitoring module in a graph, you use the Grapher and Tasker applications. You configure Grapher to read data from logs that will be created by Tasker. You then configure Tasker to log the data from the environmental monitoring module.

Can the JNIOR use the MQTT protocol?

The JNIOR can use the MQTT protocol. You can use the MQTT application to send information through the JNIOR message pump. You configure the MQTT application to a public broker and then send messages from another application on the message pump.

Why can’t the JNIOR connect to a MODBUS server?

The JNIOR can connect to a MODBUS server, but you need the MODBUS application. This application is separate from the Operating System and needs to be activated or else you can’t connect to a MODBUS server. You can do this by going to the application section of the configuration tab in the JNIOR’s WebUI, and clicking the checkbox next to the MODBUS server application.

How do I reboot my JNIOR?

One way you can reboot a JNIOR is simply by pulling the power and plugging it back in. You can also go to the command line from the support tool or JNIOR web page and type “reboot” and then type “y”. This will initiate a reboot as well.

How do I reset my JNIOR back to its factory default?

WARNING: Doing this wipes all data on your JNIOR, be sure this is what you want to do before executing a factory reset. To do a factory reset, its similar to a normal reboot from the command line, but the full command is “reboot -eraseall” followed by “y”. This will NOT work for the Series 3 JNIOR. There is a post explaining how to factory reset a Series 3 JNIOR.

How do I transition from a Series 3 to a Series 4 JNIOR?

Series 4 JNIORS were made to be a drop in replacement for Series 3 JNIORs. While some applications are only usable on Series 3 JNIORs, typically Series 4 JNIORs have an application that provides the same functionality and can be switched to. While different setups may require different steps to upgrade, you can always reach out to JNIOR support for help performing said upgrade.

How do I look at the connections on my JNIOR?

In the command line of the JNIOR, if you type “netstat” a list of connections on the JNIOR will be displayed. A post about the netstat command is in the knowledge base.

How do I use the JNIOR’s WebUI?

The JNIOR’s WebUI (Previously called the DCP) allows you to access and control tons of setting on your JNIOR. It can be accessed by right clicking your JNIOR in the support tool and opening its web page or by typing its IP into a web browser’s URL.

How do I update a JNIOR with an application?

To put an application on the JNIOR, you’ll need to download the application from our website, then open it (Don’t Unzip) in the update tab of the Support Tool. You’ll select ‘publish’ and the JNIOR to update the application to, and once it completes your JNIOR should have that application on it. There is an example post on updating Cinema to a JNIOR as well.

How do I access a JNIOR application that has a webpage?

There are two ways to usually access an application on a JNIOR. One way is by opening the JNIOR’s WebUI and under the configuration tab, in the application section, clicking its pop-out link. If the application doesn’t have a pop-out link, it you can also be accessed by opening a web browser, and typing in the URL your JNIOR’s IP Address followed by /”application name”.

How do I set the time on my JNIOR?

To set the JNIOR’s date and time, you’ll want to access either command line from the support tool or JNIOR web page and login in. You can then enter “date” followed by the date and time you want on the JNIOR formatted as “MMDDYYYYHHMMSS”.

How do I take a backup of my JNIOR?

To take a backup of the JNIOR, you’ll need the support tool. In the Snapshot tab of the support tool, you can select the Take Backup button which can will copy the configurations and files from a JNIOR and create a backup of it that can be transferred to other JNIORs to clone the configuration or to revert to an older configuration if a mistake is made.

Why won’t my JNIOR’s web page load, or show in the support tool?

When the JNIOR is loaded on the network they have DHCP enabled, which checks the network the JNIOR is on and assigns it an IP available. If your network doesn’t support DHCP then your JNIOR will default to the address 10.0.0.201. If another device on the network has 10.0.0.201, then the JNIOR will forgo the IP address and set itself to 0.0.0.0 to avoid an IP conflict. To fix this, you need to change the IP address of the JNIOR, which a post explains here.

Whats the difference between Tasker and Task Manager?

Tasker is a new application that was made to replace the Task Manager application. Task Manager was made for Series 3 JNIORs, and aren’t able to use Tasker. Tasker on the other hand was made for Series 4 JNIORs, which has improved functionality and is easier to configure. For more information, click here.

I have a system that declares the JNIOR as a device and connects on port 9200. Why is it not connecting?

When this happens its typically when a connection is initially being made to the JNIOR during setup. Give your system connecting to the JNIOR a reboot and the connection should establish itself.

I’m sending a command to the JNIOR via a TCP/Serial connection, but why isn’t the JNIOR doing anything?

Something that commands need to include when being sent to the JNIOR is the termination string. For example, if your connecting to the JNIOR using Cinema the default termination string is \r\n. So when you send the JNIOR a command in Cinema, make sure the command ends with \r\n. To check what termination string you need for your connection, based off the application your using on the JNIOR, you can check in the application registry keys in the JNIOR registry of a JNIOR’s web page. (appdata/application name).

If your question wasn’t answered here, check out our knowledge base to see if it’s answered there.

Sometimes you need to find out what the IP Address of the JNIOR is that is sitting on your network.  Sometimes someone else set it up and are no longer working with you or maybe you programmed it but years have passed and you haven’t needed to access the JNIOR because it is performing its job and no attention has been needed.

There are a couple of different ways to find out the IP Address.

By far the easiest way to find the JNIOR IP Address is the use the JNIOR Support Tool.  The JNIOR Support Tool only works on Windows systems.  http://jnior.com/category/news/support-tool/ will have links to the latest, as well as previous, versions of the JNIOR Support Tool.  Once loaded and started you will be presented with the Beacon tab.  The Beacon tab will show all the JNIORs that are present on your LOCAL network that have reported.  When the Support Tool launches a broadcast is sent out asking for all the JNIORs to report their information.  Some network configurations can either help or hinder this operation.  In most cases it works as intended.  Here is a picture of the Beacon screen.  If you have more than one JNIOR shown you can use the Serial Number of the JNIOR to identify which row corresponds to your unit or you can use the identify feature to pulsate the amber LED next to the power indicator.  To perform that function you can right click on a row and select either Query | Identify or Configure | Identify from the menu.

The other way to determine the IP Address of a unit is to directly connect a serial cable to the RS-232 port.  Computers do not come with serial ports anymore so a USB to Serial adapter will be needed.  You can find them at Amazon.  Once the cable is connected, select your favorite terminal application or use the Command Line application included with the Support Tool.  The serial settings must be 115200, 8, 1, none for the baud rate, data bits, stop bits and parity respectively.  Now that the connection is set up you can press enter and the login prompt will be presented.  The default credentials are username: jnior and password : jnior.  You can now enter ipconfig to see the current network setup.

 

 

 

 

 

 

 

 

Lastly, for those who know Morse code, you can unplug the network cable and the status LED will flash Morse code representing the value of the last octet.  You must know the first 3 octets of your network.

    0 --- --- --- --- ---
    1 - --- --- --- ---
    2 - - --- --- ---
    3 - - - --- ---
    4 - - - - ---
    5 - - - - -
    6 --- - - - -
    7 --- --- - - -
    8 --- --- --- - -
    9 --- --- --- --- -

The JNIOR captures network traffic continuously. A large queue is established at boot and a record of network packets is kept. Once the queue fills the oldest packets are dropped. Depending on your network usage that queue might contain the past hour of traffic or much more.

The NETSTAT -C command generates a network capture file /temp/network.pcapng on demand containing the content of the capture queue. For example:

HoneyPot /> netstat -c
LAN connection active (100 Mbps)
 generating capture file...
 /temp/network.pcapng created
 collected 4791 packets from the previous 16 minutes
HoneyPot />

You can download this file to your personal computer. If you have Wireshark installed you will likely be able to double-click this PCAPNG file and it will open right up for viewing and analysis.

By the way you can download Wireshark for free from https://www.wireshark.org/.

Notice that in my example only the past 16 minutes were captured. First of all the capture begins at boot. So if your JNIOR has only been up for 16 minutes that is all that you will get. This, I think, was the case here.

It is important also to note that when you access the DCP you are also using the network. That means that all of the packets involved with your browser access will also be captured. If you leave the DCP up to monitor the status of your JNIOR all of that traffic takes up space in the capture buffer. If you are interested in analyzing the JNIOR interaction with another device that DCP traffic will limit the amount of information you can capture relative to that other device.

One solution is to not use the network to monitor the JNIOR by using the RS-232 (COM) port. But for that you have to be physically at the JNIOR and have the ability to use a serial connection. A better solution is to use capture filtering.

With the JNIOR you can both filter the packets that are to be retained in the capture buffer and filter the packets that you extract into the /temp/network.pcapng file. For example I will set this JNIOR up to ignore HTTP (Port 80) traffic and capture everything else. I can then use the DCP without loading the capture buffer with packets that we are not interested in.

HoneyPot /> netstat -f !80
LAN connection active (100 Mbps)
 capture filter set
HoneyPot />

This tells JANOS to only accept packets into the capture buffer that DO NOT reference port 80. This takes effect immediately (provided there isn’t a syntax error). The next /temp/network.pcapng file that I generate will no longer contain HTTP communications and therefore nothing to do with the DCP. There will be many more packets from a longer period of time all pertaining to other communications that might help with my debugging.

The NETSTAT -F command basically sets the IpConfig/CaptureFilter Registry key. If you mouseover that key in the Registry tab of the DCP and hit F1 you will see the documentation for filtering and the syntax for these filters. These details are in the Registry Key Assignmentsdocumentation. The current version of that documented is distributed as part of the DCP. It will be present on every Series 4 JNIOR that is up to date.

Network Filtering

The content of a network capture or the network clients allowed to interact with the JNIOR can be controlled through dynamic filtering. These filters can be quite simple or, if needed, much more sophisticated.

The IpConfig/CaptureFilter Registry key may optionally define a filter which is applied to incoming packet data prior to capture. There is limited storage for captured information and by filtering you can extend the capture period and the amount of pertinent information collected.

A filter may also be used in generating the network.pcap capture file from the capture buffer. Here the filter allows you to extract only pertinent information and otherwise keep file sizes at a manageable level.

The IpConfig/Allow Registry key may optionally define a filter which is applied to incoming connections. In this case the referenced IP addresses refer to the incoming source IP addresses, those of clients. Referenced port numbers refer only to destination ports, those available on the JNIOR.

IP Address Filters

To filter packets referencing a specific IP address you need only include the IP address in the format “nnn.nnn.nnn.nnn” in the filter string. Any packet that references this IP address either as the source or the destination address will be selected for inclusion. All other packets will be excluded unless covered by some other part of the filter.

To exclude packets referencing a certain IP address you can prefix a ‘!’ exclamation point to the address like this “!nnn.nnn.nnn.nnn”. All packets that do reference the IP address as either a source or destination address will NOT be selected for inclusion. This can also be written as “NOT nnn.nnn.nnn.nnn”.

Note that an IP address is identified by its format, four decimal values between 0 and 255 separated by the ‘.’ period.

The domain syntax allows a range of IP addresses associated with a netmask to be specified. The format is “nnn.nnn.nnn.nnn/mm” where ‘mm’ specifies the number of high order bits in the netmask. For example, “10.0.0.0/24” specifies any IP address in the domain that contains IP addresses 10.0.0.1 through 10.0.0.255 and uses a netmask of “255.255.255.0”. This would be useful in selecting only local traffic for instance.

MAC Address Filters

Although less often required you can filter on a specific MAC address. The MAC address is included in the filter string in the format “hh:hh:hh:hh:hh:hh”. The format is six hexadecimal values (0-9a-f or 0-9A-F) separated by the ‘:’ colon. For instance most INTEG Series 4 JNIORs have MAC address formatted as “9C:8D:1A:hh:hh:hh” where the lower three bytes are assigned in some sequence.

As with IP addressing, packets with MAC addresses may be excluded by writing the filter as “!hh:hh:hh:hh:hh:hh” or “NOT hh:hh:hh:hh:hh:hh”. Again a MAC address is identified by its format.

TCP/UDP Port Filters

A port is specified in the filter string as a decimal value between 1 and 65535 inclusive. No punctuation is used. The capture filter does not distinguish between a TCP or UDP port number. A port may be excluded using the negation “!nnn” or “NOT nnn”.

There are standard ports assigned for various functions. The capture filter knows some of them by name. Some may be reconfigured through the Registry. As a convenience the port may be specified using its protocol name. The capture will be filtered on the port as configured at the time the filter is compiled (at boot or upon NETSTAT command). JANOS recognizes these port names where the default values are shown in parentheses: SMTP (25), NTP (123), JNIOR (9200), FTP (21), HTTP (80), HTTPS (443), TELNET (23), and BEACON (4444). These ports may be excluded using the same negation syntax as previously shown

Boolean Constants

The capture filter will also recognize the terms TRUE and FALSE. True indicates that the packet is to be included and False otherwise.

Logical Operations

To filter on a single IP address, MAC address or port (or to exclude a single item) the filter need only specify the address or port in the associated format. The following would select the communications involved in an email transfer. If this is used as an incoming filter, only email transactions would be captured. If this is used with NETSTAT –C in generating the PCAPNG file, the file would only include email communications.

            NETSTAT –C SMTP
            netstat –c 25

Note that filters (and also commands) are not case-sensitive. Either form above will create a PCAPNG file with just email communications. This assumes that you have not reconfigured the SMTP port. If you have set Email/Port to another port (587 for instance) then the first line will extract your email communications and the second will not. Although the second filter might show an application trying to use the incorrect port.

Filters often need to be slightly more complex in order to include the collection of communications needed. The syntax allows you to specify any number of addresses or ports in any combination using AND, OR and XOR logic. As an alternative you may use the notation ‘&&” and ‘||’ for AND or OR respectively.

As an example perhaps you want to filter only email communications with the SERVER.

            netstat –c 10.0.0.4 && smtp

If you want to also include BEACON communications you might write the filter as:

            netstat –c 10.0.0.4 AND smtp OR beacon

But here you might question the order of precedence of the logical operations. The capture filters do not support an order of precedence but perform the operations from left to right. So this would be calculated as follows:

            netstat –c (10.0.0.4 && SMTP) || BEACON

And this would have done what we had said. If there is some question you can use the parentheses in the filter as shown. The following will create the same subset of packets but would not if we were to exclude the parentheses:

            netstat –c BEACON || (10.0.0.4 && SMTP)

A parentheses grouping can be negated as you would expect. The following will create a capture of all activity EXCEPT email communications with the SERVER.

            netstat –c !(10.0.0.4 && smtp)

Finally if we had wanted to mask these email communications from the overall capture buffer we can install this filter using the command:

           netstat –f !(10.0.0.4 && smtp)

This would result in the following Registry setting and would filter out matching communications until such time as the filter is removed.

            IpConfig/CaptureFilter = !(10.0.0.4 && smtp)

The JNIOR will only capture packets that are addressed to it. That would include broadcasts.

Ok. Well perhaps it is undocumented (and you didn’t hear it from me) but you can set the IpConfig/Promiscuous Registry Key to true. The JNIOR then will capture (subject to any filtering) all traffic including packets not addressed to the JNIOR. But for this to be of any use you will need to be using a Network Hub instead of a Network Switch. There is a difference. The latter “switch” will only pass packets to the JNIOR that are addressed to it in addition to any broadcasts. If you are interested in other traffic you need to use the “hub” which passes all traffic to all connected devices.

The Series 4 JNIOR with a hub then can be a valuable network debugging tool useful in sniffing traffic between two other devices (connected via hubs). It would allow you to remotely use the features of Wireshark.

The JNIOR can create a network capture! This network capture can be loaded in a sniffer application such as Wireshark for protocol analysis. To do this simply follow a few steps.

  1. Create a telnet connection to the unit. DO NOT USE THE DCP AS THIS CREATES A LOT OF EXTRA TRAFFIC THAT WILL FILL UP THE BUFFER.
  2. Execute the netstat -r command. This step is optional. If you are going to conduct a test procedure then you migth want to execute this command so that only the traffic that occurs during your test will be captured.
  3. Conduct your test
  4. Use the telnet connection to execute the netstat -c command. This will create the capture file with the network buffer content.
  5. Use the DCP and the folders tab to pull the resulting network.ngpcap file. It is in the temp directory. It will be removed when the unit reboots!