Languages

Menu
Sites
Language
Tizen studio cannot run application on smart tv

I am trying to launch a sample application to my smart tv UE49KU6400 through Tizen studio.

My TV is configured in developer mode with my PC IP.

I have added also the TV in my connection manager in Tizen studio.

I have generated also a certificate profile via the studio.

I am using Tizen Studio 2.0 and have created a TV v4.0 project and firmware on TV is 1201 version ( the latest for this model according to latest updates).

When I am trying to lauch application on smart TV I get an error 'Closed'.

Console logs show :

11:06:30 E/sdb: sdb rejected shell command (pkgcmd -l | grep owStEM7jOZ --word-regexp): closed

Can anyone help?

 

 

Edited by: orestis panos on 21 Nov, 2017

Responses

14 Replies
Armaan-Ul- Islam

Seems UE49KU6400 is a 2016 model UHD TV? Isn't It? 

 

As far as I'm concerned, There's a Note on Samsung Developers: Samrt TV section.

Tizen Studio 2.x supports TV Extension 4.x or higher.

Link: http://developer.samsung.com/tv/develop/tools/tizen-studio

 

 

Now, The point is do your "UE49KU6400" tv run on Tizen 4.0 TV Extension? I guess not, Rather It may run on Tizen TV extension 3.0.

To develop and deploy Tizen 2.X and 3.X TV applications you have to use the IDEs on Samsung developers Archive:

 

http://developer.samsung.com/tv/develop/tools/tv-extension/archive

John Ixion
Bartłomiej Biernacki

I have exactly same problem for UE55MU6102 which is 2017 model. Is Tizen Studio supporting only future 2018 models? ....

Armaan-Ul- Islam

Not Exactly Tizen Studio, Rather you can say 'Tizen Studio 2.0 & higher is supporting only future 2018 TV models'. As far as I'm concerned, You can develop using Tizen Studio IDE and TV Extension packages on Samsung archive.

IDE archive: http://download.tizen.org/sdk/Installer/

TV Extension archive: http://developer.samsung.com/tv/develop/tools/tv-extension/archive

YANG UNBONG

Tizen SDK 4.0 supports the previous TV model(2017).
You can run the application that you made here in the previous TV model(2017...).

Andrew Witte

I don't think this is true. I cannot upload to my 2017 Samsung TV with Tizen Studio 2.1 (ONLY 1.3 works)

Can you explain how to upload to your Tizen 3.x TV? You can't even target old TVs with Tizen Studio 2.x ??

 

Duplicate post here: https://developer.tizen.org/forums/sdk-ide/tv-extension-tizen-sdk-version-2.3.1#comment-26826

Jacek Smith

Can we go back to the issue brought by Orestis.  I think that we are conflating two different issues (studio not able to talk to device and supported devices by studio).

I have the same problem as Orestis, and it boils down to sdb having problems talking to the device.  Every 'sdb shell XYZ' command fails with 'closed'

However, when I used ...\studio\tools\ide\bin\tizen script file, I was able to push a demo app to the TV, and that HelloWorld program was working fine.  I also have 2017 TV, and 2.1 studio (so potentially TV-3.0 vs. TV 4.0 problem), but it was OK.

To summarize, using command line:

  1. sdb refuses to push the wgt
  2. tizen.bat successfully pushes the wgt

​So, do we need to modify some configuration for sdb to start working, or rather sdb that comes with studio 2.1 is bad.  I would assume that tizen.bat is also using sdb to push that file, so it may be just a configuration issue.

Andrew Witte

So you were able to push a Tizen Studio 2.1 build for TVs on your 2017 TV with tizen.bat? I might have a look at that file. Although can't really debug like this. I got Tizen Studio 1.3 to work here if you need that: https://developer.tizen.org/forums/general-support/tizen-studio-2.0-connection-explorer-permit-install

Jacek Smith

Yes, I got that Hello app pushed, and running on a TV with tizen.bat  I was hoping that tizen.bat is somehow using sdb.exe to do the push, and got stuck reading plenty of junk output.  I didn't find any references to sdb, so those two may not have anything in common (although, I could miss that sdb trace in that output).  However, if Samsung knows what they are doing, if tizen.bat can push the file, it means that cert is installed (really, cannot say that I trust Device Manager, seeing it working).  So, if cert is installed, then sdb in theory should work.  Of course, few options are there, like sdb in Studio 2.1 is really broken, sdb cannot find some config files, ...  What could be interesting to see is whether an older sdb (e.g., from Studio 1.3) could be used to replace the one from S2.1.  Or to check whether S1.3 is setting any environ variables for things like sdb.

My next step was to see how can I see the logs after that tizen.bat push, but I saw Pamela's comment, and wiped out Studio 2.1  With your comments, I am kind of stuck right now which way to go :)

