ena30 / snake-os

Automatically exported from code.google.com/p/snake-os
0 stars 0 forks source link

Conrad Network Storage Device GNSD630 / A-Tec MS304S MS347S #257

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
I've been trying to get snake to work on one of these. 

Note: I only have a Conrad device but the firmware is the same.

Hardware:
SOC: CNS2132
RAM: 32MB
FLASH: ST M25P64 (8mb)
USB-SATA bridge: SPIF225A

Serial interface (J1): GND DATA - DATA GND
Serial console is disabled in the original firmware but can be enabled by 
modifying /etc/inittab in the root fs.

JTAG (J2)
VCC - - TMS TCK GND TDO SRST TDI
Works okish with openocd.

The original firmware can be downloaded here: http://www.enclosureservice.com/
Layout:
0x00000000 u-boot
0x00020000 u-boot config
0x00030000 not sure, looks like an ide driver. maybe unused
0x00040000 kernel
0x00220000 root fs squashfs 3.0 
0x007DFFF0 firmware info (20 bytes)

The firmware updater will reject images if the values at 0x007DFFF0 don't 
match. Similar sequences are at the end of the image and the end of the u-boot 
segment but they don't seem to be matter.

The updater will write everything starting from the kernel segment to the 
flash. Would be useful if there was a way to get it to overwrite u-boot as well.

I managed to get snake os to boot already, but the button driver has to be 
disabled and the sata disk isn't recognized. Which makes it fairly useless.

I guess the sata bridge needs some extra code. Without source or docs, that 
could take a while to figure out.

As a temporary workaround it might be possible to use the original 
bootloader/kernel with a customized snake root fs. I haven't tried that yet 
though.

Original issue reported on code.google.com by stefansc...@googlemail.com on 15 Dec 2011 at 3:23

GoogleCodeExporter commented 8 years ago
Hey Stefan,

Good work! I now have Snake on my Conrad ME-SN-35B. The firmware in your post 
#43 applied without problem.

Did you know the digits after the GNS are the last 4 digits of the NIC's 
burned-in address? Mine was GNS5e0a after its MAC 00:16:67:03:5e:0a.

On the subject of the MAC address, it's now changed to something ending ba:df . 
Any idea how to put the old one back? No big deal I guess but would be the 
proper thing to do.

Please let me know if you need any info from me about this particular unit that 
might help you or others.

Cheers.

Original comment by mharrod...@gmail.com on 25 Mar 2013 at 10:01

GoogleCodeExporter commented 8 years ago
Ahh, that's where it comes from.. thanks. I've been wondering why I could never 
find any references to the names. 
I guess I'll have to change the naming scheme otherwise this will get confusing.

The last 3 fields of the MAC can be set under Device->Lan Settings. The whole 
address can be changed by editing /etc/default/config and running 
"/usr/share/snake/config save".

Original comment by stefansc...@googlemail.com on 31 Mar 2013 at 12:55

GoogleCodeExporter commented 8 years ago
Could I just please check before I "operate" on my unit...

Installation procedure for snake:

install gns66eb-mod.bin
connect via telnet and login as root

That means that the unit obtains IP from DHCP ?

without transmission and mediatomb to get the size below that limit. Otherwise 
there are similar changes as in gnsd630-mod.bin. Telnet is activated and 
there's an installation script for snake.

So there is no uPnP server at all?

Or was it replaced with Snake's own MiniDLNA ?

I found the default mediatomb to be simply unusable with Openelec

Does NFS Server work?

Thanks

Seb

Original comment by scer...@gmail.com on 6 Jul 2013 at 7:45

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
OK, no comments, so I went ahead anyway.
And it did work... kind of...

Unit upgraded, is accessible via webinterface and/or SSH = that is nice

But default Samba is unusable
(should be removed from Snake & replaced with Samba3 which is on downloads page 
anyway!, but this one is not that much better)

But 2 Tb drive (which was working fine with original firmware and is also 
recognized by fdisk) gives on format:

Disabling AUTOMOUNT... done!
Removing old partitions on /dev/sda disk... done!
Creating new partition /dev/sda1... done!
Formatting new /dev/sda1 partition as EXT3... 

Partition creation failed! 
Enabling AUTOMOUNT... done!

And the Size is reported as 1048575 MB

Log gives:

