So your looking to write your own code to run on the JNIOR. You have come to the right place.

Getting Started

Our Getting Started page will walk you though the steps required to get up and coding using the NetBeans IDE. INTEG uses NetBeans for all of our Java programming. We will use NetBeans for the majority of topics covered on this site.

There are almost limitless possibilities when it comes to what you can program on the JNIOR. Most of the applications that we have written have come from customer requests over the years.

Features Overview


We will start with talking about the I/O because that is what the JNIOR is. An I/O box. I/O can represent many things. Network I/O, Serial I/O and Signal I/O. In this section we will talk about the Signal I/O.

While you can sample the I/O states in a loop to detect changes, JANOS provides a class for working with the iolog. This class helps when the accuracy of I/O edge times are needed. The iolog will provide accurate edge time at the millisecond resolution. The iolog holds the last 512 input transitions as well as the last output transitions. There are many ways to query the iolog to get the data you need.


Having Ethernet access is key for many applications. The JNIOR can communicate in many different ways such as TCP, MQTT, Email, Message Pump, DMX, etc. These different communication methods can all be implemented in the software development of any application.


Applications can log information they are generating into a text file to view. This feature can be crucial to some users, letting them be able to monitor data that constantly needs supervision. These log files can be had to constantly create new files to store logged data when one files data has been completely filled.

Knowledge-Base - Embedded Programming October 30, 2020

Getting Started

Hello World - July 12, 2018
JANOS Insiders Guide - July 12, 2018
System and Message Processing - July 12, 2018
Contract with INTEG - July 12, 2018

Relay Control

Write Outputs - July 11, 2018
Pulse Outputs - July 12, 2018
Set Initial Output States on Boot - July 1, 2021

External Modules

A JNIOR application for setting the Volume on the Control Panel - March 27, 2019
Log Temperature - August 19, 2021

Serial Port

Serial Input Buffer Size - November 7, 2017
Barcode Scanner - July 24, 2018
Serial Control Application Source Code - November 16, 2019
Serial Input State Reporter - July 30, 2021


Immutable Blocks - July 24, 2018
MODBUS Registers - July 24, 2018


Ensure one instance of a process is running at a time - July 24, 2018
Watchdog Sample - July 31, 2018
Perform a reboot from Java Application - June 17, 2019


Log Temperature - August 19, 2021


Easy Default Configuration - December 4, 2017

I/O Monitoring

IO Log Monitor - July 25, 2018
Multiplexing Sample Application - February 12, 2020
Serial Input State Reporter - July 30, 2021


Network Active - November 2, 2017
Outgoing HTTP Request - December 8, 2017
MODBUS Registers - July 24, 2018
Web Page for System Message Pump - July 25, 2018
Sending MQTT Messages Using The Message Pump - January 29, 2020

Message Pump

System Message Pump - July 25, 2018
Web Page for System Message Pump - July 25, 2018
Sending MQTT Messages Using The Message Pump - January 29, 2020