T-VALDEUC 3011.0

Here is information about customize your C series firmware..:!:This forum is NOT FOR DUMMY USERS questions or problems but DEVELOPER.

plasticassius
Posts: 61
Joined: Fri Dec 17, 2010 12:37 am

Re: T-VALDEUC 3011.0

Post by plasticassius »

I've been using 3005.1 for ever it seems, and I thought I would try upgrading since I have some time now to deal with it. I got the TV with 1005.0 and upgraded to 3005.1 so that I could root it with the widget hack. That worked very well, although I have problems with the firmware freezing while playing damaged ts video. The same ts files play fine with VLC, etc. So, I'm hoping the playback behavior is better in 3011.0. That's my motivation for upgrading.

After upgrading to 3011.0, I was pleased that all of my channels and setting stayed, and PVR still worked. However, SamyGO would not boot and ruSamsungTVCommunicator wouldn't connect. Since that was unacceptable, I downgraded to 3005.1. I'm pleased to report that the 0000 firmware worked easily. Otherwise I would have been out of luck since the TV was no longer rooted. One annoying thing is that the 0000 firmware wipes out all settings, but at least the TV works! Once I downgraded to 3005.1, everything worked again except for ssh and ruSamsungTVCommunicator. My cifs mounts were fine, and ftp to the TV was fine too.

Since I could change firmware easily now, I tried 3009.2 and 3011.0. On both of those the mount script on the USB does not run. When I downgrade to 3005.1, it does run. I tried a simple script with just an echo command so I know it's nothing in the script that blocks it. I like using ext3 on my USBs so I can have symbolic links, but I confirmed that the behavior is the same with fat. Also, it behaves the same with hotplug and coldplug. So, without re-rooting, runs the mount script, while 3009.2 and 3011.0 do not.

I think that my next step will be to reformat the rw area in the TV, and try the hotel mode hack on 3011.0. But I thought I would write this to see if anyone has thoughts about this.

Here is my /mtd_rwarea/usb_mount/usb_hotplug.sh file

Code: Select all

#!/bin/sh
##########################################################################
# HOTPLUG Script
# Only USB automount implement
# Auto Mount Program must be existing in both places which are BOOT partition and RFS
# Version 2.4 (2009-11-01) : suport umount, XFS mount flag modified
# Version 2.4.2 (2009-11-13) : Umont not support for internal HDD
# Version 2.4.4 (2009-11-26) : xfs repaire support when xfs mount failed
# Version 2.4.6 (2009-12-04) : unknown device support(for USB2.0 certification)
# Version 2.4.8 (2009-12-16) : exception handling add when detect invalid block or partitions in kernel 
# Version 2.5 (2009-12-22) : exception handling for mount error when device resource busy case
# Version 2.5.2 (2009-12-24) : default device name & vendor added
# Version 2.5.4 (2009-12-31) : device connection check at log creating time
###########################################################################
# Setting
# mounted directory : $MOUNTDIR/$PREFIX1 ~ $PREFIX$MAXNUM (ex /usb/usb1 ~ /usb/usb10)
ENABLE=1
DEBUG_MESSAGE=0
MOUNTBASEDIR=/dtv/usb
ACL_PROGRAMDIR=/mtd_rwarea/usb_mount
RFS_PROGRAMDIR=/sbin/usb_mount
MOUNTPROGRAM=usb_mount
CMDPROGRAM=usb_cmd
MOIPCMDPROGRAM=usb_moip_cmd
UNKNOWNDEVPROGRAM=unknownDev_cmd
LOCKFILE=$MOUNTBASEDIR/lock
DEBUG_MESSAGE_FILE=/dtv/usb_message
DEBUG_MODE_FILE=/dtv/debug_on

CHANGE_IOMODE=0
IOSCHEDULE_MODE=anticipatory
SCSIPATH=/sys/block
IO_MODE_FILE=/dtv/anticipatory_on

