Menu

NetworkViewer

Quick Links

Download

Current release : 1.13alpha.

SVN Repository

SourceForge File Download

Introduction




The NetworkViewer is a cross-platform Qt4 GUI used to interact with the distributed nodes on the Network. The protocol used is described in the NETVProtocolStack information page and support multiple transmission mediums.

Specifications

  • Support multiple modules/nodes on the bus with multiple types of microcontrollers
  • Easy read/write access to distributed variables
    • Each module contains its own configuration and variables
    • Configurations can be made dynamic and change over time
  • Support visualization of multiple variables simultaneously
    • Textual visualization is also supported
    • Real-Time plot
  • User-defined graphical plugins for easier interaction with modules
  • Support multiple communication protocols through plug-in drivers

Authors

  • Dominic Létourneau (Qt Code)
  • Pierre Lepage (Initial VB code)

Getting Started

1) Device Selection

At startup, NetworkViewer automatically scans device drivers and add them to the "Device Selection Dialog".



You can click on "Configure" to configure the driver. Once you have selected the driver, you will get to the NetworkViewer main view. Driver preferences are stored in your local configuration file and will be remembered next time you start NetworkViewer.

Note : Some drivers don't have configure dialogs.

Available Device Drivers

TABLE 1 : Available NetworkViewer Device Drivers

DRIVER NAME DRIVER DESCRIPTION OS

SerialEmulator
Serial protocol for single device communication using the [NETVProtocolStack].
Windows/Mac/linux

SerialBridge
CAN to Serial bridge using the [PIC32Dev] module.
Windows/Mac/Linux

PCANDevice
Peak Systems PCAN USB device using the [NETVProtocolStack].
Windows/Linux

EthernetBridge
Ethernet (TCP) to CAN bridge using the [PIC32Dev] module.
Windows/Mac/Linux

Loopback
Virtual test device
Windows/Mac/Linux

2) NetworkViewer Main View



In the Main View you have the following elements :

  • (1) The debug console. This is used to display debug information.
  • (2) The discovered modules by the device driver. Each second, a special "ALIVE" message is sent to the bus to discover modules. Modules answering the request will be displayed here.
    • Each module have the following information available when replying to "ALIVE" requests :
  • PROJECT_ID. The project ID that will describe the internal variables of the module.
  • DEVICE_ID. The device ID on the bus.
  • CODE_VERSION. The user code version of the firmware.
  • PROCESSOR_ID. The processor information (type). This will be used in future version of NetworkViewer to determine how to send firmware to the microcontroller.
  • PROTOCOL_VERSION. The version of the NETVProtocolStack used (currently = 2 ).
  • STATE. The state of the module (IDLE, NORMAL, BOOT).
  • BOOT_DELAY. The bootloader delay before starting the user program. This will be used in future version of NetworkViewer.
  • (3) The ScopeView to plot variables
  • (4) The Selected driver and Send/Receive counters.

3) Module Configuration View



Configuration files (profiles) are scanned when you double click on a module. If a configuration file matches the PROJECT_ID sent by your module, the configuration is loaded and internal variables are displayed. All variables in a module can be seen as a continuous memory region (single byte array) that is addressed with an offset and a byte size for each individual variable.

Each variable have the following fields :

  1. Activated. If the variable is scheduled for updates.
  2. Name. The name of the variable.
  3. Value Type. Supported types are : uint8, sint8, uint16, sint16, uint32, sint32, float, double.
  4. Mem Type. 0=RAM, 1=EEPROM, 2=SCRIPT.
  5. Mem Offset. The offset of the variable in the microcontroller memory.
  6. Value. The value of the variable.
  7. Description. The variable description.

4) Displaying Variables on the ScopeView

5) Using Plugins

Available Plugins

TABLE 2 : Available NetworkViewer Plugins

PLUGIN NAME PLUGIN DESCRIPTION PLUGIN VERSION PLUGIN AUTHOR(S) DOCUMENTATION

ScriptEngine
Javascript scripting
1.0,Alpha
Dominic Létourneau
[NetworkViewer:ScriptEngine]

ScopeView
Graphical Oscilloscope
1.0,Alpha
Dominic Létourneau
[NetworkViewer:ScopeView]

Logger
Data Logger
1.0,Alpha
Dominic Létourneau
[NetworkViewer:Logger]

dsPICBootloader
dsPICBootloader
1.0,Alpha
Dominic Létourneau
[NetworkViewer:dsPICBootloader]

Developers


Related

OpenECoSys-Wiki: HOWTO
OpenECoSys-Wiki: NETVProtocolStack:CANImplementation
OpenECoSys-Wiki: NETVProtocolStack
OpenECoSys-Wiki: NetworkViewer:About
OpenECoSys-Wiki: NetworkViewer:Developers
OpenECoSys-Wiki: NetworkViewer:dsPICBootloader
OpenECoSys-Wiki: OpenECoSys
OpenECoSys-Wiki: PIC32Dev
OpenECoSys-Wiki: Projects
OpenECoSys-Wiki: Use_NETV_with_Arduino
OpenECoSys-Wiki: Use_NetV_as_a_serial_interface
OpenECoSys-Wiki: Use_NetV_as_a_serial_interface_-_16_bits
OpenECoSys-Wiki: Use_NetV_as_a_serial_interface_-_8_bits

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.