Home
Name Modified Size InfoDownloads / Week
SetupEnIPExplorer_1.2.1.exe 2023-11-22 1.6 MB
SetupEnIPExplorer_1.2.exe 2022-09-15 1.6 MB
SetupEnIPExplorer_1.1.exe 2019-02-14 667.8 kB
README.txt 2018-04-12 6.7 kB
SetupEnIPExplorer_1.0.exe 2018-04-12 665.8 kB
SetupEnIPExplorer_0.9.exe 2017-11-11 662.1 kB
Totals: 6 Items   5.1 MB 109
-------------------------------------------------------------------------------
                   EnIPExplorer- Ethernet/IP Explorer
-------------------------------------------------------------------------------

1.  INTRO

	1.1 ABOUT
		EnIPExplorer is a graphical windows program for exploring and navigating
		Ethernet/IP devices. 
		The project was created in order to test/teach/learn and evaluate the 
		protocol.		
	
		This document is subject to change.

	1.2 CREDITS
		The project was created by F. Chaxel, in 2016. 
		Graphics are the usual FamFamFam: http://www.famfamfam.com/
		It is, of course, inspired by the best Bacnet Explorer, Yabe :
		http://sourceforge.net/projects/yetanotherbacnetexplorer/
		and also Profinet Explorer
		http://sourceforge.net/projects/profinetexplorer/

2.  USAGE

	2.1 Exploration
		- Start EnIPExplorer
		- Select "Open Interface" under "Functions".
		- Press the "Add" button.
		  The program will now open an Udp connection and send out a
		  broadcast "ListIdentity". If Ethernet/IP devices exist on the local 
		  network they will show up in the tree.
		- If you have more than 1 ethernet card, you can also select the local 
		  ip interface (before you click the "Add"). Either select one from 
		  the list or write one by hand, if the interface is not displayed. 
		  The program will fetch all "Classes" from the devices and
		  display them in the tree. Nothing is displayed if the needed network 
		  service is not supported by the devices.
	2.2 Read Class data
		- When a device (Plc or other) is selected, the class list is requested
		  through the network and displayed (Read attribut n°1 -ObjectList- of 
		  the instance n°1 of the class n°2 -Message Router- ).
		- If a class is selected, a network request is sent and the class data
		  is read and displayed in the properties panel.
		- With the shortcut key CTRL-C one can add classes in the list to try
		  to read values (this will not add the class in the remote device,
		  it's just give you the possibility to read). 
		- F3 key will refresh the values.
	2.3 Read Class instances data
		- For common classes (Identity, MessageRouter, ...) one class instance
		  is already visible and could be read out. Select it and the values are 
		  displays in the properties panel.	
		- With the shortcut key CTRL-I one can add instances in the list to try
		  to read values (this will not add the instance in the remote device). 	
		- F3 key will refresh the values.	
	2.4 Attribut data (Read & Write)
		- With the shortcut key CTRL-A, same behaviour as §2.2 and $2.3
		- RawByte & Decoded (with user decoder) data could be modified and are
		  sent to the remote device (change a value then hit Enter key).
		- F3 key will refresh the values.
		- Decoder could be the default (depending of the class & attribut n°),
		  or a standard default of UINT, or a user defined : see Option menu.
		  The decoder can be changed using the context popupmenu (see §2.8).
	2.5 Save/Open Files
		- The full Tree (from Devices to Attributes) could be save/load from
		  a file. This file could be edit/modify using an spreadsheet (Excel or
		  OpenOffice/LibreOffice for instance). The format isn't too complex
		  to be infers. It must be strictly respected.
		- The content Online & Offline (file) are merged together if some 
		  difference appears. The names coming from the file are the winners.
		- Several files could be open successively, the content are added.
		- Save is not automatic, but must be done by hand.
	2.6 User Decoders for Attributes
		- Attributes could be decoded using a simple editor. A right click
		  on an attribute shows a popup with an item "Decode Attribute As". 
		  The list is build with the file saved using the TypeEditor present in
		  the top level Menu : "Option"-"Edit User ....".
		- The editor Grid could be filled with the description of the user types.
		  Looks the default types and do it yourself for new one. Insert key can
		  be used to add new lines, Delete key also after selecting the full line.
		  Type name should be unique, field name in it's type also.
		  The number of user types is not limited.
		- To avoid compiler errors, names should respect something like described
		  in http://www.c4learn.com/c-programming/c-variable-nameing-rules/
		  Basicaly with the editor, names are +-checked before validation (but
		  not unicity).
		  You can also modify the file using a text editor or a programmed code. 
		  The format isn't too complex to be infers. It must be strictly respected.
	2.7 Implicit messaging
		  ForwardOpen T->O, O->T and Config. Drag/Drop the Attributes for each
		  on the associated panel, when press Forward Open to begin.

3.  SETTINGS OPTIONS
	3.1 TCP_LAN_Timeout & TCP_WAN_Timeout
		  - In ms : used for connection & read & write operations. LAN is for
		  autodiscovered devices, WAN for whoses added by the Menu Add manually.
		  - For the connection, the timeout is two time this value.
	3.2 PeriodicUpdateRate
		  - In ms : used to update the current selected Instance or property value
		    0 or less : option disabled. Min value is 200ms.
	3.3 DefaultRemoteDevice
		  - Used to fill the Textbox with this default value.
	3.4 CSVSeparator
		  - Value for treeview CSV file (spreadsheet compatible format) see §2.5.

4.  TESTS
	The EnIPExplorer has been tested with really a too few number of others tools :
		- Wireshark.
		- Wago 750/881
		- Eurotherm (Schneider Electric) EPack 
		- OpENer sample	device (GitHub)

5.  SUPPORT
	There's no support for the project at this time, and certainly never. 
	If you write to me, I'm unlikely to answer. 

6.  REPORT ERRORS
	Yes, there be errors alright. There always are. Many won't be interesting
	though. Eg. if you find a computer that behaves differently from others, 
	I'm unlikely to care. This is not a commercial project and I'm not trying 
	to push it to the greater good of the GPL world. (This may change though.)
	If you find a device that doesn't work with it, it might be interesting.
	But in order for me to fix it, I need either access to the physical device
	or printouts from programs like Wireshark, that displays the error.
	Write to me using the Sourceforge link.

7.  CONTRIBUTE
	Really? You think it's missing something? It's not really meant as a huge 
	project, but if you really must, try contacting me using the Sourceforge
	link.
	
8.  MISC
	Project web page is located at: 
	https://sourceforge.net/projects/EnIPExplorer/

9.  DEV. ROADMAP 
	Maybe a rawdata user selectable format : byte, short, uhsort ...
Source: README.txt, updated 2018-04-12