# Input argument
ACTION=$1
DEVPATH=$2
PRODUCT=$3
INTERFACE=$4
TYPE=$5

# Program Directory setting
if [ -f $ACL_PROGRAMDIR/$MOUNTPROGRAM ]; then
        PROGRAMDIR=$ACL_PROGRAMDIR
else
        PROGRAMDIR=$RFS_PROGRAMDIR
fi
# Debug Mode setting
if [ -f $DEBUG_MODE_FILE ]; then
        DEBUG_MESSAGE=1
fi
# Mode setting for IO Scheduler with usb storage 
if [ -f $IO_MODE_FILE ]; then
        CHANGE_IOMODE=1
fi

if [ "$ENABLE" -eq 1 ]
then
# RUN
	CLASS=`echo $DEVPATH | sed 's/^\///g' | sed 's/\/.*//g'`

	if [ "$CLASS" = "block" ]
	then
		DEVICE=`echo $DEVPATH | sed 's/^\/[^\/]*\///g' | sed 's/\/.*//g'`
		PARTITION=`echo $DEVPATH | sed 's/^\/[^\/]*\///g' | sed 's/^[^\/]*\///g'`



if [ -e $MOUNTBASEDIR/$PARTITION/mount.sh ]; then
	chmod 777 $MOUNTBASEDIR/$PARTITION/mount.sh
	sh +x $MOUNTBASEDIR/$PARTITION/mount.sh $MOUNTBASEDIR/$PARTITION
fi



		$PROGRAMDIR/$CMDPROGRAM $ACTION $DEVICE $PARTITION

		if [ $DEBUG_MESSAGE -eq 1 ]; then
			echo ">> MSC Hotplug Message : \"$ACTION\" \"$DEVPATH\" \"$PRODUCT\" \"$INTERFACE\" \"$TYPE\"" >> $DEBUG_MESSAGE_FILE
			echo ">> MSC Hotplug Message : $PROGRAMDIR/$CMDPROGRAM $ACTION $DEVICE $PARTITION" >> $DEBUG_MESSAGE_FILE
		fi				

		if [ ! -f $LOCKFILE ]; then
			mkdir -p $MOUNTBASEDIR
			touch $LOCKFILE
			$PROGRAMDIR/$MOUNTPROGRAM
		fi
		
		if [ $CHANGE_IOMODE -eq 1 ]; then
			echo $IOSCHEDULE_MODE > $SCSIPATH/$DEVICE/queue/scheduler
			if [ $DEBUG_MESSAGE -eq 1 ]; then
				echo ">> MSC Hotplug Message : set $IOSCHEDULE_MODE mode with $DEVICE" >> $DEBUG_MESSAGE_FILE
			fi
		fi
		
	else
		if [ $DEBUG_MESSAGE -eq 1 ]; then
			echo ">> Hotplug Message : \"$ACTION\" \"$DEVPATH\" \"$PRODUCT\" \"$INTERFACE\" \"$TYPE\"" >> $DEBUG_MESSAGE_FILE
		fi
		
		if [ "$ACTION" = "moip_add" ]; then
			if [ $DEBUG_MESSAGE -eq 1 ]; then
				echo ">> Hotplug Message : $PROGRAMDIR/$MOIPCMDPROGRAM $ACTION $DEVPATH" >> $DEBUG_MESSAGE_FILE
			fi
			PARTITION=$PRODUCT
			mkdir -p $MOUNTBASEDIR
			$PROGRAMDIR/$MOIPCMDPROGRAM $ACTION $DEVPATH $PARTITION
		elif [ "$ACTION" = "moip_remove" ]; then
			if [ $DEBUG_MESSAGE -eq 1 ]; then
				echo ">>Hotplug Message : $PROGRAMDIR/$MOIPCMDPROGRAM $ACTION $DEVICE" >> $DEBUG_MESSAGE_FILE
			fi
			mkdir -p $MOUNTBASEDIR
			$PROGRAMDIR/$MOIPCMDPROGRAM $ACTION $DEVPATH
		elif [ "$ACTION" = "unknown_dev_add" ]; then
			if [ $DEBUG_MESSAGE -eq 1 ]; then
				echo ">> Hotplug Message : $PROGRAMDIR/$UNKNOWNDEVPROGRAM $ACTION $DEVPATH" >> $DEBUG_MESSAGE_FILE
			fi
			PARTITION=$PRODUCT
			mkdir -p $MOUNTBASEDIR
			$PROGRAMDIR/$UNKNOWNDEVPROGRAM $ACTION $DEVPATH $PARTITION
		elif [ "$ACTION" = "unknown_dev_remove" ]; then
			if [ $DEBUG_MESSAGE -eq 1 ]; then
				echo ">> Hotplug Message : $PROGRAMDIR/$UNKNOWNDEVPROGRAM $ACTION $DEVPATH" >> $DEBUG_MESSAGE_FILE
			fi
			mkdir -p $MOUNTBASEDIR
			$PROGRAMDIR/$UNKNOWNDEVPROGRAM $ACTION $DEVPATH
		fi

	fi
