ioBridge Web Gateway Configuration

Introduction

ioBridge Web Gateways help bridge the gap between the physical world and the World Wide Web. The gateways and online tools at www.ioBridge.com enable you to evaluate ioBridge’s technology and easily get your projects or products on the web. There is no need to run a web server or track ever changing dynamic IP addresses. The gateway takes care of the internet connectivity and the customizable widgets on the ioBridge website remove the need for complex programming. Just plug in your gateway, register on the ioBridge website and within minutes, you’ll be interacting with lights, switches, servos and sensors. Keep your widgets private on your secure ioBridge dashboard or publish them on your website for the entire world to enjoy!

Gateway Models

ioBridge offers various Web Gateway models including the IO-204, the IO-204-PRO (now discontinued) and the latest Gamma model shown below.

 

Features

The gateways have many features in common including some features unique to a particular model:

Feature

IO-204

Gamma
Web-based Monitoring and Control

Input output channels (4x Analog In; 4x Digital/Pulse In; 4x Digital Out)

Pulse counting; pulse output and serial data output

Optional Function Boards with built-in sensor scaling (Temperature; Humidity; Light; Range)

Ethernet connectivity

Firewall pass-through for easy network installation (no port-forwarding or dynamic DNS required)

Highly secure encryption based communication

Personal Web Dashboard

User definable drag-and-drop dashboard Widgets

Easy wizard-based setup (no software development required)

Web-based Data Logging

Charting of data logs

4 readings logged every 10 minutes

30 day data log storage

Easy to integrate with and extend using API access

Wizard-based On-board Rules and Actions for control even when offline

Configurable MAC address and DHCP host name

144 API transactions in 24 hours (alerts; external posts; API access)

Non-volatile memory keeps your settings during power down

Configurable network disconnect failsafe settings

Upgradeable firmware over Internet

Optional add-on Smart Board capability (X10; Servo; Serial)

 
On-board real-time clock to enable time-based rules*

 

Serial API to update variables (with optional serial adapter)

 

Optional internal expansion board for wireless, RS-232 and other capabilities

 

External DC supply of 8-36V

 

Screw terminal connectors

Extended temperature range

Electrostatic protection

Custom scaling using Expression Builder

8 readings logged every 1 minute with 1 year data log storage (Upgrade to the free 4 reading logged every 10 minutes)

* Future feature not currently available.

Gateway Connections, Indicators and Controls

Gateways have many connections, indicators and controls in common as shown in the diagrams below.
IO-204
IO-204-PRO
Gamma

I/O Channels

Analog Input

The analog input on each channel uses 10bit analog-to-digital conversion (ADC) for the IO-204 and IO-204-PRO and 12bit conversion for the Gamma. As an input voltage varies from 0V to 5V DC the raw analog values ranges from 0 – 1023 for the 10-bit models and 0-4096 for the 12bit models. The Gamma web gateway includes on-board 1% 250 ohm resistors that can be switched across the analog input to measure 0-20 mA currents.

Digital Input

The digital input accepts voltages of 0v and +5v DC to indicate digital logic of 0 and 1. The digital input can also count the negative and positive edges of input signals.

Digital Output

The digital output pin on each channel can generate digital logic of 0 and 1 by outputting 0v and +5v DC. The output current is limited to 20ma. The digital output also transmits pulses at microsecond pulse widths and asynchronous serial data at bauds rates of 300, 600, 1200, 2400, 4800, 9600, 19200 at variable pacing.

Pin-outs

 

Requirements

Network

Gateways requires a 10/100/1000Base-T auto-negotiated Ethernet connection. Because of the way gateways communicates with the server, no additional ports need to be opened on the firewall or router.

MAC Filtering

If the network uses MAC address filtering, the module’s MAC address will need to be added to the router’s “allow” table. The MAC address of the module is configurable via the ioBridge.com Interface.

IP Addressing

If the network uses DHCP, the module will request an IP address and obtain an IP automatically by default. If DHCP fails, the module sets itself to an IP address of “169.254.19.77”. By using the telnet menu, the IP Address, Subnet Mask, Gateway, and DNS Addresses are configurable.

Getting a Gateway’s IP Address

It is possible to check the Gateway’s IP address by rapidly pressing the LINK button 3 times row. The IP address will shown on the LED display one digit at a time. An underline character represents a dot.

Accessing the Configuration Menu

