Sunday, November 18, 2018

The 49" TouchScreen TV

In the end of my previous build, I became aware of a IR based Touch Sensors. I wanted to get one of those to play with but never had the time. Last year when I bought a new TV, I specifically had the touch sensor in mind. 

These touch sensors are really LEDs and IR sensors in 2 pairs of strips. They are typically used in malls for interactive guides, etc. It even comes standard with USB interface. With the trade wall with China, I don't want to wait any longer. I ordered the sensor strips during the 11/11 Single's Day sale from AliExpress. The one I bought is branded "Xintai". If you search for "Xintai touch", you can find the company along with instruction to assemble the sensor. It costs me $122 shipped after discount. I was surprised it arrived my home within a week!

The strips are shipped in a PVC Tube and well packed so they don't shake around. The sensor strips is like LEDs strips, there are 3 corners (labeled A, B and D) that needs to be connected using ribbon cables, 1 corner (C) does not need to be connected because they are end points of 2 strips. I unpacked it and tried it out using a Windows 10 laptop. It worked instantly!


The touch sensor can be purchased with a glass screen but I figured it must be extremely expensive to ship a glass screen across the Pacific. And I am sure the glass will affect the image quality as well. My solution? Cheap TV! After confirming that the sensor works, I proceed to screw the sensor bars together to form a rectangle and attach it on to my 49" TCL 49S405 TV, which costed me about $300. 

The result is extremely well. The TV's bezel is almost identical to the touch sensor. I cut up 4 pieces of hook-and loop-stickers and attached them between touch frame and my TV. Besides those A/B/C/D stickers and the wire, I bet most people can't tell the touch frame is even there! I previously had concern that the frame may block the TV's IR sensor. Turns out it is not an issue.

From taking the sensor strip out of the tube to putting it on TV, it took me about an hour. The only issue I noticed is that somehow the touch experience is not very good with Windows 10 Modern (Metro) Apps, this includes the Tile Menu. However, in Desktop mode, it works surprisingly well.

Then, I decided to just hook my trusty MK809III Android TV to my TV and plug in the USB. To my surprise, the Kernel I built over 3 years ago had built in support to the touch sensor. I was up and running in no time.



The touch detection is also better than Windows 10 Modern Apps.

Overall, this whole experience sounded just kind of... boring! Everything just worked without incident. I cannot really complaint. The only issue so far is that because the Android Stick has really weak Wi-Fi antenna, putting it behind my TV essentially cuts the network off. I am sure this can be fixed using an HDMI extension cable. But I think I have had enough fun for the day!



Saturday, November 17, 2018

Something Old Something New

It has been two and a half year since I wrapped up the project. Since then, nothing much have changed. The little champ is still humming along and going strong. At some point, I gave it a bigger heat sink and I don't remember if it ever crash on me.


On the other hand, I am trying something new. It is time to start a new project...
Stay tuned for more updates!
 

Tuesday, March 22, 2016

Keeping it cool


Nothing much to update here. The android stick is chugging along just fine. But I always wanted to do something about its cooling as it often reboots after half an hour of playing video intensive games.

I found cheap heat sinks off eBay that were meant for Raspberry Pi. They come in 2 sizes, 10x10mm and 15x15mm. I used the 15x15mm.




First, I pop open the case and place the heatsink on top of the RK3188. The size seems okay. I align the case and make some marks.
 
Then, I use a dremel to cut a hole. I want the case to help hold the heat sink in place because I only have thermal paste and don't have thermal adhesive sticker. I then finish off the sides with an utility knife to make sure the heat sink fits tightly.
 
Finally, I apply the thermal paste, close the case and push the heat sink in place.

After running it for one and a half hour, it is still holding up. I would give it a pass. However, if I have to do it again, I would get a 20x20mm or even 22x22mm heat sink and one that is taller. The heat sink is definitely too hot to touch. I have to wonder how long it could last without one at all.




Thursday, August 27, 2015

New kid in town

My android table has been running for months without incident. But I have been looking at other combinations. 

Touch screens for Windows has become common since Windows 8 (my monitor was made for Windows 8 after all). But Windows 8 PC were bulky and expensive ($200+). It is because a Windows license cost almost $100.

Not anymore! A little over a year ago, Microsoft has made Windows 8 license practically free for small devices. Since then, Windows tablets are popping up here and there. Not only are there ultra small form factor Windows PC $100 like the Pipo X7. There are also many sub-$100 tablet. The downside of these tablets are that they don't have as much connectivity. HDMI is not common and they often come with just 1GB of RAM.

Until I found this Unbranded tablet (the brand is "Unbrand"). It comes installed with Windows 8.1 which is eligible for Windows 10 upgrade. And it comes with a micro HDMI port and micro USB. The best part is I got a refurbished one for less than $60. 

