Setup NSLU2

From Meteohub Wiki
Revision as of 13:15, 28 September 2021 by Admin (talk | contribs) (Created page with "== Setup of unmodified NSLU2 in your LAN == You can setup a NSLU2 in your LAN in two ways. If you have a Windows Desktop in your LAN, you can make use of the NSLU2 installatio...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Setup of unmodified NSLU2 in your LAN

You can setup a NSLU2 in your LAN in two ways. If you have a Windows Desktop in your LAN, you can make use of the NSLU2 installation CD provided by Linksys. Just follow the steps on the Linksys manual in your box. (Remark: You have to deactivate the Windows firewall of the Desktop you are using, otherwise the setup software on the Linksys CD will not be able to find the NSLU2 in your LAN). If you don't have a Windows PC in your LAN you can do the initial NSLU2 setup by these steps:

  1. Connect the NSLU2 to the mains adapter and connect the Ethernet connector of the NSLU2 with a patch cable with your switch or router in your LAN. Alternatively you can also directly connect the NSLU2 with your PC's Ethernet connector (this time use a crossed Ethernet cable).
  2. The NSLU2 has the static IP 192.168.1.77 as factory default. To reach the NSLU2's web interface with your Browser, you have to switch your desktop/laptop to the same sub network (192.168.1.x). Therefore, give your desktop/laptop temporarily a satic IP in the same sub network, for example 192.168.1.1. If your LAN already operates in the 192.168.1 sub network, this step can be omitted.
  3. Now NSLU2 should be reached from your desktop's/laptop's browser at "http://192.168.1.77". The password is "admin".
  4. Having access to NSLU2's web interface you have to give it an IP in the sub network you are usually using with your LAN. You can do that by naming a free IP address in your LAN's sub network or by setting the NSLU2 to DHCP mode, where the router will give the NSLU2 a free IP address on the next boot. Please make use of the web interface to set the new static IP or to set the NSLU2 to dynamic IP via DHCP option. Set net mask to "255.255.255.0". Gateway-IP can be left empty or you provide the IP of your router. After that, please reboot your NSLU2 and set your desktop/laptop to its former IP values and sub network and restart your desktop/laptop as well.


Flashing OpenSlug Firmware

NSLU2 can be reached at the new IP provided in the previous step. If you choose DHCP for your NSLU2 you have to inspect your router to get the IP address of the NSLU2 known. Most modern router do allow to give devices on the LAN fixed dynamic IP addresses based on their MAC. The NSLU2's MAC is printed on the outside of the box the NSLU2 was in when it was delivered to you. it is the colon separated number just below the serial number. To know the MAC is also useful to find the IP that the router has given to your NSLU2 in the router log files.

When you have the IP, type it in your browser and go to the NSLU2's web interface. Choose "Administration" (user name "admin", password "admin") and select the sub menu "Advanced" And there the item "Upgrade". Here you find a section to flash a new firmware to the NSLU2. In order to make a Meteohub from your NSLU2 use the firmware image "meteohub-firmware-2.3.bin" from here. Please notice that by flashing this non-Linksys image to your NSLU2 you will void your warranty. So all you do from this step on will be at your own risk. Neither the author of Meteohub nor the authors of the OpenSlug firmware can be made accountable if your NSLU2 might turn into a useless brick caused by a bad flash or what so else. If you don't accept this risk, don't flash the image and forget about OpenSlug and Meteohub.

Press "Start Upgrade" and wait until the firmware upgrade is completed. This may take about 5 minutes. After completion of the firmware flash, a message appears and the NSLU2 is rebooting, now with OpenSlug firmware in it. If you get the error message "not enough memory" when trying to flash, please shut down the unit. Disconnect all USB devices from the NSLU2 and restart again. Go directly to the firmware update Menu. Now it should do. If not, please look for Linksys firmware V2.3R63 on the web, as this version is known to do the job.


Copy Meteohub Runtime Environment on a USB Stick

You find the Meteohub runtime environment to download here. Use the 4GB NSLU2 Meteohub image. Download this software as a compacted RAR archive ("meteohub-vxyz-4GB.rar") and decompress it with winrar (on Windows) or unrar (on Linux). Resulting file is about 4GB in size named like "meteohub-vxyz.dd". Next you have to put this file onto the USB stick. As this is not a regular file, but a multi-partition disk image, you need a special tool to make a low-level copy to the USB stick.

Windows

On Windows you need to download and run a special tool to do the required low-level writing to the USB stick. The tool of choice is "ImageWriter" from SuSE (you find additional information about this tool here). Please download ImageWriter.exe to your Windows PC. It does not need to be installed it is just a small executable to run. Please insert the USB stick into your PC wait a few seconds and then start downloaded "ImageWriter.exe". Wait until a dialog like this pops up:

Imagewriter1.png

Please select the inserted USB stick from the target drop-down list. Then open the file browser by clicking "Select" button. "*.dd" files are not displayed by default so first thing to do is to enter "*.*" as file name. Having done that you will see the file "meteohub-vxyz.dd" on the list. Select and open this file. Dialog should now look like this:

Imagewriter2.png

Press "copy" and the image data will be written to USB stick. When operation has finished without error, you are done with this step. Please pull the USB stick from your Windows PC.

Linux

On Linux you use the "dd" command. Please insert the USB stick into your Linux box and check via "dmesg" what device the stick has been mapped to. In the following example it has been mapped to "/dev/sdj"

# dmesg
...
[708634.148013] usb 2-8: new high speed USB device using ehci_hcd and address 9
[708634.566078] usb 2-8: New USB device found, idVendor=058f, idProduct=6387
[708634.566082] usb 2-8: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[708634.566084] usb 2-8: Product: Mass Storage Device
[708634.566086] usb 2-8: Manufacturer: JetFlash
[708634.566088] usb 2-8: SerialNumber: Q05E7OLZ
[708634.566409] scsi24 : usb-storage 2-8:1.0
[708635.613921] scsi 24:0:0:0: Direct-Access     JetFlash TS4GJF130        8.07 PQ: 0 ANSI: 2
[708635.614072] sd 24:0:0:0: Attached scsi generic sg9 type 0
[708635.617302] sd 24:0:0:0: [sdj] 7987200 512-byte logical blocks: (4.08 GB/3.80 GiB)
[708635.617910] sd 24:0:0:0: [sdj] Write Protect is off
[708635.617913] sd 24:0:0:0: [sdj] Mode Sense: 03 00 00 00
[708635.617915] sd 24:0:0:0: [sdj] Assuming drive cache: write through
[708635.621534] sd 24:0:0:0: [sdj] Assuming drive cache: write through
[708635.621538]  sdj: sdj1 sdj2 sdj3
[708635.624279] sd 24:0:0:0: [sdj] Assuming drive cache: write through
[708635.624281] sd 24:0:0:0: [sdj] Attached SCSI removable disk

We are just looking for "sdj" and are not interested in the partitions recognized on the stick (sdj1, sdj2, sdj3). The print out above tells that "/dev/sdj" is the target device. To make sure that the device ist not mounted by some background processes you should manually unmount all partitions by "umount". In the given example this will be

umount /dev/sdj1; umount /dev/sdj2; umount /dev/sdj3

When this throws errors about not mounted file systems that is fine. Don't worry. Now it is time to bring the Meteohub image onto the stick. In the example above this will be done by

dd if=meteohub-vxyz.dd of=/dev/sdj bs=1M

Please be careful with that command. When you choose the wrong "of=" target (i.e. your system drive) this will be overwritten without further notice and you will have to restore your Linux box! As dd has to transport 4GB of data to the stick this will take a few minutes. When finished dd will report number of written blocks. If it reports that not all blocks could be written, something is wrong with your USB stick (may be less than 4GB in size?).
When "dd" has completed without error, this step is finished and you can pull the USB stick from your Linux box.

Start Meteohub

  1. Plug the USB stick into the upper USB port of the NSLU (named "Disk 2"), connect your weather station to the lower USB port of the NSLU2 (named "Disk 1") and switch on the NSLU2. During boot the ready/status LED is flashing green or orange. When boot is done, the LED changes to more or less constant green.
  2. You can now reach the Meteohub system by your desktop's/laptop's browser at the emergency IP 192.168.1.77 ("http://192.168.1.77") and if you have a DHCP server in your LAN you also can find your Meteohub at the address given by the DHCP server (if you have a pre-2.3 firmware, Meteohub might be accessable at 192.168.123.87 in the beginning). [b]User name is "meteohub", password is "meteohub"[/b]. To reach the emergency IP with your browser you probably have to do reconfigure the IP address of your desktop/laptop as described in #Setup of unmodified NSLU2 in your LAN (explains how to bring you desktop into the same subnet as Meteohub). Having reached the Meteohub web interface you can set the IP persistently.
  3. Furthermore, the Windows tool "ipscan" (download here might be helpful to examine the IP that the router has given Meteohub via DHCP, if Meteohub is configured to make use of a dynamic IP via DHCP.
  4. About a minute after reboot Meteohub signals its IP by specific beeps.


Read the Beeps

About one minute after starting reboot Meteohub signals its IP by the build in beeper. You can disable this noisy but sometimes helpful feature by placing a file named "noreadip" into the pc network folder "/public/log". Signaling of the IP starts with a low frequency tone of a long duration. After that each of the four numbers (delimited by a dot) will be signaled one by one. The dot between the numbers will be signaled by a high frequency tone. Each number is signaled by sending beeps digit per digit. Each digit is represented by a middle frequency tone repeated as often as the digit tells us. The zero digit is signaled by ten beeps. After having done this for all digits of all numbers of the IP, the end is signaled by a low frequency, long beep like it started with.

Example: IP 192.168.10.77 Legend: L = low freq. tone, M = middle freq. tone, H = high freq. tone, _ = pause

Signal:                                          Comment
LLLL___M___M_M_M_M_M_M_M_M_M___M_M___H           192
___M___M_M_M_M_M_M___M_M_M_M_M_M_M_M___H         168
___M___M_M_M_M_M_M_M_M_M_M___H                   10
___M_M_M_M_M_M_M___M_M_M_M_M_M_M___LLLLL         77

When Meteohub does not have a valid IP this will be signaled with three low frequency beeps shortly following each other. Don't mess this up with the three middle frequency beeps Meteohub sends on NSLU2 platform when having finished boot, which corresponds with the green/yellow blinking Ready/Status LED changing to constant green.