SamyGO

SamyGO is a community of developers and end-users that started in the summer of 2009 and has grown to be a major source of modified firmware and software for newer Samsung televisions that have internet features, so called convergence devices. These devices are usually higher end television models that are capable of receiving information from the internet and displaying to the audience while watching conventional television programming.
SamyGo started as an attempt to customize the RSS feeds included in the Samsung infolink service at a thread at avsforum. This thread drew a lot of attention and users from this forum decided to start a sourceforge project, specific for the enhancement of the firmware of Samsung television sets, SamyGO. The modifications allow for improvements in the functionality of built-in features but also the addition of new features not previously available.
The SamyGO community started by creating hacks for the Samsung B series televisions initially, followed by support for A and C series televisions under the license. A list of compatible 2008 and 2009 television models is maintained at SamyGO sourceforge wiki website. There is also a separate Compatibility Table for C-Series 2010 television models. They also maintain a facebook page where updates to the projects are posted.
On April 1, 2012, The domain names associated with the website SamyGO.tv have been seized pursuant to an order issued by Samsung.
Type of Hacks
The latest generation televisions are nothing more than an electronic device with an embedded operating system, usually based on Linux.
There are three types of hacks that have been developed for enhancing the functionality of the embedded software in Samsung televisions:
* Standalone Applications or SamyGO apps
* Modified television firmwares
* SamyGO Extension Pack running on top of original firmware
SamyGO apps are executable files that do not cause any permanent modifications to the television but rather have to be started manually each time the television is turned on. Once the television is power cycled, these apps are disabled.
Modified television firmwares however are permanent and require that the embedded linux OS is rooted, that superuser access is obtained in order to apply these permanent firmware modifications. This allows the user to highly customize the functionality of their television but carries significant risk for beginners because their television can get bricked. With the beginning of 2010 Samsungs started to use encrypted firmware on B-Series CI+ models and C-Series models.
SamyGO Extension Pack contains precompiled kernel modules and executables to extend the embedded linux. You can call SamyGO Extension Pack a SamyGO app, but in reality it is a full linux distribution running on top of the original firmware. Running SamyGO Extension require that the embedded linux OS is rooted and the files are copied to built in flash memory or stored on an attached USB stick, depending on television model. Using SamyGO Extension Pack is the preferred method to start with for beginners, because there is only a low risk to brick their television.
There is also a C-Series focused wiki article about hack types on the SamyGO Wiki for C-Series.
SamyGO apps
Current apps that have been developed by the SamyGO community can be divided in two groups according to the television series that support them.
* Apps for Series B
* Apps for Series C
Some examples of new TV functionality added by SamyGO Apps are listed below.
1. Atari800 emulator
A fully functional emulator ported from . This requires a keyboard connected to your TV but can also use your remote control for some games
2. Aspect Ratio
Allows image of certain movies that are played back using Samsung media player to be displayed in full screen stretch.
3. Audio Stream Switcher
Allows you to switch between audiotracks in files that contain multiple audio tracks e.g. mkv file, avi file etc.
4. Bigger Yellow Font
Increases the default size of the fonts used in subtitled movies (srt files) and can change their color e.g. to yellow which makes them easily read.
5. CD_DVD USB Devices
Adds support for external CD/DVD drives connected to TV via a USB cable. However it will not play DVDs or Blu-ray, only files encoded in a supported video format.
6. Channel Info
After changing TV channel it shows extended information from the EPG guide of the television about the current program for digital TV channels
7. DCA module
Allows the playback of movies with a DTS soundtrack using the built-in Samsung Media Player.
8. Ext3
Allows mounting of Ext3 formatted disks.
9. Force firmware back
Small application that allows B series televisions to revert to earlier Samsung firmware that did not restrict the use of external applications such as SamyGO.
10. FTP Server
Allows a user to connect to their TV via FTP. Log in with user name root without typing a password.
11. MLDonkey
An opensource eDonkey client for your Samsung television.

