Sunday, July 27, 2014

Hacking the Pogoplug v4 (Series 4 and Mobile) with Linux (Debian or Arch)

This is a quick publish tutorial on hacking the Pogoplug V4 - Series 4 or Mobile - with Debian or Arch Linux ARM. Last updated 01/04/2016.

Major credit to @bodhi on Jeff Doozan's Forum (and Jeff himself) for the uBoot, Debian rootfs, instructions and support. Note that I re-hosted some of @bodhi's files for an easier install.

This tutorial assumes you're starting with a brand new, never modified Pogoplug Mobile or Series 4. However, if you have a previously modified Pogoplug V4, the uBoot instructions will work under Debian/ALARM if you want to upgrade your uBoot for SD Card booting and want to boot the default Pogoplug OS.

At the end of this tutorial your Pogoplug will be booting Debian (or ALARM) from a SD Card. Instructions for booting off a USB Hard/Flash Drive is also included.

My recommendation is to boot via SD Card to keep the USB port free for a USB Hard Drive, USB DAC (for MPD, Airplay and/or SqueezeLite), WebCam, Wi-Fi Adapter or printer.

WARNING: You can potentially brick your Pogoplug following this tutorial. Your warranty will be voided. Proceed at your own risk. I didn't think I needed to say this but I do - these instructions are for the Pogoplug V4. Flashing the uBoot below on any other model of the Pogoplug will result in a brick. 

If you made a mistake, bricked your Pogoplug or simply didn't understand what you got yourself into or want to start fresh, you're in luck! Here is a ~$13 solution.

Requirements:
Outline of Steps:
  1. Enable SSH access to Pogoplug
  2. uBoot Installation via SSH Console 
    • Kill Pogoplug Service and Download uBoot Flashing Utilities
    • Download and Flash New uBoot
    • Download and Flash Default uBoot Environment Parameters
    • Update uBoot Environment Parameters
  3. Setup Netconsole (optional but highly recommended)
  4. Boot default Pogoplug OS when USB/SD Card not attached
  5. Debian/ALARM Installation on SD Card (or USB Hard/Flash Drive)

Enable SSH Access to Pogoplug

There are two methods to enable SSH on your Pogoplug.

1) Official Method - Activate on my.pogoplug.com and then enable SSH

2) Backdoor Method (credit to GTVHacker.com)

Make sure your Pogoplug is connected to your network and has internet access.

Check your router or use a  network scanning tool (iNet Network Scanner on iPhone) to determine the IP Address of the Pogoplug. 

From a Linux computer (e.g. another Pogoplug running Debian/Alarm) run the below curl command.

curl -k "https://root:ceadmin@[PogoplugIPAddress]/sqdiag/HBPlug?action=command&command=dropbear%20start";

If the above curl command doesn't work, your Pogoplug may need to be updated. Leave it plugged in for a hour or two and then try the command again.

Note that the backdoor method is not persistent (SSH access not available after a reboot).


SSH/Putty into Pogoplug V4 and Perform Installation

Use Putty or your favorite SSH client to connect to your Pogoplug.