fi
update:
I figured out the problem with ssh was due to my own mixup with ip addresses and passwords. The problem with why ruSamsungTVCommunicator stopped working I didn't figure out, but I upgraded from v 4.13 to 4.18 and it's working now. I plan to try changing firmware again before messing with hotel hack.
update:
I tried the update again, and it looks to me like the script /mtd_rwarea/usb_mount/usb_hotplug.sh really does not execute in 3011.0. I put some echo s in it, and they don't show. However, when I return to 3005.1, the script is still there, and works fine. It looks to me that the widget hack does not survive an upgrade to 3011.0.
update:
I realized that I could use ftp and ssh to put files into /mtd_rwarea/usb_mount without going through all of the complexities of the Hotel mode hack. So since I already had rooted 3005.1 via Widget hack, I created the following files.

/mtd_rwarea/usb_mount/usb_cmd:

Code: Select all

#!/bin/sh
if [ "$1" = "mount" ] ; then
	if [ -f /dtv/usb/$3/mount.sh ] ; then
		sh +x /dtv/usb/$3/mount.sh
	fi
fi
/sbin/usb_mount/usb_cmd $1 $2 $3 $4 $5 $6 $7
/mtd_rwarea/usb_mount/usb_mount:

Code: Select all

#!/bin/sh
/sbin/usb_mount/usb_mount $1 $2 $3 $4 $5 $6 $7
Now the directory /mtd_rwarea/usb_mount contains:

Code: Select all

-rwxr-xr-x    1 root     0             328 Jan  1  1980 usb_cmd
-rwxr-xr-x    1 root     0            4331 Jan  1  1980 usb_hotplug.sh
-rwxr-xr-x    1 root     0             120 Jan  1  1980 usb_mount
I left the file /mtd_rwarea/usb_mount/usb_hotplug.sh alone but it can be deleted. In 3011.0 it doesn't execute at all.

Now, I modified the USB to contain mount.sh:

Code: Select all

#!/bin/sh
BASEDIR="${0%/*}"
$BASEDIR/.SamyGO/rcSGO $BASEDIR/.SamyGO >/dev/null 2>&1 &
I put the dot in the SamyGO directory name so the directory doesn't show up on the TV when I browse video files on that device.

What's particularly interesting about this method, is that it can be used to root any firmware version without using the Import/Export channel list portion of the Hotel mode hack. For example, to hack 3011.0, use the 0000 firmware to downgrade to 3005.1, root via Widget hack, copy the files I described above, and then upgrade back to 3011.0.
plasticassius
Posts: 61
Joined: Fri Dec 17, 2010 12:37 am

Re: T-VALDEUC 3011.0

Post by plasticassius »