By default, gateways configured to dynamic IP assignment. The unit’s IP address, gateway, subnet mask and DNS can to changed through a configuration menu. The menu is only accessible via telnet when the IO-204 is in “LINK” mode.

  1. Attach the gateway to your network.
  2. Check the gateway’s IP address by rapidly clicking the LINK button 3 times.
  3. After you have the IP address, hold down the LINK button for a few seconds until the LED display begins to flash.
  4. Open a telnet client and access the menu…Windows XP: click Start, Run, then type “telnet XXX.XXX.XXX.XXX” (replacing XXX.XXX.XXX.XXX with the gateway’s IP address and without the quotes) into the box and click OK.Windows Vista/7: By default, the telnet client is disabled. To enable it, go to Control Panel → Programs → Programs and Features → Turn Windows Features On or Off. Then check the box beside “Telnet Client”. Now open the start menu and type “telnet XXX.XXX.XXX.XXX” (replacing XXX.XXX.XXX.XXX with the gateway’s IP address and without the quotes) into the box.
  5. From the telnet configuration menu, change to static IP by typing 1 then enter. The other addresses are configurable by choosing the menu number and hitting enter.Note: The backspace and delete keys to not work with the telnet menu. If a mistake is made while entering an IP address, it is best to exit the option by hitting enter and trying again.
  6. Some options require the gateway to be rebooted before the setting takes affect. For example, switching from static IP to dynamic IP. If a reboot is needed the gateway will show a message to let you know. Typing r at the command prompt will cause a reboot.
  7. If no reboot is required, use q to quit the configuration menu.

Electrical

Gateways requires a regulated electrical supply of 5V at 200mA on a 2.5mm coaxial connector (center is +5V). The standard wall adapter supplied with the module is rated for approximately 1 Amp. This extra current allows external circuits and devices to be powered directly from I/O channel connectors.

Firmware

Upgrade

A Gateway’s firmware can be upgraded. This is initiated from the Modules settings page of the ioBridge web interface (Look for the upgrade link on the left side under “Module Details”).

Upgrading a gateway will require the following steps:

  1. Make sure all the channel are set to I/O mode
  2. Unplug any boards or circuits from the I/O channels
  3. Make sure the gateway is online
  4. Click the “Start Upgrade” button
  5. The LED display will begin to make a circular pattern as the new firmware is downloading. The LED display will show an F when download is finished (usually within 1 or 2 minutes).
  6. Hold down the gateway’s LINK button until the LED display begins to flash and immediately let go of the button.
  7. Within a few seconds the gateway will begin to reprogram itself. During the time, both the red and green indicator LEDs will be lit. It is important not disturb the gateway’s power supply at this time. This should only take a few seconds.
  8. The gateway will reset and come back online with the new firmware.
  9. Plug your interface boards back in and reconfigure your channel modes for the proper settings
  10. If any on-board rules were running on the gateway, they will need to be “re-synced” as they get deleted during the upgrade process

Tip: When holding down the LINK button to get the LED display flashing in step 6, make sure you release the button as soon as it starts flashing. If you hold it down too long the module will think something is wrong and it will abort the upgrade.

IO-204 Firmware Versions

C4.9

– Fixed a bug that prevented some on-board variables from being saved in non-volatile RAM

C4.8

– Added support for a future feature involving on-board rules.

C4.7

– Increased TCP buffer size to enable operation on a Hughes Satellite connection.

C4.6

– Extended DNS timeout.
– Fixed a bug that stopped static IP mode from being selectable via telnet menu.
– Added a “last Chance” watchdog timer to catch modules hanging on DNS requests.

C4.5

– Adjusted TCP buffer to help IP fragmentation issues on networks with tiny MTUs.
– Fixed a bug that stopped static IP mode from being selectable via telnet menu.
– Fixed a bug that led to incorrect pulse counts if onboard rules were used to push digital input state changes.

C4.4

– Added a system-wide watchdog timer. Although it’s very rare that a gateway will hang, this should reset the module in that situation.
– Reallocated TCP and MAC buffers. This should improve performance with gateways connected over ATM links.
– Added a additional check for when a DNS query fails.
– Added additional 32 bit variables to on-board rules.
– Modified on-board rules variables so they don’t automatically reset upon syncing rules.

C4.3

– Fixed a bug that stopped DNS resolution on certain networks.
– Modified the UDP checksum routine to increase compatible with other wireless bridges.
– Modified the DHCP routine to time-out and reset when the transaction fails.
– Changed the on-board rules routine to ensure that the rules are executed in proper order to support pulse count data logging.

C4.2

– Fixed a bug that kept the on-board rules from reading the state of a digital output correctly when an output pulse was being used on the same pin.
– Tweaked network initialization routine. This should help with the twitching servo problem during local network outages.
– Fixed a bug that delayed the start of pushed updates after power up.

C4.1

– Fixed a bug that stopped the Serial Smart Board from receiving bursts of data. This fix should also make smart channel communication more robust.

C4.0

