Extending the functionality of LG TVs and the grin of Korean capitalism

A short note about how the firmware for LG TVs was investigated, about what we managed to achieve, what problems we encountered on the way and how things are now. About the reaction to everything that happens at LG, which decided to simply step over the laws.
An excursion into the history of the issue
This story began back in 2009. Then, having faced the problem of choosing an LCD TV, I, as usual, sat down to study the market offers, evaluate existing models from different manufacturers, since Google helped and discussions of the current and new trends were in full swing at many thematic forums.
I would not call myself a technomaniac, but since childhood I was interested in what happens inside all kinds of electronic black boxes. Also, I do not consider myself a red-eyed Linuxoid, but for 10 years I have not been using MS products and can do it quite well. Having already tuned my own asus-wl500gp by that time, I realized that I needed a new victim of experiments.
Actually the ability to twist something inside the new TV and became the first priority for its choice. For this reason, uninteresting phillips, dormouse and toshiba were immediately discarded. In fact, the choice was not great - either samsung with already well-known modifications from the samygo project, or the just-launched new LH series of LCD TVs from LG. In addition, these companies themselves produce lcd-matrix and quite good quality.
Some inquisitive minds already for several months of 2009 revealed a small feature of all models of the LH series - they were all assembled on the same elemental base, i.e. simply were exactly the same, except, of course, the diagonal and type of matrices. They didn’t stop at this and compared the functionality of the models, it turned out that the older ones had the opportunity to play HD videos, music, view pictures from drives connected to the usb port, the functionality gradually decreased in the younger ones. It became clear that this is nothing more than a software limitation, which was successfully removed from the "secret" technological menu without the use of soldering irons or any software patches.

At that time it was great. Having bought a tv of a slightly younger model, I got a ready-made and working hd player absolutely free. The choice has been made!
Research
What was inside the new black box? SoC saturn6, and everything was controlled by software with linux and a proprietary program that provides a user interface and interaction with purely television hardware.
Probably the first people to start the research were the lg-hack.info luca, tester13, keitsi, and a few other people who are now known on the forum . It became clear that the firmware was compiled on the linux kernel distributed under the GPL, which means LG must provide the source code for the system kernel.
What could it give? Many dreamed that this would help solve some of the main problems of the entire lg product line - firstly, these TVs do not play or even pass DTS sound through themselves, and secondly, everyone understood how cool it would be to connect them to the network and watch movies directly from home NASs, there was also the so-called “red line” problem, which, unfortunately, has not been resolved so far. In short - then LG, in addition to limiting functionality, added a feature to the youngest models - artifacts were added to the image in the form of spurious colored lines of different colors, especially noticeable next to the red thin lines, but in general the picture was smeared.
A request from LG followed. The correspondence gave its first result - the first free openlgtv firmware was created by the Finnish programmer Mikko Karkalo.

It allowed you to connect tv to the network using a usb-ethernet adapter, supported file systems, upnp, ssh, mounted partitions on nfs and cifs. A little later, the convenient LGMOD web interface was written, later modified by the French arno1.

Unfortunately, the main program, which is called “release”, is completely closed, namely it is responsible for displaying the image on the screen, working with the remote control, and the built-in player. Thus, having solved some of the problems, some remained unresolved.
At this time, a programmer with the nickname jenyavv from Ukraine connected to the question. A way was found to change some parameters of the proprietary release program. By modifying the values in some memory cells, TV owners from Russia and Ukraine now have the opportunity to watch digital TV without changing their country (and interface language) abroad. It became possible to disable the preview in the built-in player, which greatly slowed down the work. On some models the opportunity to activate the player.
In addition, he shook LG firmware for many models. LG itself, probably under the pressure of requests, made a site where it began to publish the source code for the core of most of its TVs.
Work has begun on analyzing the functioning of release. It turned out that it was compiled statically with the uclibc library, released under the lgpl license, which is a limited alternative to glibc optimized for embedded systems. What could it give? LG was obliged to provide object files for the release build with any other version of uclibc, however, it not only did not do this, but also did not advertise the fact of using lgpl libraries with its program, well, actually it was not obliged.
However, there was a new opportunity to expand the functionality of older models by combining object files from older and newer models, where for example it was possible to adjust image parameters when playing video with the built-in player.
Here LG really wondered what it could lead to and instantly began to collect all new versions of release dynamically. Among other things, refusing to give out object files for older versions of, simply stepping over the law and complying with licenses. At the same time, one by one, websites began to close where there was some information with an analysis of the TV's internal device: the wiki on sourceforge.net , the website from the wiki lgusb.wikispaces.com , and the developer's website lgmod - lgmod.free.fr were closed . Part of the wiki has been restored to Russian hosting and is now available at openlgtv.org.ru. But now from Washington, from one well-known in narrow circles of the law firm, letters are coming in demanding to close the resource. Over the weekend, there was a dos attack on the host server, on which the wiki also lies.
The lg position is 180 degrees different from samsung, which at least does not harm researchers from samygo. For some reason, lg believes that she can violate the law and at the same time make claims to legitimate resources. It’s just not even double, but triple standards, the height of arrogance and parasitism at the work of dozens and hundreds of people, in fact, for most of the free software developed for TV. A discussion was open on this issue at gpl-violations.org .
In 2010, LG released a series of PK / PJ televisions in which the situation repeats itself. At the moment, LE / LX models are actively being researched on the forums, and for the entire LD line the possibility of connecting network resources has recently appeared.
More details can be found on the forum and wiki, links to which are given below.
Summary
Confronting closed technologies can be difficult at times, but it's worth it. The struggle for an open information society needs to be fought on all fronts. And anyone who can change the world for the better, restore justice should not give up and give up. It is clear that there are many other problems, especially in Russia, but nonetheless ...
List of sources
- http://openlgtv.org.ru/forum/ - forum in English
- http://openlgtv.org.ru - wiki in English
- http://forum.ixbt.com/topic.cgi?id=62:18218 - forum in Russian on tv lg
- http://forum.ixbt.com/topic.cgi?id=62:18616 - forum in Russian by lgmod
- http://forum.ixbt.com/topic.cgi?id=62:17304 - forum in Russian on TV lg PK / PJ
- http://mikko.korkalo.fi/openlgtv/ - open source firmware for saturn6 (xxxLH)
- http://www.linux.org.ru/news/opensource/4668664
UPD1: 2011-04-11: OpenLGTV BCM 0.3.0-alpha4 has appeared. Support for Yahoo Widgets from North American LG TV models and Samsung TV is included. You can activate all possible Netcast services. The plans are to edit the list directly from the TV menu (via the built-in browser). Details on the forum .
UPD1: 2011-04-13: Today, a friend under the nickname rtokarev revealed to the community the development of OPENRELEASE. This is not a new release, but release "wrapped". At the moment, you can reassign the buttons on the remote control, turn on / off the preview in the player, write logs. We are waiting for the development of events ... Details on the forum .