Update readme
[oweals/nmrpflash.git] / README.md
index 16d09bc0600f6c8b1d4108559c9ee53c1f20cffd..9db374fe194fa4407657c1c7bd137a620d46f9b7 100644 (file)
--- a/README.md
+++ b/README.md
@@ -10,24 +10,26 @@ Prebuilt binaries for Linux, OS X and Windows are available
 [here](https://github.com/jclehner/nmrpflash/releases)
 ([WinPcap](https://www.winpcap.org/install/default.htm) is required on Windows).
 
-````
+```
 Usage: nmrpflash [OPTIONS...]
 
-Options (-a, -i and -f are mandatory):
+Options (-a, -i and -f and/or -c are mandatory):
  -a <ipaddr>     IP address to assign to target device
+ -c <command>    Command to run before (or instead of) TFTP upload
  -f <firmware>   Firmware file
+ -F <filename>   Remote filename to use during TFTP upload
  -i <interface>  Network interface directly connected to device
  -m <mac>        MAC address of target device (xx:xx:xx:xx:xx:xx)
  -M <netmask>    Subnet mask to assign to target device
  -t <timeout>    Timeout (in milliseconds) for regular messages
- -T <timeout>    Time to wait after successfull TFTP upload
+ -T <timeout>    Time (seconds) to wait after successfull TFTP upload
  -p <port>       Port to use for TFTP upload
- -U              Test TFTP upload
+ -R <region>     Set device region (NA, WW, GR, PR, RU, BZ, IN, KO, JP)
  -v              Be verbose
  -V              Print version and exit
  -L              List network interfaces
  -h              Show this screen
-````
+```
 
 ### Using nmrpflash
 
@@ -40,10 +42,10 @@ First, we have to assign a static IP address to our network interface.
 In this example, we'll use `192.168.1.2`. All available network interfaces
 can be listed using
 
-````
+```
 $ nmrpflash -L
 eth0      192.168.1.2  f2:11:a1:02:03:b1
-````
+```
 
 Now we can `nmrpflash`. The argument for the `-a` option needs
 to be a *free* IP address from the same subnet as the one used by your
@@ -52,15 +54,17 @@ be downloaded directly from netgear. For details on how to do this, see
 [here](#obtaining-firmware-images). Power on your device immediately 
 after starting `nmrpflash`.
 
-````
+```
 $ nmrpflash -i eth0 -a 192.168.1.254 -f EX2700-V1.0.1.8.img
 Advertising NMRP server on eth0 ... /
 Received configuration request from a4:2b:8c:00:00:01.
 Sending configuration: ip 192.168.1.254, mask 255.255.255.0.
+Received upload request: filename 'firmware'.
 Uploading EX2700-V1.0.1.8.img ... OK
 Waiting for remote to respond.
 Remote finished. Closing connection.
-````
+Reboot your device now.
+```
 
 ### Common issues
 ###### "No suitable network interfaces found."
@@ -87,8 +91,8 @@ operation took longer than 120 seconds.
 
 `nmrpflash` refuses to use an IP address / subnet mask combination that would
 make the remote device unreachable from the device running `nmrpflash`. For
-example, if interface Z uses 192.168.0.1/255.255.255.0, assigning
-192.168.2.100/255.255.255.0 makes no sense, because the TFTP upload will
+example, if the IP address of your computer is 192.168.0.1/255.255.255.0, assigning
+192.168.2.1/255.255.255.0 to the router makes no sense, because the TFTP upload will
 fail.
 
 ###### "IP address of X has changed. Please assign a static IP to the interface."
@@ -103,14 +107,15 @@ for example:
 
 `nmrpflash -i eth0 -a 192.168.1.1 -f firmware.bin -c 'ifconfig eth0 192.168.1.2'`
 
-This will execute the command specified by `-c` prior to starting the TFTP upload.
+This will execute the command specified by `-c` prior to starting the TFTP upload (in
+this case setting the IP address to 192.168.1.2).
 
 ### Building and installing
 ###### Linux, Mac OS X, BSDs
 
-````
+```
 $ make && sudo make install
-````
+```
 
 ###### Windows