12. Mouse and Keyboard
Tool that enables USB mouse and keyboard support for custom applications from the television content library that support it.
13 myButtons
Application that creates menus to start scripts or plug-ins without using Telnet console.
14 NetSurf Browser
A web browser designed to be operated by remote control or using a traditional keyboard and mouse plugged into your television USB port.
15. PVR+
Provides an application that allows you to record television programming that you are watching to an attached USB storage device.
16. Remote LAN Control
Allows your television to receive remote control commands via telnet or an Android phone application.
17. SamyGO Extensions
A collection of scripts that allow mounting of NFS, CIFS/SAMBA volumes to your television for purposes of playback of media: pictures, music and supported video files. Other functions include UPnP client, Apache server, telnet access and others.
18. ScreenCap
Allows you to capture screen contents on your television with use of your remote control to a specified location on your television.
19. Screen Resizer
Application that allows resizing and adjusting the picture sizes and proportions in Samsung B series televisions.
20. Telnet Enabler
Enables Telnet access to your television.
21. Thumbnails
Generates movie thumbnails for built-in TV Media Player from movie covers in disk, IMDB and/or Google.
22. Wake On Lan
Will send a Wake-on-LAN command to a computer on your network, e.g. a NAS device to allows access to digital files for media playback.
23. Channel Editor
A computer desktop application that can edit your channel list on your Samsung TV.
Modification of Firmware
Samsung television firmware is based on some open-source software. The GNU license of this software requires that the developer makes his modification public which is available at the Samsung open source release center.
Access to this software has enabled developers to study and make alterations and enhancements to the original firmware. This process requires advanced computer programming skills. The SamyGO community has simplified the process for end users by developing automated scripts and applications that require minimal input from the user. One such script,the SamyGO firmware patcher script requires python for the execution of its function and automates certain changes to the firmware such as the Video aspect resolution fix, enables Telnet, allows you to change the subtitle font size and color used by your television. This modified firmware can then be flashed to the television using the televisions own firmware upgrade process and will incorporate the altered functions.
Restricted Firmware
Samsung encrypts some of its firmware to prevent modifications. Televisions with simple XOR encryption are said to have a CI firmware. Some television models contain both XOR and AES encryption (CI+ firmware) and flashing modified firmware on these models is not yet possible. After February 2010, firmware updates to previously unrestricted firmware were released for most Samsung models that restricted the access to the Samsung television software. This made modifications more difficult and riskier because recovery of the television was nearly impossible in event it got bricked. According to the [http://wiki.samygo.tv/index.php5/SamyGO_for_DUMMIES#What_is_Restricted_Firmwares.3F SamyGO community], such restrictions include:
1)Removal of exlink (service cable) access that provided serial connection to TV's bash line
2)Removal of Top debug menu that allows configuration of every TV property
3)Removal of u-boot code for that we use to run External firmwares and un-bricking TV
4)Removal of program copy and execution ability from USB disks allowing only internet delivery of firmware updates
5)Removal of Alternative firmware section to avoid reverting to older firmwares
Samsung has not made any formal announcements in reference to these changes or about the SamyGO community in general. In response, the SamyGO community has found some workarounds to revert back to the older firmware that permitted software firmware enhancements for some television models and has been discovering vulnerabilities to allow modifications of newer model televisions (series C) despite the heavily encrypted firmware.
Legal Issues
The legality of modifying television firmware has not been explored legally in the United States. However privilege escalation, for other electronics with embedded operating systems such as cellphones (e.g. jailbreaking the iPhone) in order to gain root access to the operating system has been declared legal. The SamyGO community provides a guide on how to hack your television to add additional functionality. It is legal to modify the software in your television; furthermore, according to SamyGO community, it will not void your warranty. The SamyGO community simply provides the tools and technical knowledge to perform your own modifications. It is up to the end user to decide how to implement that knowledge.
 
< Prev   Next >