If you used the "Official Method" for activating and enabling SSH on your Pogoplug, then the username will be "root" and the password will be whatever you set (note that it's not the same password used to log into my.pogoplug.com).

For the "Backdoor Method", the username and password is root/ceadmin.

From here, everything is done via the SSH console. Here is a complete console installation log. Open it up and compare with what you're seeing on your ssh console screen as you're going through the tutorial.

Kill Pogoplug Service and Download uBoot Flashing Utilities

#stop my.pogoplug.com service
killall hbwd

#download firmware utilities

cd /tmp
wget http://download.qnology.com/pogoplug/v4/nanddump
wget http://download.qnology.com/pogoplug/v4/nandwrite
wget http://download.qnology.com/pogoplug/v4/flash_erase
wget http://download.qnology.com/pogoplug/v4/fw_printenv
wget http://download.qnology.com/pogoplug/v4/fw_setenv

#make execuable
chmod +x flash_erase fw_printenv fw_setenv nanddump nandwrite

#remount '/' as read/write
#by default the Pogoplug OS (internal flash) is read only
#skip if running from Debian/ALARM
mount -o remount,rw /

#setup fw_env.config
echo "/dev/mtd0 0xc0000 0x20000 0x20000">/etc/fw_env.config


Download and Flash new uBoot

#download uboot and md5
wget http://download.qnology.com/pogoplug/v4/uboot.2014.07-tld-1.pogo_v4.bodhi.tar
wget http://download.qnology.com/pogoplug/v4/uboot.2014.07-tld-1.pogo_v4.bodhi.tar.md5

#check md5sum
md5sum -c uboot.2014.07-tld-1.pogo_v4.bodhi.tar.md5

#extract uboot
tar -xf uboot.2014.07-tld-1.pogo_v4.bodhi.tar


#Erase and flash uboot on mtd0
#BE EXTRA CAREFUL WITH THE NEXT TWO COMMANDS. NO TYPOS! CUT AND PASTE.
/tmp/flash_erase /dev/mtd0 0 4
/tmp/nandwrite /dev/mtd0 /tmp/uboot.2014.07-tld-1.pogo_v4.mtd0.kwb



Download and Flash uBoot Environment Parameters

#download default uboot env settings and md5
wget http://download.qnology.com/pogoplug/v4/uboot.2014.07-tld-1.environment.img.bodhi.tar
wget http://download.qnology.com/pogoplug/v4/uboot.2014.07-tld-1.environment.img.bodhi.tar.md5

#check md5 sum
md5sum -c uboot.2014.07-tld-1.environment.img.bodhi.tar.md5

#extract uboot env settings
tar -xf uboot.2014.07-tld-1.environment.img.bodhi.tar

#Flash default uboot env setting
#BE EXTRA CAREFUL WITH THE NEXT TWO COMMANDS. NO TYPOS! CUT AND PASTE.
/tmp/flash_erase /dev/mtd0 0xc0000 1
/tmp/nandwrite -s 786432 /dev/mtd0 uboot.2014.07-tld-1.environment.img


Update uBoot Environment Parameters

#SET MACADDRESS
/tmp/fw_setenv ethaddr "$(cat /sys/class/net/eth0/address)"

#double check the MAC Address matches with 
#what is on the bottom of your Pogoplug
/tmp/fw_printenv ethaddr

#set archNumber and machid (for LED)
/tmp/fw_setenv arcNumber 3960
/tmp/fw_setenv machid F78

#set rootfs file system type
/tmp/fw_setenv usb_rootfstype ext3

#set to original mtd partition layout
/tmp/fw_setenv mtdparts 'mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)'

#print out all uboot environment parameters
#make sure there are no errors
/tmp/fw_printenv


Setup Netconsole (Optional but highly recommended)

More info here - http://forum.doozan.com/read.php?3,14,14
Just run the below commands if you are not sure.

#Update IP Addresses as needed
/tmp/fw_setenv serverip 192.168.1.100

/tmp/fw_setenv ipaddr 192.168.1.10
/tmp/fw_setenv if_netconsole 'ping $serverip'
/tmp/fw_setenv start_netconsole 'setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;'
/tmp/fw_setenv preboot 'run if_netconsole start_netconsole'


Boot default Pogoplug OS when USB/SD Card not attached

Note that this section only works on a new unmodified Pogoplug. It assumes the command are all executed from within the default Pogoplug OS and not from Arch Linux or Debian.

If you previously installed the uBoot from archlinuxarm.org and/or already running ALARM or Debian, use these instructions instead - Pogoplug v4 - Add option to boot default Pogoplug OS when USB/SD Card is Not Attached.

To boot the default Pogoplug OS, we will need to chain load the original (dockstar) uboot which we'll download and store on the internal flash. The boot order will be USB, MMC/SD, SATA (Series 4 only) and then last, the original uBoot which will then load the default Pogoplug OS.

Don't forget that you'll need to activate the Pogoplug on my.pogoplug.com if you plan on SSHing into the default Pogoplug OS.

#remount '/' as read/write
mount -o remount,rw /

#download original uboot
cd /
wget http://download.doozan.com/uboot/files/uboot/uboot.mtd0.dockstar.original.kwb

#update boot order to include pogoplug OS
/tmp/fw_setenv bootcmd 'run bootcmd_usb; run bootcmd_mmc; run bootcmd_sata; run bootcmd_pogo; reset'

#chain load original uboot
/tmp/fw_setenv bootcmd_pogo 'if ubi part root 2048 && ubifsmount ubi:rootfs && ubifsload 0x800000 uboot.mtd0.dockstar.original.kwb ; then go 0x800200; fi'


Debian/ALARM Installation on SD Card (or USB Hard/Flash Drive)

Insert SD Card or USB Hard/Flash Drive. The commands below are for Debian on a SD Card. However, I've noted the difference for USB Hard/Flash Drive and Arch Linux.

#stop my.pogoplug.com service (just in case)
killall hbwd

#make device node for mmc/sd card
#skip command for usb install
mknod /tmp/mmcblk0 b 179 0

#Partition your SD Card
/sbin/fdisk /tmp/mmcblk0

#OR Partition your USB Flash/Hard Drive
#/sbin/fdisk /dev/sda

# Type in the following commands to erase
# and re-partition SD Card/USB Flash/Hard Drive
#(WARNING - FLASH/HARD DRIVE WILL BE COMPLETELY WIPED):
#
# p # list current partitions
# o # to delete all partitions
# n # new partition
# p # primary partition
# 1 (one) # first partition
# <enter> # default start block
# <enter> # default end block (to use the whole drive)
# If you're using a hard drive, create a small
# 4GB partition instead of using the whole drive,
# leaving the rest for a data partition
# +4G # create a 4GB partition
# w # write new partition to disk

#make device node for partition
#command not needed for USB install
mknod /tmp/mmcblk0p1 b 179 1

#download format utility
cd /tmp
wget http://archlinuxarm.org/os/pogoplug/mke2fs
chmod +x mke2fs

#format newly created partition
#ext3 with "rootfs" as label
/tmp/mke2fs -L rootfs -j /tmp/mmcblk0p1

#OR format USB Flash/Hard Drive
#/tmp/mke2fs -L rootfs -j /dev/sda1

#create mount point
mkdir /tmp/mnt


#mount SD Card
mount /tmp/mmcblk0p1 /tmp/mnt

#OR mount USB Flash/Hard Drive
#mount /dev/sda1 /tmp/mnt

#download Debian rootfs and md5
cd /tmp/mnt
wget http://download.qnology.com/pogoplug/v4/Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2.md5

#check md5
md5sum -c Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2.md5

#extract and delete

tar -xjf Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
rm Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
rm Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2.md5

#OR For Arch Linux ARM
#cd /tmp/mnt
#wget http://archlinuxarm.org/os/ArchLinuxARM-kirkwood-latest.tar.gz 
#tar -xzvf ArchLinuxARM-kirkwood-latest.tar.gz
#rm ArchLinuxARM-kirkwood-latest.tar.gz

#Make SD Card first boot device (optional)
#Default boot order is USB->MMC/SD->SATA->POGO_OS
/tmp/fw_setenv bootcmd 'run bootcmd_mmc; run bootcmd_usb; run bootcmd_sata; run bootcmd_pogo; reset'

#Sync and reboot, cross your fingers
sync
cd ..
umount /tmp/mnt
/sbin/reboot


At this point, your Pogoplug should boot back up into Debian or Arch Linux ARM. Note that the IP Address of your Pogoplug may have changed. Double check your router for the IP Address assigned to your Pogoplug or use a network scanning tool (iNet Network Scanner on iPhone) to determine the IP Address of the Pogoplug.

For Debian the default username and password is root/root. For Arch Linux ARM (ALARM) the username and password is alarm/alarm.

Initial Debian Setup

#Change password
passwd

#Generate New OpenSSH Keys
rm /etc/ssh/ssh_host*
ssh-keygen -A


#Initial update
apt-get update
apt-get upgrade


#Set hostname to DebianPlug or whatever you like
echo DebianPlug>/etc/hostname

#Set Time Zone
tzselect


Upgrade Debian to 3.18.5 kernel (optional)
Latest kernel and instructions here - http://forum.doozan.com/read.php?2,12096


#backup original kernel files
cd /boot
mkdir backup
mv *3.14* backup
mv uImage backup/uImage3.14
mv uInitrd backup/uInitrd3.14

#download from bodhi's dropbox
wget --no-check-certificate https://www.dropbox.com/s/n7utrgwky1b2rg9/linux-3.18.5-kirkwood-tld-1-bodhi.tar.bz2

#check md5
echo "68c96df62427c69bc7599ff31859b9b4  linux-3.18.5-kirkwood-tld-1-bodhi.tar.bz2" |md5sum -c

#extract
tar -xvjf linux-3.18.5-kirkwood-tld-1-bodhi.tar.bz2
tar -xvf  linux-dtb-3.18.5-kirkwood-tld-1.tar

#install kernel and headers
dpkg -i linux-image-3.18.5-kirkwood-tld-1_1_armel.deb
dpkg -i linux-headers-3.18.5-kirkwood-tld-1_1_armel.deb

#generate new uImage and uInitrd with fdt file. No need to modify uboot env
cp -a zImage-3.18.5-kirkwood-tld-1  zImage.fdt
cat dts/kirkwood-pogoplug_v4.dtb  >> zImage.fdt
mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-3.18.5-kirkwood-tld-1 -d zImage.fdt uImage
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x00000000 -e 0x00000000 -n initramfs-3.18.5-kirkwood-tld-1 -d initrd.img-3.18.5-kirkwood-tld-1 uInitrd
rm zImage.fdt


#clean up
rm linux-3.18.5-kirkwood-tld-1-bodhi.tar.bz2
rm linux-dtb-3.18.5-kirkwood-tld-1.tar

#reboot and verify
uname -a



Install SAMBA for a simple NAS (Network Attached Storage) - Debian

Plug in your USB Hard Drive and partition and format the drive as ext3.

mkdir -p /media/usb/share
mount /dev/sda1 /media/usb/share

apt-get install samba
cd /etc/samba
mv smb.conf smb.conf.bak

#download example smb.conf for public share
#no authentication require, everyone has
#read/write access to / (root$) and usb (/media/usb/share)
wget --no-check-certificate https://dl.dropboxusercontent.com/u/42238/pogoplug/debian/smb.conf
/etc/init.d/samba restart


#For automount after reboot use /etc/fstab
echo "/dev/sda1 /media/usb ext3 rw,noatime,nofail 0 0" >> /etc/fstab


Debian Pogoplug Tutorials:

Troubleshooting

On the Series 4, only the top USB port is bootable. The blue USB 3.0 ports on the back of the Series 4 are not bootable.

Not all SD cards and USB flash drive are equal. If you're having issues booting into ALARM or Debian, try using a different SD card or USB flash drive.

Double check that you're SD Card is not in the "locked" (read only) position.

Cannot SSH back into the Pogoplug - double check the IP Address assigned to your Pogoplug. After booting Debian/ALARM, chances are your router will assign the Pogoplug a different IP Address. Check your router or use a network scanning tool to help figure out what IP Address was assigned to your Pogoplug.

Use Netconsole to see what's going on. Hopefully you followed my recommendation and setup netconsole.

Reinstallation - If you need to setup a new SD Card or USB Flash Drive, what you need to do is use a Linux computer or boot a Live Linux CD to partition, format (please make sure to use ext3 and not ext4), download and extract the rootfs to your SD Card or USB Flash Drive. Here is a basic outline of the steps from the ArchLinuxArm.org website. Note for Debian, you'll want to use the link to the tarball in this tutorial.

Note that it's fairly difficult or nearly impossible to truly brick the Pogoplug v4 because it supports UART booting using a serial connection. More info here - http://forum.doozan.com/read.php?3,7852,7852. Use bodhi's kwboot found here.


Miscellaneous Links and Reference

Self Promotion

Three Pogoplugs gave their lives bringing you this tutorial and countless hours. If you would like to show your support for this blog, please check out my AirEnabler or buy me a cup of coffee (link above). Thank you for your support.


302 comments :

  1. Wow, awesome! Couldn't wait to try this because of the SD Card Boot.

    I previously used the V4 instructions at archlinuxarm.org (http://archlinuxarm.org/platforms/armv5/pogoplug-series-4, under installation tab).

    It uses a shell script to Flash U-boot. With that method, you can revert the Pogoplug to stock by creating a folder named "revert" on a FAT32 drive, and hard cycling the power. Is it possible to revert with your install method?

    Also, is this method more permanent, less permanent with regards to the flash?

    ReplyDelete
    Replies
    1. Hi @TRM,

      Good question. You will not be able to revert or boot the default Pogoplug OS using this uBoot. The Pogoplug OS is still on the internal flash, but I'm not sure how to boot to it (maybe chain loading the original/arch uboot). The reason the archlinuxarm.org uBoot is able to revert or boot back into the Pogoplug OS is because the uBoot is actually based on the original Cloud Engine uBoot (with some slight enhancements). In the near future I expect archlinuxarm will be moving to this uBoot. What's your interest in booting the Pogoplug OS? Is it to use the Cloud Engine (my.pogoplug.com) service or for recovery such as reformatting a new usb drive? If it's for recovery, I know it's possible to install the Debian Rescue System on the internal flash.

      Delete
    2. Thanks for the updated instructions on booting into the original system. Now for those who installed Debian before the update, if we can find instructions on how to mount the mtd4 partition in Debian, problem will be solved.

      Delete
    3. Try this: http://blog.qnology.com/p/pogoplug-v4-boot-default-pogoplug-os.html

      You might need to setup a Arch Linux ARM USB Drive first though.

      Delete
    4. Thanks for the reply @Qui. Just wondering for the sake of understanding things :)

      Can uBoot be modified to support ext4 on the root fs? Or something more modern than ext3?

      Delete
    5. The uBoot environment variables will work with ext3 by default making things easier. However, it you want to use ext4, it is supported by the uBoot. You'll need to make appropriate changes to the uBoot environment parameters though - bootcmd_xxx.

      Delete
  2. First of all: thanks for the tutorial! Haven't been able to use it as my pogoplug hasn't made it here yet from the US, but hey :)

    I've got a question and was wondering if you could help me out:
    as I see it, the main differences between your method and the one on archlinuxarm.org are that the first installs the OS on the SD card and isn't reversible whereas the latter installs it on the external HDD and is reversible, right?

    Are there any advantages to your method in terms of performance? Can the external HDD still go into standby mode if the OS is running on it?

    ReplyDelete
    Replies
    1. Hi @Jp,

      The main difference is the SD card booting (both uboot support USB booting). Again, this is the latest uboot and the archlinuxarm version will be moving to it in the near future. Like I stated above comment, the Pogoplug OS is still on the internal nand, so you technically can reverse the process by re-flashing the original uboot (or the one provided on archlinuxarm.org).

      There would not be a difference in performance. Think of the uBoot as the BIOS on a PC.

      Delete
    2. Alright, so I got my Pogoplug and followed the official instructions for now to learn the process, setting it up etc. Had a few issues, mainly with Plex but I got it to work, mostly.

      One issue I'm having is that some process keeps waking up the HDD so it won't remain in standby. I installed samba, the time thing and plex so I assume it's plex (is there a way to check?) or some other default process. Would using your method/uboot and installing it on an sd-card help in that regard because the system won't be running from the drive that is supposed to remain in standby most of the time?

      Delete
    3. Sorry, I don't have much experience with trying to get my HD to spin down. One thing to note is that ALARM will be constantly writing to log files, which would prevent the hd from idling. So yes, moving your installation to a SD Card would be a good start. However, you'll probably have to install/run something else.

      Delete
  3. I have great appreciation to Bodhi, but his writing leaves a LOT to be desired. I'm an advance Linux user of several years, I could not follow his instructions (for example, Step 2 "Make sure ethaddr is set in uBoot env" makes no sense at all unless you already have knowledge of uboot, and also it outputs "not defined" for our device). I feel sorry for anyone who is a regular power user to try understanding Bodhi. So I want to say really really thanks a lot! I don't think I could have gotten this without your guide here.

    ReplyDelete
  4. When I tried this line: " mount -o remount,ro /" I get an error " mount: / is busy".
    I looked it up, and found a thread that said that error means there are still processes using files on "/".
    The thread suggested trying "fuser -v -m /" to identify the offending processes, but I get a list of several dozen.

    I feel like that is probably an indication of something going very wrong, so I stopped there.

    Any ideas?

    ReplyDelete
    Replies
    1. The tutorial is designed for a brand new Pogoplug V4 still running the default Pogoplug OS, which has a read only file system. My assumption is that you're already running Debian/ALARM on your Pogoplug using the ArchLinuxArm.org uBoot.

      Long story short, the tutorial should work fine when running under Debian/ALARM. Just skip the "remount" command or ignore the error message.

      Delete
    2. Cool, thanks!
      I followed the updated steps and it worked!
      There is one typo, though.

      This line: "mknod /dev/mmcblk0p1 b 179 1"
      should be: "mknod /tmp/mmcblk0p1 b 179 1"

      Delete
  5. Thanks a lot for your comprehensive and easy-to-follow tutorial!

    ReplyDelete
    Replies
    1. My new Pogoplug Bittorrent Sync server is now ready and running:) I followed this tutorial and the follwoing guide to set up btsync: http://www.yeasoft.com/site/projects:btsync-deb:btsync-server

      Delete
  6. I was pointed to this other blog, part of which you may want to incorporate into your Debian/ALARM install tutorial.

    http://mehl.co/articles/installing_debian_on_the_pogoplug/index.html

    The section I found interesting is Step 0 where the new Pogoplug's nand flash can be backed up to an attached USB drive. Further down in the blog are the instructions for restoring from the backup.

    ReplyDelete
    Replies
    1. Thanks for the info. However, I do not believe a nand backup is necessary. The only changes to the Pogoplug OS is two additional files - /etc/fw_config and the /uboot.mtd0.dockstar.original.kwb, which would have no affect on the functionality of the default Pogoplug OS or my.pogoplug.com service

      Delete
  7. I've got a pretty basic question (I think). I don't entirely trust SD cards since I've had one stop working a while ago so I'd like to at least prepare 2 SD cards to boot from.. am I correct in assuming that I'd just have to follow the "Debian/ALARM Installation on SD Card (or USB Hard/Flash Drive)" in the initial setup process and when I'm done with that before rebooting repeat that process with my second card? Or is there anything else I'd have to do?

    ReplyDelete
    Replies
    1. Awesome. I'm probably gonna wait a couple of days, though. Just realized both my cards are class 2. Will get at least one class 10 card.

      Delete
    2. Or can I just "clone" the sd card later on or do the setup on it another way? (sorry about all the questions, turns out my sandisk class 2 card is actually pretty decent and offers class 4 speeds)

      Delete
  8. Hi Qui, thanks for all your help to the Pogo community. Long story short, I started out with a pogo V1, installed linux on it, was running it off a 2GB flash drive and had a 4 HDD bay enclosure attached for storage with a single 4TB drive with two partitions, a 4GB blank partition that I was planning on migrating my linux install to and a second partition with the rest of the hdd space. My flash drive suddenly died and I couldn't remember my password to ssh into the pogo anymore to redo the arm installation. I got a second pogo, a v4 (not mobile) and started from scratch using this tutorial, however, this time I tried installing debian right onto the 4 GB partition, but this is where I got stuck. I get all the way to the part where I need to partition, though I know I already have two working partitions on the drive, either way this is what I get:

    # /sbin/fdisk /dev/sda
    fdisk: device has more than 2^32 sectors, can't use all of them

    The number of cylinders for this disk is set to 267349.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
    (e.g., DOS FDISK, OS/2 FDISK)

    After this I tried skipping straight to mounting the HDD but I then got this error:

    / # mount /dev/sda1 /tmp/mnt
    mount: mounting /dev/sda1 on /tmp/mnt failed: No such file or directory

    I tried plugging the USB enclosure to both the 2.0 port on the top and the 3.0 port on the back but I got the same results. I'm stuck and don't know what to do. Any help would be appreciated. Thanks.

    ReplyDelete
    Replies
    1. You call that short? :)

      Repartition your flash drive by deleting your existing partition first or use a new flash.

      You need to create the /tmp/mnt folder before you attempt to mount your flash drive - mkdir /tmp/mnt.

      Lastly, only the top USB port on the Series 4 is bootable, so use that.

      Delete
    2. Haha, that's as short as I could make it, sorry.

      The problem is that I'm not trying to install debian onto a flash drive. I'm trying to install it into a 4GB partition that resides inside a 4 TB HDD. When I try using Fdisk to partition, i get that error:

      fdisk: device has more than 2^32 sectors, can't use all of them

      I already made sure there was a /tmp/mnt directory.... What I'm thinking is that whatever version of linux the pogo is running, it does not recognize drives greater than 2 TB?

      Delete
    3. So I ended up buying a SD Card and installing debian onto that. Got everything working. My new questions, is there a port of the my.pogoplug.com services for debian or does it only exist for arm?

      Delete
    4. Glad to hear you got things working.

      For a larger than 2GB drive, you'll need to partition it using a different tool or process. Sorry, I don't have any details on that since I don't have that large a HD.

      Sorry, no my.pogoplug.com service for Debian. It should be possible though. However, it's probably not something I'll be spending much time on considering there are two alternative - Arch Linux or Optware.

      Delete
  9. Asterisk 11 is up and running: http://nerd.bz/1pIFseq

    ReplyDelete
    Replies
    1. Wow. A few years ago I was looking into VOIP and Asterisk and come across your site and awesome tutorials. I believe you were recommending a cheap VOIP Nortel phone at the time from eBay. I love how we went full circle on now you're on my blog. :) Thank you!

      Delete
  10. This comment has been removed by the author.

    ReplyDelete
  11. I would be interested in a way to auto mount/unmount USB flash drives as they are pluged in, removed, and at startup using debian. Has anyone been able to do this?

    ReplyDelete
    Replies
    1. Sure. Install the usbmount package.

      https://packages.debian.org/wheezy/admin/usbmount

      Delete
    2. How do you install usbmount? I've tried using pacman but I can't find the right url for the package. Please help. Thanks!

      Delete
  12. Is there a way to flash Linux onto the NAND flash instead of an SD card?

    ReplyDelete
    Replies
    1. Yes, you can install a "rescue" system - http://forum.doozan.com/read.php?4,7915,page=1

      Delete
    2. in my case, I want to completely replace the default OS and install something like OpenWRT or Debian. No idea what the point of this "Rescue" system is.

      Delete
    3. Running OpenWRT on internal NAND would be ideal. That's my plan longer term and a future blog posting (once I figure it out and can get the instructions simplified enough).

      Delete
  13. Ok... I have gotten as far as 'Update uBoot Environment Parameters'. Then I started getting errors complaining that it could not parse config file.

    And then the power went out. Now the LEDs go green and the device shows on LAN for a few seconds. Then it flashes red and drops from LAN. Repeat ad infinitum.

    ReplyDelete
    Replies
    1. Sorry, not clear on your issue. What is the exact command that you ran and the exact error message (what config file)?

      Also, not sure what you mean by "then the power went out". Why would the power go out?

      Delete
    2. We had a power failure due to storms, was out over 12 hours.

      I don't have the exact error message as it was on the terminal when power died.

      I had gotten as far as

      /tmp/fw_setenv ethaddr "$(cat /sys/class/net/eth0/address)"

      which is where the error started coming up. I can read the file, it appears normal, but not knowing what it is supposed to be I have no idea what is wrong with it. Now I can't get into the device at all.

      I am guessing the reset might be in order, but I was hoping someone might have a notion less drastic.

      Delete
    3. I have reproduced the exact same error. I followed the guide up to the section headed "Set uBoot Parameters" -- then entered the supplied command:

      /tmp/fw_setenv ethaddr "$(cat /sys/class/net/eth0/address)"

      and got this error:
      Cannot parse config file: Invalid argument

      Delete
  14. Hi thanks for the great tutorial, i got everything working, but i got a USB HDD formatted on NTFS, and i want to use it without formatting it EXT3, i can read the drive from the network, but i can't write in it. Is there a workaround so i can write/read the NTFS drives?

    ReplyDelete
    Replies
    1. I installed the ntfs-3g package to get it to mount the drive a read/write.

      Delete
    2. Sorry, I try to keep thing simple by using EXT3 for all my Linux base systems and cannot comment on why NTFS isn't working for you.

      Delete
  15. Hello, I did the full process and it worked for me, thank you. I was wondering how can you go back to the default pogo plug setup. I've tried booting it without the usb and it just keep flashing green and then red. Thanks.

    ReplyDelete
    Replies
    1. That might be normal. I believe when you don't have a USB drive attached to the Pogoplug (or network connection), the LED will be red. Double check your router to verify if your pogoplug received an IP Address and/or check my.pogoplug.com.

      Delete
  16. I checked my router and it the pogoplug shows up and it has an ip. I tried to connect to the ip by ssh and it says that there is no route to host. Checked the pogoplug page and says that the device is not connected. It just keeps blinking green and then red.

    ReplyDelete
    Replies
    1. Sorry, this will be my last reply. Please understand, I cannot help everyone with their issue. Just not enough time and energy. Some quick suggestions - buy a new pogoplug, activate/reactivate, netconsole or serial connection. Are you at least able to ping it, if so I would say the system is behaving "normally" (it booted up into the default Pogoplug OS).

      Delete
    2. No route to host implies a DNS issue. Not all routers will do DNS on the LAN side, so you may have to specify numeric IP rather than machine name.

      Delete
  17. Great Tutorial!
    Have you every tried to connect to wifi network through wifi dongle?

    ReplyDelete
    Replies
    1. Thank you Twinclouds. Sorry, no I haven't tried yet. I have plans to flush out the Debian tutorial similar to the Arch one, but just haven't had much time lately (too busy playing TitanFall).

      Delete
    2. Qui:
      Thanks for your reply. I made some progress but still using heck like approach. It is also funny that what working on kernel 3.14 didn't work after upgraded to 3.16. Please keep me posted if you have anything to share.
      Regards.

      Delete
    3. I installed, and works great. But wifi freezes after a short period of time. I only have 2MB of RAM free of the 128, but I did add swap, and it still freezes. I use it as my NAS with Rsync, minidlna, SAMBA, and ntfs-3g. It works great over Ethernet with zero problems, but as soon as I get wireless up and running, it freezes within a few hours, forcing me to reboot the device. Any suggestions?

      Delete
    4. @Casey, what Wi-Fi card are you using? It could be related to the drivers or hardware. Also, what were the steps you used to configure Wi-Fi? I'm going to finally start flushing out the Debian tutorial in the next week weeks and hopefully will document the Wi-Fi configuration.

      Delete
    5. I first used a Belkin F7D1101. It worked, but the system kept freezing. I then bought an EDIMAX EW-7811. It did the same, but i noticed it got very hot when the system froze (Pogoplug cover was on of course). I just purchased a Netis WF2120 today. I had to install the firmware for the edimax using this tutorial (https://wiki.debian.org/rtl819x#rtl8192cu). I expect that that the netis will be the same, as it is the same chipset. I dont remember my source for the belkin firmware, but i just googled instructions and got it working relatively easy.
      I first used "wicd-curses". When i suspected it was the problem, I followed another tutorial which suggested installing "wireless-tools". same results. I purged "wicd-curses" and "auto-remove" before I proceeded with "wireless-tools".
      I am currently using only LAN, and it has been working great for about 1.5 weeks now. no issues.

      Delete
    6. @Casey, thanks for the info. I've tested Wi-Fi with a few different cards, but haven't tested it for an extended period of time (I have the EW-7811 on order). About how long before your system "freezes"? Also, what exactly does "freeze" mean? Does it lose it's Wi-Fi connection or does the system actual hard freeze/lock up or have a kernel panic? Do you have a serial connection? That is probably the best way to figure out what's going on.

      Delete
    7. I do not have a serial connection.
      By freeze, I mean the whole system quites responding ( i assume hard freeze/lock up), even via ethernet connection (when using wifi). The green light on the pogoplug remains lit, but no response (I use Putty to SSH with Windows 8). Again, this issue does not occur when there is no wireless card present. I can generally get the issue to occur more promptly when I perform multiple activities on the pogoplug. ie browse/move files through windows using samba, browse files through xbox 360 using minidlna. Generally easier when using a windows computer to preview and move files around the hard drives.
      I am not ruling out the fact that I may have a faulty Pogoplug, or a faulty USB port on top. But I will say the pogoplug was hardly used since I bought it, until I came across this tutorial. I have not opened the device at all yet.

      Delete
    8. I lied. The Belkin was a F6D4050 v2. Probably irrelevant at this point.

      Delete
    9. @Casey, can you send me an email via the Contact Me option on the right side of my blog? Thanks

      Delete
  18. Thank you very much for this amazing tutorial! I just completed it and I'm now running Debian on my Pogoplug Mobile perfectly.

    I do have one question though, which I didn't see an answer for. Look at http://forum.doozan.com/read.php?2,12096 I see that the Debian kernel & the rootfs have updated since you originally wrote these instructions. How would I go about updating to these newest versions? And is it necessary to update in the first place?

    Thank you in advance for any information & support you can provide!

    ReplyDelete
    Replies
    1. I would suggest reading the thread if you're interested in updating. I try to keep things simple - if it isn't broken don't fix it.

      Delete
  19. Great stuff!
    Is there a reason to run the commands from the prompt instead of putting them into a script?

    ReplyDelete
    Replies
    1. Great question. Two main reason.

      1) I'm too lazy to write/test a script.
      2) I want people to know what's going on and hopefully they will learn something by going through the process/tutorial.

      Delete
  20. Right. After a successful conversion, I want to put the commands into a script so, next time, it's easy, because I'm lazy!
    The tutorial is great, the explanations of what each command does is wonderful. There are some commands which
    are very mysterious to me, I wanted to confirm that there would be no difference if they were run from a script.

    ReplyDelete
    Replies
    1. Making a script is a little more than putting all the commands into a file. Error checking and such needs to happen otherwise, you might just end up bricking the Pogoplug. Updating the uBoot only needs to be done once (per device). Consider backup up your USB Drive (once you get things the way you want) to make things easier in the future.

      Delete
  21. Thank you for making this guide.

    I have a PogoPlug Mobile, which I followed all the instructions with. When I got to the point where I had to partition my SD card, some error occured after this section:

    #format newly created partition
    #ext3 with "rootfs" as label
    /tmp/mke2fs -L rootfs -j /tmp/mmcblk0p1

    It seemed that nothing was partitioned or not selected, but I do not recall the exact line. What I instead did was formatting a USB stick with a folder named "revert", so I could start all over. But this is where my quest stopped, as I can't revert the Pogoplug now. It blinks green for a while, then goes red and starts over. This process will keep going forever.

    Do you know how to fix this? :)

    ReplyDelete
    Replies
    1. Right now the issue is with or without the card. Won't start up at all. How can I revert the firmware, or re-install?

      Delete
    2. Sorry, impossible for me to tell you what the issue is. Try a serial console connection or a new Pogoplug.

      Delete
  22. I reinstalled uBoot using these instructions for a system that was running Arch Linux. It doesn't come back up. I didn't download a new Arch image, I'm using the one that used to work. Here is the nc output.

    U-Boot 2014.07-tld-1 (Jul 18 2014 - 00:59:45)
    Pogoplug V4 0
    (Re)start USB...
    USB0: USB EHCI 1.00
    scanning bus 0 for devices... 5 USB Device(s) found
    scanning usb for storage devices... 1 Storage Device(s) found
    3124168 bytes read in 537 ms (5.5 MiB/s)
    ** File not found /boot/uInitrd **
    ## Booting kernel from Legacy Image at 00800000 ...
    Image Name: Linux-3.1.10-34-ARCH
    Created: 2014-07-31 7:56:24 UTC
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 3124104 Bytes = 3 MiB
    Load Address: 00008000
    Entry Point: 00008000
    Verifying Checksum ... OK


    Starting kernel ...

    ReplyDelete
    Replies
    1. Here is the printenv from my netcat. Maybe there is something wrong here. Note that I set usb_rootfstype to ext2 because I'm using an ext2 filesystem on the usb thumb drive.

      arcNumber=3960
      baudrate=115200
      bootcmd=run bootcmd_usb; run bootcmd_mmc; run bootcmd_sata; reset
      bootcmd_mmc=run mmc_init; run set_bootargs_mmc; run mmc_boot
      bootcmd_sata=run sata_init; run set_bootargs_sata; run sata_boot;
      bootcmd_usb=run usb_init; run set_bootargs_usb; run usb_boot;
      bootdelay=10
      console=ttyS0,115200
      device=0:1
      ethact=egiga0
      ethaddr=00:25:31:05:8a:31
      if_netconsole=ping $serverip
      ipaddr=192.168.1.10
      led_error=orange blinking
      led_exit=green off
      led_init=green blinking
      machid=F78
      mainlineLinux=yes
      mmc_boot=mw 0x800000 0 1; run mmc_load_uimage; if run mmc_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
      mmc_init=mmc rescan
      mmc_load_uimage=ext2load mmc $device 0x800000 /boot/uImage
      mmc_load_uinitrd=ext2load mmc $device 0x1100000 /boot/uInitrd
      mmc_root=/dev/mmcblk0p1
      mtddevname=uImage2
      mtddevnum=2
      mtdids=nand0=orion_nand
      mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
      ncip=192.168.0.207
      partition=nand0,2
      preboot=run if_netconsole start_netconsole
      preboot_nc=run if_netconsole start_netconsole
      rootdelay=10
      rootfstype=ext3
      sata_boot=mw 0x800000 0 1; run sata_load_uimage; if run sata_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
      sata_init=ide reset
      sata_load_uimage=ext2load ide $device 0x800000 /boot/uImage
      sata_load_uinitrd=ext2load ide $device 0x1100000 /boot/uInitrd
      sata_root=/dev/sda1
      serverip=192.168.0.207
      set_bootargs_mmc=setenv bootargs console=$console root=$mmc_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
      set_bootargs_sata=setenv bootargs console=$console root=$sata_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
      set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
      start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
      stderr=nc
      stdin=nc
      stdout=nc
      usb_boot=mw 0x800000 0 1; run usb_load_uimage; if run usb_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
      usb_init=usb start
      usb_load_uimage=ext2load usb $device 0x800000 /boot/uImage
      usb_load_uinitrd=ext2load usb $device 0x1100000 /boot/uInitrd
      usb_root=/dev/sda1
      usb_rootfstype=ext2

      Delete
  23. I caught that a couple of hours ago and fixed it. It didn't help. It still gets stuck at Starting kernel. Could you please post a fw_printenv from a working Pogoplug V4? I'm hoping that some other environment variable is wrong.

    ReplyDelete
    Replies
    1. he env variables wouldn't be "wrong", maybe wrong for your existing usb drive. I would recommend setting up a new USB drive. Otherwise, please try the forums for help.

      Delete
    2. I got it working! The "rootfstype=ext3" was the issue. I didn't realize that I needed to do a saveenv.

      Thanks for all your help.

      Delete
  24. Thanks! Worked perfectly and I now have it up and running! I'm using the Mobile and running it off a 4gb usb drive, so I just shared a path on the drive (giving me about 3Gb of space which is plenty for my application) and turned off the root$ share. My next step is tweaking it some so I can have a simple password authentication on the share.

    Thanks again!!

    ReplyDelete
  25. Hi Qui, I followed every instruction, however, when uboot boots, it keeps saying this

    (Re)start USB...
    USB0: USB EHCI 1.00
    scanning bus 0 for devices... 1 USB Device(s) found
    scanning usb for storage devices... 0 Storage Device(s) found

    and boot into the stock OS afterwards. I tried all my USB devices (5 of them), still no luck. Any idea?

    Here is the printenv

    arcNumber=3960
    baudrate=115200
    bootcmd=run bootcmd_usb; run bootcmd_mmc; run bootcmd_sata; reset
    bootcmd_mmc=run mmc_init; run set_bootargs_mmc; run mmc_boot
    bootcmd_sata=run sata_init; run set_bootargs_sata; run sata_boot;
    bootcmd_usb=run usb_init; run set_bootargs_usb; run usb_boot;
    bootdelay=10
    console=ttyS0,115200
    device=0:1
    ethact=egiga0
    ethaddr=00:25:31:05:ec:b3
    if_netconsole=ping $serverip
    ipaddr=192.168.29.245
    led_error=orange blinking
    led_exit=green off
    led_init=green blinking
    machid=F78
    mainlineLinux=yes
    mmc_boot=mw 0x800000 0 1; run mmc_load_uimage; if run mmc_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
    mmc_init=mmc rescan
    mmc_load_uimage=ext2load mmc $device 0x800000 /boot/uImage
    mmc_load_uinitrd=ext2load mmc $device 0x1100000 /boot/uInitrd
    mmc_root=/dev/mmcblk0p1
    mtdids=nand0=orion_nand
    mtdparts=mtdparts=orion_nand:2M(u-boot),3M(uImage),3M(uImage2),8M(failsafe),112M(root)
    ncip=192.168.29.129
    partition=nand0,2
    preboot=run if_netconsole start_netconsole
    preboot_nc=run if_netconsole start_netconsole
    rootdelay=10
    rootfstype=ext3
    sata_boot=mw 0x800000 0 1; run sata_load_uimage; if run sata_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
    sata_init=ide reset
    sata_load_uimage=ext2load ide $device 0x800000 /boot/uImage
    sata_load_uinitrd=ext2load ide $device 0x1100000 /boot/uInitrd
    sata_root=/dev/sda1
    serverip=192.168.29.129
    set_bootargs_mmc=setenv bootargs console=$console root=$mmc_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
    set_bootargs_sata=setenv bootargs console=$console root=$sata_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
    set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
    start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
    stderr=nc
    stdin=nc
    stdout=nc
    usb_boot=mw 0x800000 0 1; run usb_load_uimage; if run usb_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
    usb_init=usb start
    usb_load_uimage=ext2load usb $device 0x800000 /boot/uImage
    usb_load_uinitrd=ext2load usb $device 0x1100000 /boot/uInitrd
    usb_root=/dev/sda1
    usb_rootfstype=ext3

    Environment size: 2314/131068 bytes


    ReplyDelete
    Replies
    1. Probably the USB drive. Try a high quality brand name drive or see if you have any luck with a SD Card.

      Delete
    2. I have tried all the USB drives and even bought a Sandisk Fit 8GB as you recommended. Still no luck :(
      I will try a SD card later today and see if any luck.

      Delete
    3. Just to confirm, are you using a Mobile or Series 4? If Series 4, make sure you're using the USB port on the top of the Pogoplug and not the USB 3.0 port on the back.

      Delete
    4. Oh shoot, it is a 4 and I did use the USB port on the back :(
      That might be the problem. I will try out and let you know.

      Aaron

      Delete
    5. I plugged into the usb on the top and it works now!!! You might want to add the reminder in the article for future readers :)

      Delete
    6. Glad we figured that out. I've noted it in the troubleshooting section.

      Delete
    7. yep, thanks! It looks Uboot does not recognize USB 3.0 yet?

      Delete
  26. Hi, thank you for this clear tuto, it helps me to install Arch on a my first Pogo v4 but unfortunately I bricked my seconde Pogo v4 ( I don't remember how that happen ) and my big problem is when I tried to revert back the stock firmware to mtd0 with serial/UART and tftp I did something wrong and now the pogoplug light wont turn on and I see no boot info on Putty with serial connexion ( just black screen) but at least I see the RJ45 light blinking and the cpu heat as normal, the last thing I did is :
    tftpboot 0x800000 mtd0
    nand erase 0x0 0x80000
    nand write.e 0x800000 0x0 0x80000
    then I hard rebooted the pogo and it wont come back, I think something happend to the nand flash.
    Do you have any idea how to save this pogo v4 , else can you lead me to any forum whre I can ask?
    Thanks in advance

    ReplyDelete
    Replies
    1. You may be able to recover by UART booting. Check my troubleshooting section. Probably easier to buy a new one though.

      Delete
  27. Hi Qui, I've installed ALARM on my pogoplug mobile following the instructions on the Arch Linux ARM site, is it possible to enable netconsole on it ? Are the steps similar to those found in your tutorial ? Thanks in advance.

    ReplyDelete
    Replies
    1. The uBoot provided by the Arch Linux ARM site does not support netconsole. Just upgrade the uBoot to the one I provide in this tutorial.

      Delete
  28. Hey Qui,

    I've successfully got VAMP 0.6 running on the V4, works great, faster than the E02 for some reason at booting, though that might be down to Bodhi's uBOOT, even SD booting of VAMP works, so I can switch between USB for Debian/Arch or SD for VAMP :)

    ReplyDelete
  29. hey, I've recently lost my sdcard (i know, im stupid) , and so i've lost SSH access to the pogoplug whatsoever. since i dont have a linuxmachine available, and the steps taken in the tut aren't possible through windows nor a VM, i was wondering if it was possible to flash an .iso file to another SDcard using windows, with on it the same shit as in the .tar.bz2 file. if yes, could someone with access to a linuxmachine plz make one for me? if no, what can i do?

    ReplyDelete
    Replies
    1. Assuming you followed the tutorial completely, your Pogoplug should boot back into the default Pogoplug OS when nothing is attached. You'll need to make sure it's activated and ssh is enabled from the my.pogoplug.com website if you want to SSH into it. You should then be able to partition, format and setup a new SD card or USB drive.

      Delete
    2. i assume i didn't since the only thing i get whet powering it on is a blinking green led that turns red now and then :/

      Delete
    3. but since uboot is setup to boot from the sd-card slot, isn't it possible to load some sort of compatible os to an sd card and boot of of it? like a debian or arch distro?

      Delete
    4. There's a boot order.

      #Make SD Card first boot device (optional)
      #Default boot order is USB->MMC/SD->SATA->POGO_OS
      /tmp/fw_setenv bootcmd 'run bootcmd_mmc; run bootcmd_usb; run bootcmd_sata; run bootcmd_pogo; reset'

      Delete
    5. You should be able to make a new SD card on any Linux machine. fdisk, mke2fs -j and un-tar the rootfs to it. I have done this many times with SD and USB. They all boot the Pogo if the partition is marked bootable by fdisk

      Delete
  30. Has anyone successfully enabled a USB WiFi dongle? I have wpasupplicant installed and tried a myriad of configs to no avail.

    RTL8188SU chipset which works with the r8712u module in Ubuntu 14.x no problem.

    Stuck :(

    ReplyDelete
    Replies
    1. https://wiki.debian.org/rtl819x
      https://wiki.debian.org/WiFi/HowToUse#Command_Line
      you will have to install the realtek firmware and tell your wireless to be active through "ifup wlan0"

      Delete
    2. Hang tight. I'm working on publishing another Debian tutorial that will cover Wi-Fi configuration, AirPlay, LMS, Squeezelite, BTSync and MJPG_Streamer (Webcam). It should be published around Thanksgiving.

      Delete
    3. Casey,

      I have looked at that page, and that was the "configs" I was talking about. I am missing something stupid, which is normal for me ;)

      lsusb shows : ASUSTek Computer, Inc. USB-N10 802.11n Network Adapter [Realtek RTL8188SU]
      so it recognizes the device at least. The same dongle functions with the r8712u kernel module on the Ubuntu machine, so I know it works.

      I did the firmware install as directed on that page, but not sure if the apt-get install method AND the manual method are required. It's not very clearly stated. I guess it can't hurt to try it, but the dlink site won't behave and give me the file. :| I found the driver package for 8192 on the DLink site and unzipped it as directed. Then it says to configure, but none of those work.

      Qui Hong, I appreciate your efforts here a LOT! I will be looking for your WiFi tutorial. The last hurdle. I just can't run an ethernet to where I need to put this thing.

      Delete
    4. Found a one-liner in the debian wiki about the RTL8188SU drivers ...Looks like I am shopping. Anyone have a for sure USB dongle for these PogoPlug v4s?

      "[!] r8712u, rtl8192e, rtl8192su and rtl8192u are staging drivers and only available for the x86 and x86-64 architectures (Debian i386 and AMD64 ports respectively) at this time."

      Delete
    5. Here you go - http://blog.qnology.com/2014/11/debian-on-pogoplug-tutorial-wireless.html

      Delete
  31. Qui Hong, first or of all, thanks for the great tutorial!

    So i used it on my SD Card and installed Debian, after that i used an external HD and wanted to mount if from boot. Then i edited fstab.

    Firstly nothing happened, after trying sometimes i changed the last value of the last line where was my hd from 0 to 2.

    Rebooted it, now my pogoplug dont boot debian, and if I take of my SD Card dont boot Pogoplug original firmware either. What can i do?

    ReplyDelete
    Replies
    1. You're welcome. Have you considered my ~$12 solution?

      "If you made a mistake, bricked your Pogoplug or simply didn't understand what you got yourself into or want to start fresh, you're in luck! Here is a ~$12 solution."

      Seriously though, I have no idea what you're doing or why you're having issues. The $12 solution above is probably the quickest.

      Delete
    2. I live on Brazil, here $12 dont work...

      If I can repair this I will post here a mini tuto

      Delete
    3. Got it. Here are the instructions from the Arch Linux ARM site to give you an idea of what you need to do.

      http://archlinuxarm.org/support/reinstallation

      Delete
    4. You are a really kind guy! This is exactly what I was looking for!

      And good luck installing open wrt in our pogo... thanks for testing for everything for us!!

      Delete
  32. I have the same problem of Sepee Destoop... my pogo keep blinking red after i remove my sd card, i will try this:

    How do I do this:
    "You should be able to make a new SD card on any Linux machine. fdisk, mke2fs -j and un-tar the rootfs to it. I have done this many times with SD and USB. They all boot the Pogo if the partition is marked bootable by fdisk"

    ReplyDelete
    Replies
    1. Sorry, I do not have time to provide personal tech support for everyone. I tried my best to make the tutorial as simple as possible. If you're not able to boot into the default Pogoplug OS, then you did something wrong or skipped some steps. Basically what you need to do is step up a new USB flash drive or SD Card with the Debian rootfs on it. Google is your friend.

      Delete
    2. Go to the section on this page above which is labeled :Debian/ALARM Installation on SD Card (or USB Hard/Flash Drive)

      Skip down to the "#Partition your SD Card" (or the "#OR Partition your USB Flash/Hard Drive") line and go from there. Just do it on any Linux machine. When you are done, put that SD or USB in your Pogo and hard boot. Worth a try!!!

      Delete
    3. This comment has been removed by the author.

      Delete
    4. It worked like a charm,

      To install Arch Linux use this:
      http://archlinuxarm.org/support/reinstallation

      To install Debian use this also:
      http://archlinuxarm.org/support/reinstallation

      BUT change this:
      wget http://archlinuxarm.org/os/ArchLinuxARM-PLATFORM-latest.tar.gz
      bsdtar -xpf ArchLinuxARM-PLATFORM-latest.tar.gz

      FOR this:
      wget http://download.qnology.com/pogoplug/v4/Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
      wget http://download.qnology.com/pogoplug/v4/Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.md5

      #check md5 (output should match)
      md5sum Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
      cat Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.md5

      #extract and delete
      tar -xjf Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
      rm Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2
      rm Debian-3.14.0-kirkwood-tld-1-rootfs-bodhi.tar.md5

      Thanks Qui e and others from the comments!!

      Delete
    5. Glad to hear you got your system back up and running. Thanks for sharing the details. Much appreciated.

      Delete
  33. Can anyone tell me if it's possible to mount Pogoplug Cloud as drive, or how to use rsync to backup to pogocloud cloud pls?

    ReplyDelete
  34. Please help. I have a PogoPlug Mobile (POGO-V4-A1-01) that was quite happily running Arch Linux from a USB Flash Drive. One day my son decided he needed a USB Flash Drive, so he yanked the flash drive from my plug and reformatted it on his computer for his own purposes. Now my PogoPlug sits there with a flashing green LED, and as far as I can tell, is not accessible on the network. Anyone know of a way to recover from this without hacking in a serial cable? Would really be cool if there was some way for me to write out a linux FS to a new USB flash drive, plug it in, and have it boot. Thanks so much for your blog. Really great info. I'll definitely buy you a coffee.

    ReplyDelete
    Replies
    1. Hi Chris, Thanks for the coffee! You can do exactly that - boot into a Linux system (Linux Live CD for example) and setup a new USB flash drive. Please take a look at the troubleshooting section:

      Reinstallation - If you need to setup a new SD Card or USB Flash Drive, what you need to do is use a Linux computer or boot a Live Linux CD to partition, format, download and extract the rootfs to your SD Card or USB Flash Drive. Here is a basic outline of the steps from the ArchLinuxArm.org website (http://archlinuxarm.org/support/reinstallation). Note for Debian, you'll want to use the link to the tarball in this tutorial.

      Delete
    2. Awesome. Thanks Qui. I'll see if I can make that work. Enjoy the coffee.

      Delete
    3. Made some progress. Using a combination of the reinstallation instructions on the Arch site, and your blog here, I was able to create what looks to be a usable Debian filesystem in a USB flash drive. Inserted the drive into the PogoPlug mobile and powered it up. Front LED flashes green briefly, USB flash drive has a few LED flashes, and then the front LED on the Plug does solid green. This looked good. However, doesn't seem the plug is broadcasting for a DHCP assigned address. In fact, I don't see any network activity. Link is there and I see some LED activity. But I connected it to the ethernet interface on my laptop and did some packet captures in Wireshark, and not seeing anything from the Plug. Any ideas? Thanks again.

      Delete
    4. Seems serial console my only option. I tried an SD card and seems the plug not configured to boot from SD. From what I can tell, it attempts to boot from the USB Flash drive, but getting hung up somewhere. With the USB flash drive installed, the status LED goes solid green. Just no network connectivity. Using an SD card, I just get a flashing green status LED. Not sure if spending the money and putting forth the effort on the serial console is worth it given how cheap these things are now. I made sure the partition type on the USB flash drive is type 83 Linux and the bootable flag is enabled.

      Delete
    5. Hi Chris, it's not clear what your starting state was. Are you using the uBoot provided in my tutorial or the uBoot provided by archlinuxarm.org? SD Card booting will only work with the uBoot provided in my tutorial. If you're running the archlinuxarm.org uBoot try there revert process - http://archlinuxarm.org/platforms/armv5/pogoplug-series-4#qt-platform_tabs-ui-tabs3

      Delete
    6. Awesome. That did the trick. The revert process worked. Pogoplug is back to what looks like stock firmware, accessible at my.pogoplug.com
      Qui, you are the man. Thank you so much.
      Now, question I am asking myself...do I try to go down the road if installing Debian on this thing. Ideally, I'd like to boot Debian off CF and plug a large USB harddrive into the single USB slot (this the the Mobile Edition of the Pogoplug (POGO-V4-A1-01)
      Thanks again. Really thankful for your help.

      Regards,
      Chris

      Delete
    7. Great. I hate it when people use some other tutorial and then come over to my blog and ask for help. I feel like you cheated on me and now you want some comfort :)

      Seriously though, just follow this tutorial from beginning to end. Since you already modified using the archlinuxarm instructions you want to make sure you follow this tutorial (http://blog.qnology.com/p/pogoplug-v4-boot-default-pogoplug-os.html) if you want to boot back into the Pogoplug OS.

      "If you previously installed the uBoot from archlinuxarm.org and/or already running ALARM or Debian, use these instructions instead - Pogoplug v4 - Add option to boot default Pogoplug OS when USB/SD Card is Not Attached."

      Delete
  35. Your downloads webpage seems to be down for a few days now.

    ReplyDelete
    Replies
    1. Thank you for letting me know. It should be working now. Please let me know otherwise.

      Delete
  36. Should I have not followed this guide with an E02? Because I did and after the reboot it isn't connecting to the router and the light isn't coming on. Did I bork it so badly that I need the serial cable? If so, is there anywhere I can buy the serial cable instead of trying to make it? What do I need to do to fix it once I do get it?

    ReplyDelete
    Replies
    1. Hi Alex,

      I'm guessing you know the answer to your question by now. The E02 is not a Pogoplug Mobile or Pogoplug Series 4. A serial cable will not help your situation. I have a seperate tutorial for the E02. Sorry.

      Delete
  37. Hi Qui,

    First, thanks for making this excellent tutorial!

    I have a Series 4 that i attempted the above tutorial on. Everything was going smoothly until my home lost power. I was able to successfully complete the step "Download and Flash uBoot Environment Parameters" before this happened. Now the device will not allow me to SSH into it. I also tried cycling the power and re-activating through my.pogoplug.com, but all it does is flash red angrily at me. I'd really appreciate some help with this, obviously I'm a noob at all of this.

    Also do you have a "Buy me a Beer" button :) ?

    Thanks!

    ReplyDelete
    Replies
    1. I have a "Buy me Coffee" button on the top right :)

      You'll need to setup your USB drive on a Linux machine and then complete the tutorial. See the troubleshooting section and comments.

      "Reinstallation - If you need to setup a new SD Card or USB Flash Drive, what you need to do is use a Linux computer or boot a Live Linux CD to partition, format, download and extract the rootfs to your SD Card or USB Flash Drive. Here is a basic outline of the steps from the ArchLinuxArm.org website. Note for Debian, you'll want to use the link to the tarball in this tutorial."

      Delete
  38. Haha thanks for the quick reply, Qui. You really have the patience of a saint, I went back and READ through the entire page again and saw many other people had the same issue. I apologize for the re-hash of documented issues :) and I'll try to follow your recommendation (may be just simpler for me to go save up for a NAS instead, but we'll see).

    ReplyDelete
  39. my pogo plug is so slow over ethernet; my current speed is 3.4m/s ; is normal?

    ReplyDelete
    Replies
    1. Hard to say? You get 3.4 m (meters) a second? :)

      Delete
  40. I was in the middle of getting Arch Linux wget http://archlinuxarm.org/os/ArchLinuxARM-kirkwood-latest.tar.gz and tar , and it stopped and complained that it ran out of space. I looked and I missed a step cd /tmp/mnt because I did not want Debian. Then stumbled I lost power to the Pogoplug and now I can't get back in to connect. Is there any way to recover from this? Appreciate any idea.

    ReplyDelete
    Replies
    1. Ah, sorry about that. I'll make sure to add the "cd /tmp/mnt" to the arch install.

      You should be able to setup your USB drive with Arch using another linux computer or Linux Live CD. See the troubleshooting section.

      Delete
    2. Thank you Qui. I should have going through it slowly!
      Other than that, great instructions.

      Delete
    3. This same thing happened to me as well. I thought my device was bricked. Thankfully I had another pogoplug laying around so I made the arch install usb on that one. Once successfully installed, I thought I would try plugging that usb into the "bricked" pogoplug. It booted without issue. However, if it doesn't have anything plugged into it, it still cycles through blinking green then blinking red, then power cycles. Rinse and repeat indefinitely. Qui, any thoughts on that?

      Delete
    4. Patrick
      When I prepared the sd card from another Ubuntu computer incorrectly, it did exactly the same thing as you stated. Apparently, there was no file system made when I did the mkfs. In other words, there is no file system loaded, it looks like.
      After I fixed that it now booted into solid green light but how do I connect to it? I checked on my router and it does not seem to be online?
      Any idea?

      Delete
    5. @Patrick - http://blog.qnology.com/p/pogoplug-v4-boot-default-pogoplug-os.html

      @DonT - try using a USB flash drive and/or Debian. Prior to your issue, did you follow the tutorial completely? Did you setup the environment variables and netconsole?

      Delete
    6. Qui,
      I did set up the environment variables but did not set up netconsole since I was concerned about the fixed addresses that will mess up my DHCP network. I will try to do it with USB drive but can you tell me the reason for doing so? I would like to keep the USB port for experiments. Thanks

      Delete
    7. I built ArchLinux again on a USB drive (instead of SD card) and I got the same behavior after boot: long flashing green, short yellow and then solid green. It still does not appear on the router network map.
      BTW, I did not originally install Pogo OS for default boot :-(

      Delete
    8. Hard to say what you issue is without netconsole or serial. I would suggest my quick simple solution I mentioned above after my red warning.

      Delete
    9. OK Using Qui's tutorial here in conjunction with http://archlinuxarm.org/support/reinstallation I was able to get both the SD card (16GB, single partition) and USB drive (8GB single partition) ran with ArchLinux. Not too sure but the ext4 and ext3 could be important as well as the utilities used by Qui's instructions.
      I was able to SSH in and I tried to rebuild the Pogo OS boot (when there is no SD or USB drives present) using the this page http://blog.qnology.com/p/pogoplug-v4-boot-default-pogoplug-os.html - But I kept getting with the firmware commands not present. I was able to get wget running but not with fw_setenv and fw commands in general. I wget them but they refused to run (bash: command not found) . Can you give any pointer?

      Delete
    10. @Dont, glad to hear you got your system up and running. Yes the ext3 versus ext4 is important. What did you do differently? Did you initially format as ext4?

      Thanks for letting me know about your issue with the firmware commands. I've updated the instructions to include the necessary packages for the fw_setenv command.

      pacman -Sy mtd-utils uboot-env wget

      Delete
    11. Yes I did use the instructions at the archlinuxarm.org for reinstallation and used ext4 (USB drive) instead of ext3 (SD). I just need to READ the instructions. It did mentioned USB drive at the top of the page.
      Thanks for all the pointers.

      Delete
    12. pacman -Sy mtd-utils uboot-env wget
      PURRRFECT! Works exactly as written.
      Thanks again. Cup of coffee to you!

      Delete
    13. Wow, the archlinuxarm reinstallation instructions does use ext4. That must have changed recently. At any rate, I've noted that in the troubleshooting section. Thanks for the coffee!

      Delete
  41. Qui,
    Is there a way to use the USB or possibly the RS232 pins on-board for communicating instead of the Ethernet's SSH?

    ReplyDelete
    Replies
    1. Found your page that shows using Putty and the installation of Screen.

      Delete
  42. Will you have updated instructions soon now that Kernel 3.18 and Rootfs 3.17 are out?

    ReplyDelete
    Replies
    1. The instructions for going to 3.18 are posted here - http://forum.doozan.com/read.php?2,12096

      I'll post my version of the instructions this weekend.

      Delete
    2. Great, can you also include update instructions for those of us running the previous UBOOT and Kernel 3.14 from these original instructions?

      Delete
    3. FYI - I posted the upgrade to 3.18.5 kernel instructions. Please give it a try and let me know if you run into any issues.

      Delete
    4. Thanks Qui! I'm revamping my system, now!

      Delete
  43. everything is working good but my hdd mount points are lost on reboot and need to mount them again

    ReplyDelete
    Replies
    1. Auto mounting your hard drive is handled via /etc/fstab

      #Label hard drive partition
      tune2fs -L USB /dev/sda1

      #Mount using Label
      echo "LABEL=USB /media/usb ext3 rw,noatime,nofail 0 0" >> /etc/fstab

      reboot and verify

      Delete
  44. Hi, wanted to let you know I keep timing out when trying to connect to download.qnology.com, so am unable to complete the tutorial. Is there a mirror?

    ReplyDelete
    Replies
    1. Thanks for letting me know. My VPS was having network issues.

      Delete
  45. [ 25.676380] vgaarb: loaded
    [ 25.676880] SCSI subsystem initialized
    [ 25.677627] usbcore: registered new interface driver usbfs
    [ 25.677739] usbcore: registered new interface driver hub
    [ 25.677824] usbcore: registered new device driver usb
    [ 25.678072] pps_core: LinuxPPS API ver. 1 registered
    [ 25.678085] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giome tti
    [ 25.678138] PTP clock support registered
    [ 25.679713] Switched to clocksource orion_clocksource
    [ 25.707322] FS-Cache: Loaded
    [ 25.726327] NET: Registered protocol family 2
    [ 25.727602] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
    [ 25.727643] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
    [ 25.727672] TCP: Hash tables configured (established 1024 bind 1024)
    [ 25.727772] TCP: reno registered
    [ 25.727790] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [ 25.727822] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [ 25.728104] NET: Registered protocol family 1
    [ 25.728225] pci 0000:00:01.0: enabling device (0140 -> 0142)
    [ 25.730897] futex hash table entries: 256 (order: -1, 3072 bytes)
    [ 25.748986] VFS: Disk quotas dquot_6.5.2
    [ 25.749396] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [ 25.752236] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    [ 25.753858] fuse init (API version 7.23)
    [ 25.756821] aufs 3.18.1+-20150126
    [ 25.756872] msgmni has been set to 236
    [ 25.759596] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 2 50)

    ReplyDelete
  46. then starts Arch Linux but not detect the Pogoplug in LAM

    ReplyDelete
    Replies
    1. Not sure what you issue is. I would suggest following the tutorial as I can see you didn't from the lack of ethernet address being set and the mtdparts not being correct. Try a reinstallation of ALARM on your USB/SD Card and make sure to format as EXT3.

      Delete
  47. how can I reinstall with serial cable?
    thank you for your help

    ReplyDelete
    Replies
    1. You can not reinstall ALARM from your serial cable connection. Please read the troubleshooting section.

      Reinstallation - If you need to setup a new SD Card or USB Flash Drive, what you need to do is use a Linux computer or boot a Live Linux CD to partition, format (please make sure to use ext3 and not ext4), download and extract the rootfs to your SD Card or USB Flash Drive. Here is a basic outline of the steps from the ArchLinuxArm.org website. Note for Debian, you'll want to use the link to the tarball in this tutorial.

      Delete
  48. I accidentally followed above steps for Pogo E02. Isn't showing front LED now, only shows network LEDs on back and won't show up on network :( anyway to fix ?

    ReplyDelete
    Replies
    1. Are you saying you installed the PPV4 uBoot on the Pogoplug E02? If so, I think you're out of luck. Otherwise, I would suggest the forums for help.

      Delete
  49. HI Qui, first of all an acknowledgement to a great work, worth the coffee... now I got myself into a situation and wanted you help, since I'm to a linux savvy... I followed your steps (1) installed and rebooted ok (2) updated and upgraded, ok (3) might have missed one step on the SAMBA section... but, after all that, I installed (somehow minidlna) which was my target all along, but without a good guidance I'm not sure if I just messed all up or if I just got it to a mid point in need of something else.... I wanted minidlna to have my not-so-smart Samsung TV to see the Pogo and of course to play video from my HDDs... now the first part check, my TV sees the Pogo, but the Pogo is not responding (I might have messed all up) since it does not recognize USB when attaching to the Pogo... is there a way I could share my steps for you to take a look and tell my "yes, you messed it all up"?....

    ReplyDelete
    Replies
    1. Sure, post your issue and installation logs, error message or whatever.

      Delete
  50. Thanks for the coffee! Sorry minidlna is not something I using or familiar with. I would suggest using the forums for help.

    ReplyDelete
    Replies
    1. Qui, again thanks, followed your suggestion and founded the right information, I can now say that it was a simple matter of configuration, now I do have a way to play videos, music, etc on the Samsung not-so Smart TV... the minidlna does what it needed to open the oprtunities, now I will go the next step, will try and hook up my 4 Bay HDD Case, who knows, it might work. Thanks again, keep up this alive, I know is a great guide for many.

      Delete
  51. This comment has been removed by the author.

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
    2. Sorry, your Pogoplug Pro is good as garbage. Not sure why you would use a tutorial designed specifically for the Pogoplug V4 and expect it to work on a different model.

      The Pogoplug doesn't have a video out so why would you expect xbmc to run on it? UMS will not work on the Pogoplug either.

      I would suggest doing a little bit more research before you start on your next project.

      Delete
    3. Nick
      Try this thread: http://forum.doozan.com/read.php?2,20169
      I also purchased the Pogoplug Pro ($5 at Adorama). It bought it because of the price,it has a 700 dual core processor, built in wifi (since i couldnt get wifi to work on my V4), and 4 USB ports (which make up for the lack of SD slot). The V4 has USB 3.0, which is pointless with a single core 800mhz. Hopefully the dual core proves a little better, but would be nice to have USB 3.0 as well.
      Regardless, I would say the Pogoplug Pro is not "as good as garbage". Its has all the potential, just needs good devs. I'll let you know if I come across anything else, but that link seems promising. its recent also.

      Delete
    4. @Casey, "good as garbage" because he flashed the PPv4 uBoot onto his PP Pro.

      Delete
    5. Gotcha. Didnt catch the context.
      Being that you're a pogoplug aficionado (meaning much more experienced and familiar than myself), are the instructions for installing Debian on the PPPro similar (but with different uboot and rootfs), or is there something more im missing?

      Delete
    6. yes i flash the onas with the kirkwood but following the instruction here http://archlinuxarm.org/forum/viewtopic.php?f=55&t=2146&start=360 i am able to now boot thru the hard drive with arch linux. Now the problem is how do i restore the boot on plug. i am ssh in

      Delete
  52. I didn't realize that blogger had wrapped this line around to a second line:

    /tmp/fw_setenv start_netconsole 'setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;'

    which put me at a:
    >

    Instead of closing out the ssh client and trying to re-ssh in, I unpluged the unit and repluged it back in. I assume I've now bricked my unit?

    ReplyDelete
    Replies
    1. Oh no, sorry to hear that. No it's not "bricked".

      You just need to setup Debian on a USB flash drive using another Linux computer or using a Linux Live CD.

      Delete
    2. Thanks. Used my mythBuntu system. After an initial fail, because I didn't realize my partition program defaulted to ext2. I tried a second time, changing it to ext3, and it worked. Got caught up in the moment and over-thought things.

      Delete
  53. ok i did it right this time on the mobile can you create a a tutorial on how to install Kodi media server. http://kodi.tv/download/

    ReplyDelete
    Replies
    1. Sorry, kodi cannot be installed on the Pogoplug. It's headless (no video).

      Delete
    2. I see can you recommend a media server I can use.

      Delete
  54. @rcc, sorry I accidentally deleted your original comment.

    Sorry to hear that. Sounds like the uBoot flashing went wrong somehow. It's possible to recover it if you're willing. Requires a soldering on a serial connection and booting via UART. I personal use another Pogoplug to assist with
    recovery.

    More info here - http://forum.doozan.com/read.php?3,7852,7852.
    Use bodhi's kwboot found here - https://www.dropbox.com/s/bx1usk1bzt87ufh/kwboot

    Good luck.

    ------
    Followed these instructions exactly (copy/paste) for my PPP4 mobile to install Debian onto an SD with chain loading to fall back to Pogoplug is if SD not inserted.

    Now I have a PPP that doesn't boot - no lights on the front panel, just flashing nic lights. No difference when pulling the SD card.

    So sad, too bad.

    ReplyDelete
  55. This comment has been removed by the author.

    ReplyDelete
  56. I followed the Debian guide, it works fine booting from the top USB. However when I have HDD attached at the rear too, it tries to boot but it takes forever (usb flash blinks forever).

    ReplyDelete
    Replies
    1. Fixed it, I had to reinstall 3.14.0 as Debian kernel 4.1 caused the problems. However 3.14.0 could not initialize the usb-3 but after upgrading to 3.18.5 it worked fine. Got my self a nice media server now!

      Delete
  57. To be more clear, 4.1 could boot with empty usb-3 ports, and you could insert and mount usb storage after the boot process was finished. However it was not possible to boot with hdd's in the usb-3 ports.

    Debian Pogoplug v4

    ReplyDelete
    Replies
    1. The USB 3.0 ports are not bootable (Uboot can not access them).

      Delete
  58. Thank you for your great tutorial. I really have enjoyed this on my V4 (hdd on the top sata port), but got a problem recently.
    I was planning to change my hdd, and followed the reinstallation instruction in archlinuxarm.org, and used your links for Debian.
    After partitioning, formatting it ext3 with "rootfs" label, and extracting Debian (/tmp/mnt), I put the new hdd on, but it did not boot up with Debian. (it went to pogo_OS)
    What can I try to fix this?

    ReplyDelete
    Replies
    1. I tried one more time from scratch, and it worked.
      Still have no idea what was wrong.
      Anyway, thank you very much for your great work!!!

      Delete
  59. I just wanted to add this in case someone was having trouble accessing their samba share on an external hdd, having used the Samba tutorial and smb.conf that the author provides. I was able to easily see my share as 'usb' on my Windows 8.1 and 10 system, but was unable to connect/view the directory. After I made this one simple change to the smb.conf file the author provided, everything worked like a charm.

    Instead of:
    [usb]
    path = /media/usb/share

    Change to:
    [usb]
    path = /media/usb

    I know this doesn't seem correct, since you would have mounted the usb hdd as '/media/usb/share', but this simple edit did the trick.

    ReplyDelete
  60. Great writeup!

    The Debian worked nicely, and I was able go to Jessie release afterword , too.

    Not sure whether anybody noted yet, but for for the Arch version, you can't login as root/root anymore. Log in as alarm/alarm, then su to root after. (The new versions of ssh prevent root login remotely, apparently). I was really after the Arch, because I want to give Plex a whirl on it, and couldn't really find any stuff for Debian/Plex.

    https://plus.google.com/+ArchlinuxarmOrg/posts/KSf4w6njvgM

    Fedora has a Kirkwood ARM version , last supported for Fedora 17, though. Not sure I want try that road, but maybe for fun.

    Anyhow, I spun my wheels for a while not being able to log in to the Arch as root/root, until I stumbled on the alarm/alarm info, so I figured I'd save someone else some time if they read this again.


    ReplyDelete
  61. Is it possible to have two different SD cards, one with Debian and one with Arch, and swap them out when you want to work on a different one?

    ReplyDelete
  62. Hi Qui,
    Thank you for your great guide.

    Unfortunately I lost power when I was coping the Arch rootfs on the card and my Pogoplug v4 is not booting anymore.
    Constant green led flashing.

    I can use netconsole and stop the uboot process.

    When I type "env print" at the Pogo4> prompt I noticed there is no "run bootcmd_pogo" before "reset" in the env var "bootcmd"
    I cannot find the env variable "bootcmd_pogo" either.

    Is there a way to write that env from the netconsole and boot the orginal pogoplug os?

    I did manage to create a sd card on a linux system and copy Arch's rootfs.
    The system boots (green led fixed) and also gets an ip address, but when I try to connect with ssh I get no response.
    When I plug the SD the boot ends with a gren light fixed,

    Any help would be greatly appreciated

    ReplyDelete
  63. So, I did this after coming here from the http://blog.qnology.com/2013/03/tutorial-pogoplug-e02-with-arch-linux.html page.

    "For the Pogoplug Series 4 and Mobile, please use this tutorial for the latest uBoot (SD Card booting support) and then come back here to complete the installation."

    Except I go back there, and "pacman" doesn't work. So it seems I don't have Arch Linux installed yet, so I try to install it, and now it's all messed up.

    Is there any way to start fresh, or do I have to buy a new one? And if I buy a new one, how do I avoid the same problem?

    Where do I start again to "complete the installation"? The next line says "E02 Summarized version".

    Thanks

    ReplyDelete
  64. Unit is not Brick try popping open the cover and run from sata http://archlinuxarm.org/forum/viewtopic.php?f=55&t=2146 This is what did it for me when i flash the wrong nand . Still didnt reflash the right one but the system now boots and it is seen on pogo plug

    ReplyDelete
  65. Default login for the Arch Linux / ALARM is alarm/alarm NOT root/root

    ReplyDelete
  66. Awesome Tutorial. You made my day! Thanks a lot!

    ReplyDelete
  67. However, I had an issue to setup netconsole. I am using a macbook pro to set up nc.

    ReplyDelete