DyIO

The Dynamic Input / Output module is a piece of hardware, a USB computer peripheral, that allows users to quickly and easily connect any computer with the physical world in a way that has never been easier. Plug sensors, LEDs, servos and other peripherals directly into the DyIO’s channels and then use a normal computer or laptop to get values from sensors and set values for outputs. It is the first module that is powered by the Turbo Bowler Communications System (Turob BCS).

Easy to Use

Connect the DyIO with a USB cable and start playing with sensors, motors and other pieces in minutes You can start collecting data, moving servos and setting outputs without writing a single line of code. Coding with the DyIO couldn't be easier. Check out the programming tutorials to see some examples.

Cross Platform - Use what you know

We've tested the DyIO on all major operating systems. This means that users are able to write code on Mac deploy to Linux and test in Windows without having to worry about different tool chains. Users are able to get up and running in as little as 8 minutes. Likewise, you can use almost any programming language or environment, currently implemented in Java, Python (Jython). Any other langauge can be added as well, from C to MatLab to Excel! Using the Neuron Robotics Development Kit, users already have a powerful library out-of-the-box with standard Java SE.

Advanced Features

Dynamic Inputs & Outputs
The DyIO has 24 channels that can configure to be whatever mix of inputs and outputs is need at the time.

  • 24x Digital Input – All channels
  • 24x Digial Output – All channels
  • 24x Servo Output – All channels
  • 8x Analog Input – Channels 8 – 15
  • 4x PWM Output – Channels 4 – 7
  • 4x DC motor controller signals – Channels 4 – 7, with direction flags
  • 1x Asynchronous Serial (UART) In & Output – Channels 16 & 17
  • 1x Synchronous Serial (SPI) In & Output – Channels 0,1, & 2
  • 4x Counter/Encoder (Tick, Direction & Home) Inputs
  • 4x Stepper Controller (A, B & Home toggle) Outputs
  • 8x Control-loop script groups (PID)
  • R/C PPM signal reader on Channel 23
Each PID group allows one input (counter or analog input) to be linked to one output (DC motor or Servo) in a real-time closed loop controller. The inputs can be set to asynchronous modes so that the DyIO will send alerts when there are changes verses having to poll inputs constantly.The outputs can use the USB line for power or can use the external battery connection for higher current applications (i.e. servos) Drive up to 24 servos simultaneously!

Open Communications
Controlled via the Bowler Communications System. Interoperates with any BCS complaint system! Addressed via IEEE standard MAC address. Built-in USB is a universal serial port. No drivers needed on most systems. USB connection allows users to directly plug-in the DyIO to their computer or they can use the Bowler Expansion Port to use other communication types (i.e. the bluetooth wireless module) The Bowler Expansion Port allows the device to communicate using different add-on peripherals (i.e. the bluetooth wireless module) naively so swapping out one module for USB or a different module is seamless. User update-able firmware allows users to get the latest updates and deploy it to their devices in the field.

Updating the Firmware

  1. Download and install the latest version of the NRDK.
  2. Unplug anything that is in channels 0-3.
  3. Press and hold the DyIO reset button for 3 seconds (the small hole near the brim of the bowler hat) with a paperclip. The indicator LED should be flashing, release the button once it is flashing
  4. Run NRConsole, it will now know the device is in bootloader mode.
  5. Select the firmware that you’d like to use. The latest firmware is available in the NRDK under the “firmware” folder. If you used the windows installer, it will be in the install directory under "firmware".
    • If you have an older DyIO (as indicated by no white lettering on the bottom of the circuit board) then use the "legacy" firmware.
  6. Load the firmware.
  7. Once the DyIO resets and the indicator LED becomes solid blue or blue/green once again, the firmware has been updated.
  8. Once the firmware has been updated, unplug the DyIO and plug it back in.
  9. If the DyIO fails to exit bootloader mode, gets interrupted during an update, stays in bootloader mode after being unplugged and plugged back in, the status light blinks back and forth between green and red, or the firmware update fails, hold the reset button while plugging in the usb and reconnect in NRConsole

Hardware Reference

Center LED Key:
  • Blue: Device is connected to an application and communicating.
  • Blue/Green: Device is not connected to an application or not communicating.
  • Blue/Red: Battery voltage fluctuation error. This will re-check itself every 10 seconds.
  • Red: Error condition. Try re-flashing the firmware.
  • Red to Green slow flashing: Error condition. Try re-flashing the firmware. Hold the firmware button while plugging in the USB.
Bank LED Key:
  • Green: Rail is at regulated voltage, 4.25v-5.25v
  • Red: Rail is at servo power voltage, 6.5v-8.5v
  • Red/Green (orange): Rail at an invalid voltage for powering anything. 0v-4.25v or 5.25v-6.5v
DyIO Power Pins

Requirements:
  • Java 1.6
  • Windows 7, Linux 2.6 kernel or Mac OSX 10.5 and up
  • USB 2.0 port
Drivers and Software:
Dimensions:
  • 3" x 3" x 0.5"
  • 0.1" between channel pins (bread board & hobby servo friendly)
Price: $149.00

© 2010 Copyright Neuron Robotics, LLC. All Rights Reserved.