Jul 19 13:27:37 kernel: drivers/usb/serial/ftdi_sio.c: v1.4.3:USB FTDI Serial 
Converters Driver
 Jul 19 13:31:38 kernel: SCSI device sda: 3907029168 512-byte hdwr sectors (2000399 MB)
 Jul 19 13:31:38 kernel: sda: Write Protect is off
 Jul 19 13:31:38 kernel: sda: Mode Sense: 38 00 00 00
 Jul 19 13:31:38 kernel: sda: assuming drive cache: write through
 Jul 19 13:31:38 kernel: sda:
 Jul 19 13:31:39 kernel: SCSI device sda: 3907029168 512-byte hdwr sectors (2000399 MB)
 Jul 19 13:31:39 kernel: sda: Write Protect is off
 Jul 19 13:31:39 kernel: sda: Mode Sense: 38 00 00 00
 Jul 19 13:31:39 kernel: sda: assuming drive cache: write through
 Jul 19 13:31:39 kernel: sda: sda1
 Jul 19 13:31:44 kernel: oom-killer: gfp_mask=0x200d2, order=0
 Jul 19 13:31:44 kernel: Mem-info:
 Jul 19 13:31:44 kernel: DMA per-cpu:
 Jul 19 13:31:44 kernel: cpu 0 hot: high 6, batch 1 used:5
 Jul 19 13:31:44 kernel: cpu 0 cold: high 2, batch 1 used:1
 Jul 19 13:31:44 kernel: DMA32 per-cpu: empty
 Jul 19 13:31:44 kernel: Normal per-cpu: empty
 Jul 19 13:31:44 kernel: HighMem per-cpu: empty
 Jul 19 13:31:44 kernel: Free pages: 748kB (0kB HighMem)
 Jul 19 13:31:44 kernel: Active:6614 inactive:0 dirty:0 writeback:0 unstable:0 free:187 slab:478 mapped:6551 pagetables:60
 Jul 19 13:31:44 kernel: DMA free:748kB min:724kB low:904kB high:1084kB active:26456kB inactive:0kB present:32768kB pages_scanned:2600 all_unreclaimable? no
 Jul 19 13:31:44 kernel: lowmem_reserve[]: 0 0 0 0
 Jul 19 13:31:44 kernel: DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
 Jul 19 13:31:44 kernel: lowmem_reserve[]: 0 0 0 0
 Jul 19 13:31:44 kernel: Normal free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
 Jul 19 13:31:44 kernel: lowmem_reserve[]: 0 0 0 0
 Jul 19 13:31:44 kernel: HighMem free:0kB min:128kB low:128kB high:128kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
 Jul 19 13:31:44 kernel: lowmem_reserve[]: 0 0 0 0
 Jul 19 13:31:44 kernel: DMA: 5*4kB 1*8kB 1*16kB 0*32kB 1*64kB 1*128kB 0*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB = 748kB
 Jul 19 13:31:44 kernel: DMA32: empty
 Jul 19 13:31:44 kernel: Normal: empty
 Jul 19 13:31:44 kernel: HighMem: empty
 Jul 19 13:31:44 kernel: Swap cache: add 0, delete 0, find 0/0, race 0+0
 Jul 19 13:31:44 kernel: Free swap = 0kB
 Jul 19 13:31:44 kernel: Total swap = 0kB
 Jul 19 13:31:44 kernel: Free swap: 0kB
 Jul 19 13:31:44 kernel: 8192 pages of RAM
 Jul 19 13:31:44 kernel: 277 free pages
 Jul 19 13:31:44 kernel: 590 reserved pages
 Jul 19 13:31:44 kernel: 478 slab pages
 Jul 19 13:31:44 kernel: 52 pages shared
 Jul 19 13:31:44 kernel: 0 pages swap cached
 Jul 19 13:31:44 kernel: Out of Memory: Kill process 742 (mke2fs) score 961 and children.
 Jul 19 13:31:44 kernel: Out of memory: Killed process 742 (mke2fs).

 Running mke2fs from SSH gives the same error Killed

 So the only option was to connnect it to a Linux VM to format it

 Once done it works acceptable (swap can be added, Samba share can be added), but performance is just dismal (most likely due to the hardware itself)

 Not even good as an online backup of portble drives (as it takes forever to copy even on wired network, and reading from the units is same painful)

 Was good fun playing with it, but really have no idea how usable it might be for anything beyond playing

Original comment by scer...@gmail.com on 19 Jul 2013 at 10:03

GoogleCodeExporter commented 8 years ago
The problem could be the ram. I had to create a small partition, add the swap 
space there and format the hdd from shell.

Original comment by mkhom...@googlemail.com on 23 Jul 2013 at 9:59

GoogleCodeExporter commented 8 years ago
Well, the problem is definitely RAM.

And I also discovered that on my first attempt I formatted partition as EXT2

That worked, but the unit was painful to use.

Re-format to EXT3 & it is working beautifully. Really pleased with it now

Seb

Original comment by scer...@gmail.com on 4 Aug 2013 at 3:51

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Is it possible to provide mediatomb in form of opkg installable package?

minidlna obviously does not play the ball!

Sadly minidlna crashes this unit to the point of reboot itself (while running 
database rebuild)

Also minidlna gives Segmentation fault on quite few mkv files (that are 
perfectly OK ie with llink uPnP server - 
http://www.lundman.net/wiki/index.php/Llink)

Or maybe somebody would try to compile llink for Snake ?

Or maybe the latest version of minidlna 1.1.0

http://sourceforge.net/projects/minidlna/files/minidlna/1.1.0/

Original comment by scer...@gmail.com on 4 Aug 2013 at 9:18

GoogleCodeExporter commented 8 years ago
Hi all!

I've got one of those Conrad ME-SN-35B. I would like to use it as a backup 
storage - so leave it somewhere and plugged into network and regularly do 
scheduled backups. Most annoying is not it's slow (over the net connection), 
but that it runs all the time. If I change FW to that snake OS - will it power 
down the HDD when idle?

Thanks,
Atanas

Original comment by aatan...@gmail.com on 12 Feb 2014 at 10:08

GoogleCodeExporter commented 8 years ago
Not out of the box but you can install hd-idle.

http://code.google.com/p/snake-os/downloads/detail?name=hd-idle-1.04.opk

Original comment by stefansc...@googlemail.com on 12 Feb 2014 at 2:37