Connecting it to the table is dead easy. So simple that I feel a bit ashamed to write about it. No coding necessary. Just use a micro HDMI to HDMI cable and micro USB OTG cable and set the display to use external monitor only.

Anyway, here is another use for my giant tablet.


Monday, December 22, 2014

This is it!

Finally!
 

I have to admit, I am not handy. It could have been better, but I think I am satisfied with what I made. 

The space inside the table is a little more than the thickness of the monitor. In addition, the monitor is thick in the center is thin on the side, especially for the 2 top edges. So I put in some wood blocks for support.

Play Store!
I initially cut out 2 holes for inputs and buttons but I realized I need a 3rd hole in the middle or the monitor cannot be pushed out! I also put in some cardboard for buffer. But it is proven to be not enough as the screen still ended up about 2mm below the table surface. Some day I will have to fix this. Also, the edges are still a little too rough. Something to consider in the future.



Due to cooling concerns, I decided to hang the android stick outside. Luckily, there is a platform under the table to keep the power supplies and hide the extension cord while not in use.

Some final thoughts, capacitive screen is definitely the way to go. While I am limited to use fingers or capacitive stylus, there is a lot less false positives. The biggest disappointment of this project is the screen's viewing angle. While it works fine as a monitor, the viewing angle becomes an issue when viewed from above. It becomes difficult to view when I am seating from the sofa.

But overall, I cannot complain for a coffee table running full Android 4.4 for less than $220! And I am 100% sure that I can just as easily change it into a Windows 8 tablet.

In summary, here are the final process (skipping all the investigations I made):

  1. Get Android Stick
  2. Test and pick the best custom firmwares (it should have screen rotation support, ideally with working Wi-Fi and BT)
  3. Determine how to build kernel and test with my own custom kernel. Make sure Wi-Fi works!
  4. Get Touch capable monitor (with HDMI)
  5. Add USB Touchscreen support to custom kernel and test
  6. Get Ikea LACK table (black color is the best)
  7. Measure and cut out the table top for screen
  8. Cut 3 holes in the bottle for wires and access
  9. Put together and enjoy!
Detailed steps can be found in my blog posts below.

Saturday, December 20, 2014

Time for some action!

This is long overdue. There were a lot of things going on but I finally get around to do it.

I got the LACK coffee table from Ikea for $20 and proceed. At first, I decided to cut out the space for the speakers as well. But after noticing the speakers about 2mm recessed from the touch surface. I think I want to first try hiding the speakers inside the table and leaving only the screen.

I first use pencil to trace the line, and then use a cutter to leave a mark. And then finally cut off the board with my cheap dremel. The board just peels right off, leaving the bee hive papers. Not a surprise for me as I have seen it before.



I rip the paper off and slide the monitor in. The inside depth is about the depth of the monitor. It is a near perfect fit!

That's all for the day. Tomorrow, I will need to drill some holes for ventilation, cables and controls. Then it is the final assembly. 

Wednesday, November 5, 2014

Bluetooth works, but ...

It is not perfect. I have Bluetooth working with the stock firmware. I can now use my BT keyboard to type. 

I initially tried modifying the board-rk3188-box.c but it didn't work. The solution is actually not that hard, I know that the kernel built by d33 has working Wi-Fi and BT. And he uses github for the source. I go through the changes he made and decided it is likely that the BT is broken while he added BT support for the other Wireless modules. 

So I just start off from the origin of his master branch and patch in the changes I made. In no time, I have a firmware with working Wi-Fi, Bluetooth and Touchscreen!

However, this only means that I am half way there. The stock firmware has several limitations. Namely, lack of 1080p and lack of rotation. Not to mention I have to root it again. The lack of rotation support is really ruining the Giant Tablet experience. I now need to figure out a way to get my kernel working with the smic firmware.

I suspect that the BT drivers are different. So first thing I did is make a backup of the /system directory of the stock firmware. And then, I flash the smic firmware over and compare with files under its own /system. I see 3 bluetooth related files with different file size:

/system/vendor/lib/libbt-vendor.so
/system/lib/hw/bluetooth.default.so
/system/lib/libbt-hci.so


Unfortunately, even after I replaced them, BT still won't work. I need to think of some other approaches. 

In the mean time, my replacement monitor arrived (Thanks Newegg!). I don't want to RMA it again, so hopefully this monitor does not have wiring problem like last one.

(While waiting for my monitor, I searched for some other touch options, it seems one can buy a 32"-40" IR based touchscreen overlay for as little as $200-$300. I am quite confident that they can all be made compatible with the TV sticks. Imagine the possibilities!)