robert wrote:If anyone upgrades to 3011.0 who skipped 3010.1, could you check whether your TV's Ethernet MAC address is different after this upgrade?
My MAC address did change, however I think it happened nearly a week after my upgrade to 3011.0. Although, it may have happened earlier and I didn't notice it till my DHCP lease expired. Also, I never used 3010.1, but I did change among a bunch of versions as I mentioned in my previous post.
plasticassius
Posts: 61
Joined: Fri Dec 17, 2010 12:37 am

Re: T-VALDEUC 3011.0

Post by plasticassius »

Well, I ran across another damaged ts file, and 3011.0 freezes on it just like 3005.1 does. I guess I should have stayed with 3005.1, and saved myself a big hassle.
User avatar
juusso
SamyGO Moderator
Posts: 10129
Joined: Sun Mar 07, 2010 6:20 pm

Re: T-VALDEUC 3011.0

Post by juusso »

Use rusamsungtvcommunicator to activate hidden menus...
LE40B653T5W,UE40D6750,UE65Q8C
Have questions? Read SamyGO Wiki, Search on forum first!
FFB (v0.8), FFB for CI+ . Get root on: C series, D series, E series, F series, H series. rooting K series, exeDSP/exeTV patches[C/D/E/F/H]

DO NOT EVER INSTALL FIRMWARE UPGRADE
SERGIUTANDARICA

Re: T-VALDEUC 3011.0

Post by SERGIUTANDARICA »

juuso wrote:Use rusamsungtvcommunicator to activate hidden menus...
Please, tell me, how to use rusamsungtvcommunicator to activate hidden menus?
User avatar
juusso
SamyGO Moderator
Posts: 10129
Joined: Sun Mar 07, 2010 6:20 pm

Re: T-VALDEUC 3011.0

Post by juusso »

Do you guys use search on forum?
viewtopic.php?f=13&t=3785&p=29149#p29149
LE40B653T5W,UE40D6750,UE65Q8C
Have questions? Read SamyGO Wiki, Search on forum first!
FFB (v0.8), FFB for CI+ . Get root on: C series, D series, E series, F series, H series. rooting K series, exeDSP/exeTV patches[C/D/E/F/H]

DO NOT EVER INSTALL FIRMWARE UPGRADE
User avatar
nobody
Posts: 182
Joined: Sat Nov 12, 2011 1:45 am

Re: T-VALDEUC 3011.0

Post by nobody »

And about changing the mac address... see here: viewtopic.php?f=10&t=2279&p=31011#p31011
huffyk
Posts: 25
Joined: Tue Jun 22, 2010 1:44 pm

Re: T-VALDEUC 3011.0

Post by huffyk »

plasticassius wrote:Now the directory /mtd_rwarea/usb_mount contains:

Code: Select all

-rwxr-xr-x    1 root     0             328 Jan  1  1980 usb_cmd
-rwxr-xr-x    1 root     0            4331 Jan  1  1980 usb_hotplug.sh
-rwxr-xr-x    1 root     0             120 Jan  1  1980 usb_mount
I left the file /mtd_rwarea/usb_mount/usb_hotplug.sh alone but it can be deleted. In 3011.0 it doesn't execute at all.
Hi

I'm also the one who was on 3005.1 very long time. I was avoiding upgrade because of not functional easy and safe widget hack. Well that's true - widget hack cannot work on latest firmware versions, but what plasticassius wrote is true. I created usb_cmd and usb_mount files. Removed usb_hotplug.sh.

First I have brick my TV :D . I did stupid mistake. I was uploading files from windows system and didn't upload these 2 in asc mode. Auto detection failed of course, because there is no "sh" extension. So I had to update widget hack code to delete also these new 2 files. Afterwards TV's USB was working again. Then I did correct upload, manually tried to execute those files to be sure and removed usb_hotplug.sh. After TV restart everything worked! So I did upgrade to latest firmware for my UE55C6500 and hack is working :). Hopefully Samsung will not "fix" also this ;) .

Post Reply

Return to “[C] Firmware”