Actually, what got me really triggered to remove S2.1 was some Samsung note in S2.1 relase documents (cannot find it anymore) that installing certs on target devices is broken in S2.1, and will be fixed in the future releases (sounds like April 1st joke).  That put the final nail for me in S2.1

 

Jacek Smith

I did install S2.1 again with just TV-4.0 SDK.  Again, created a BasicUI app, built it, and built a signed package.  After that, once again used tizen.bat to install it.  As long as config.xml has 'Required Version' set to 3.0 (like my 2017 TV), tizen.bat installs the package.  Once the package was installed, I can also run "tizen run -p 123.BasicUI -t UN40MU6290", and tizen.bat is happy reporting that app was launched (yes, it is running on my TV).  Although, I don't see any logs.  I added "console.log" to main.js, but am not sure whether it is possible to see that ouput somewhere.

So, this exercise tells that either cert is installed properly, and all should work, or Samsung has security issues with tizen.bat installing apps without properly installed cert.  We can for time being assume that the first case is true.  In such a case, sdb should also be able to depend on that cert being installed, but it isn't.  One thing I noticed, that in Device Manager, I don't see file structure on my TV (as on many screenshots provided by Samsung), and also when I select 'Open shell' menu item, the cmd line window briefly opens and immediately closes (assuming sdb connection to the TV was killed).  Also, we can assume that building an app with 4.0 SDK, we should be able to target 3.0 devices (although, potentially some features would not work).

So, my first question here is whether there is any way to see TV logs while working only with tizen.bat (CLI tools).  What is kind of painful is that Samsung put a page https://developer.tizen.org/development/tizen-studio/web-tools/cli​ that nicely describes what can be done with tizen.bat, but there is no mention there about how to debug an app with CLI tools.  Comments, anyone?

It would be also nice, if tizen.bat had 'kill' and 'status' options (we are debugging over the network, so it would be much easier to use CLI tools than a remote for that particular TV). 

Of course, seeing "app_id[123.BasicUI] install failed[118]" means really nothing to me, and I don't have Samsung person sitting next to me to translate that nonsense.  Although, maybe there is a document somewhere that has those error codes (tried to google it, found zilch).

Jacek Smith

Actually, I can use sdb.exe to install the app (e.g., "sdb install BasicUI.wgt").  Although, no shell related commands are working (what S2.1 depends on).

Jacek Smith

Just to summarize the above.  Since sdb can push the app to TV, at least the basic communication is working.  However, since it cannot do any shell commands, we have two options: 1. sdb is broken (so potentially swapping sdb for the one from S1.3 may fix this problem - although the old sdb may have problems with talking to non-existent v4.0 TV devices), or 2. sdb cannot find proper certs to negotiate shell commands with the target.

Assuming that the latter is the case, either sdb cannot find the cert on the host (e.g., due to lack of any environmental vars pointing to certs), or some certs were not xfrd to the host by Device Manager ("Permit to install applications" option).  Doing a quick check on Release History for TV Extension v4.0, there is a statement there under "Known Issues" - "Certificates cannot be transferred to devices. This is expected to be fixed in the next release."  So, maybe that statement reinvorces the cert problem assumption.

I will try to follow Igor's latest blog with installing TVE1.3.2.  Although, looks like he is using a Mac, not a Win box.

Jacek Smith

After installing TVE3.1.2, and generating a new 'Custom' TV3.0 project, S2.1 was happy pushing it to the TV!  Encouraged with that, I built a new Custom TV4.0 project, and S2.1 was also happy to run this one!!  So, I tried to generate a basic TV/TV v4.0 project, and that sucker didn't run at all (same problem as before).

To continue on the previous thoughts:

  • S2.1 with TVE3.1.2 can successfully generate Custom tv3.0 and tv4.0 (more testing needed) projects and run those on a TV3.0 (in my case 2017TV)
  • S2.1 with TVE3.1.2 cannot successfully generate TV tv4.0 project (or at least not the couple of ones that I tried) - this was the broken part with just clean S2.1 install
  • sdb.exe was not changed after TVE3.1.2 installation, so the original sdb was never broken
  • I didn't have to generate new certificates, so whatever S2.1 did during the initial clean install, didn't require any new work
  • sdb shell XYZ still doesn't work, and S2.1 logs those errors in the sdblib-...log file
  • both 3.0 and 4.0 built apps (really basic apps) can run on 3.0 TV

Big​ thanks to Igor! as I just followed in his footsteps.  It may be that thanks to his work, we can use S2.1 after all.

It is sad that Samsung decided to kill their own QA depth, and is using us (external developers) to do the basic QA work.

Maciej Zych

The only working solution for me to istall apps on 2015, 2016, 2017 Tizen models was:

1. Use Tizen Sudio 1.3

2. Downgrade Tv Extensions to 3.0

Great description of the procedure can be found by googling:

"how-to-get-back-tizen-studio-1.3-and-tv-extensions-3.0"