– Added user configurable on-board logic rules. This will allow the module to perform functions regardless of whether it is online or offline.
– Added Telnet configuration menu for DHCP/Static IP option, Gateway, Subnet Mask and DNS. The menu is only accessible when the module is in LINK mode.
– Changed the module to assign itself an IP address if DHCP isn’t available.
– Added the ability for the module to display its IP address. This feature is initialized by quickly pressing the LINK button 3 times in row.
– Added pulse counting to all four digital inputs. The pulse edge count types are positive, negative and both.
– Completely rewrote parsing routines. Processes commands considerably faster now.
– Fixed DHCP issue when using the gateway with Mac OS X as a wireless bridge
– Changed the hard-reset feature. The gateway now requires the button to be pressed for a few seconds as power is applied. Previously, it was possible to accidentally hard-reset the module when plugging in the power cable.
– Removed the need to put the module in LINK mode when upgrading the firmware. This makes it easier to upgrade the firmware when physical access to the unit it difficult. (actually this hasn’t fully been implemented yet.)
– The gateway no longer resets itself when the network goes down or the LAN cable is unplugged.
– Changed the display to show no number when there is no network preset. It used to show a zero which was very bright and basically unnecessary.
– Changed the start-up network negotiation sequence to end in 8 instead of 9.
– Changed gateway to know immediately when LAN cable is unplugged. It used to take up to 25 seconds.

C3.9x

This is a beta firmware. If you have it, upgrade.

C3

– Module now pushes data on analog input trigger and reset
– Pulse function added for digital output
– Shortened the length of time a number is displayed during a channel command
– Added a UDP checksum routine
– Added support for networks using the DHCP broadcast flag
– Module would sometimes reset if a channel was set for a smart board, but none was plugged in. This fix will decreased the likelihood of this happening.
– Module now averages 16 analog input samples instead of using a single data point. This should help in noisy environments
– Added a work-around for legacy DHCP/BOOTP relays on large enterprise networks. (Thanks Lennon)
– Added serial out function on the digital output pin

C2.9

This is a beta firmware. If you have it, upgrade.

C2

Original firmware version.

Factory Defaults

Gateways contains non-volatile memory, meaning settings are stored even when the device is not powered. In the event that the gateway’s memory needs to be returned to the factory default settings, a hard reset is required.

To perform a hard reset:

  1. Unplug the power cord
  2. While holding down the LINK button, plug the power cord in – keep the LINK button pressed until the LED display shows a rotating pattern for a second or two indicating the module is re-writing its memory
  3. Release the LINK button

Indicators

When performing various operations on the module, the module will indicate the status through two visual indicators: surface-mount Red/Green Connectivity Status LEDs and a 7-segment LED display.

Connectivity Status LED

When the Connectivity Status LED is green, the module is authenticated and connected to a server. When the status LED is red, the module is not fully associated to a server. During a hard-reset or firmware upgrade, both the red and green LED will flash rapidly for about a second.

LED Display

The LED display is used to convey information for a variety of reasons. In general if the the Connectivity Status LED is red the LED Display is an error message and if the Connectivity Status LED is green, the LED Display is which channel is currently active when commands are being processed.

LED Display during startup (Connectivity Status LED is red)

Gateways goes through a series of steps to get Internet connectivity. Normally the entire process takes just a few seconds. The current step is shown on the LED display during startup. If the module fails to get online, knowing the step that fails may be helpful for troubleshooting network problems.

  • Red Status Light Only – Module has booted successfully, looking for network connection
  • 1 – Network connection has been established
  • 2 – Successful DHCP transaction, the module now has an IP address
  • 3 – Starting DNS resolution
  • 4 – DNS resolved
  • 5 – Looking for an Internet gateway
  • 6 – Internet gateway found, initialing connection with server
  • 7 – Connected to server
  • 8 – Authentication
  • Green Status Light Only – Everything is OK, begin normal operation

UART Expansion Headers

The IO-204-PRO and Gamma include a 0.1” expansion header with the following pin outs that are labeled on the printed circuit board.

A second unlabeled expansion header is included on the board. This header is not connected and is simply used to support optional expansion boards.

Gamma Adapter Header

The Gamma includes an additional 20 pin header labeled J3 that is used for connecting Adapter Boards such as the XBee and RS-232 adapter boards.

Getting Started

Power up

Gateways don’t have a power switch. It’s a piece of networking equipment that is meant to be on all of the time. To power it up, just plug in a network cable and the power cord. Assuming the basic network requirements are met, the module will get online by itself. Digits, increasing from 1 to 8, will be shown on the LED display and the Connectivity Status LED will turn green. The module may restart itself and start the process over again if a connection attempt fails.

Link Module

If you have a new module, the first step is to link the module to your account. You will have to have physical access to the module and know the serial number.

  1. Under the Module tab, click “Link Module”
  2. Enter Serial Number (found on top label of module) and click “Next”
  3. Press and hold the “Link” button on module and click “Next”
  4. Enter the numbers that appear on the gateway