Game Streaming From Home to Anywhere

In late 2017, I was diagnosed with Crohn’s Disease. After trying a few oral medications, I’m moving on to a biologic infusion. That means, at least for the first several treatments, I’ll be hanging out in a chair with an IV in my arm for a couple hours. I’ll need something to entertain myself. I find that I quickly exhaust my usual website reading rotation if I’m faced with a lengthy wait, and I’m not really a book reader. So I thought a portable game console, such as a Nintendo Switch, might be a decent buy.

To be honest, I’ve been trying to justify a Switch since I’ve been watching Super Mario Maker 2 on Twitch for the last month or so. This seemed like a great way to justify that purchase. Additionally, someone got Android working on the Switch a few days ago, expanding the the gaming possibilities to include streaming PC games. I knew Valve had a Steam Link app for Android and I figured it couldn’t be too hard to make game streaming work over the internet.

So I dug into the Switch idea a bit more. In order to hack a Switch, its firmware has to be older than a certain version. That means I can’t buy a new one to hack, and would have to search for a used one with a serial number in the right range. I found several eBay listings for hackable Switches, but the prices turned me off a bit. Most were asking about $160 for just the console, with no Joy-Cons, no AC adapter and no dock. After adding $50-$80 for new controllers and $15 for an AC adapter, it didn’t seem like such a great deal.

If I did get a Switch, I’d definitely want Super Mario Maker 2, which could be a problem with a hacked console. Nintendo has some means of detecting a console that has been tampered with, and can ban that console from accessing any features that require internet access. If the console was cheap enough, I could deal with that, but not for $250 or so. Then I realized that I didn’t even need a Switch. I could just use an Android tablet, and I already have one.

Almost immediately after that, I figured that I could probably just use my nice Windows laptop (a base model Surface Book 1). And it turns out I can. I tried to get Steam Link Anywhere going, but couldn’t figure it out. Which was probably a blessing in disguise. I decided to try Moonlight, which I was originally going to use on the Switch, and then the Android tablet. Turns out the people behind the project have developed a client package for just about anything with a network connection.

To use Moonlight, I first installed Nvidia GeForce Experience. Moonlight works by making your client look like an Nvidia Shield to Geforce Experience. Initially I was skeptical about this solution because I wasn’t sure it would work with UWP games, like Forza Horizon 4 or Sea of Thieves. I was wrong. GeForce Experience auto-detected the UWP games right away. I installed Moonlight on my laptop and gave it a try.

I was stunned at how well it worked. I launched Sea of Thieves, and after a bit of loading I was in the game, with it working as if I was sitting at my desktop. I bumped the resolution from the default 720p to 1080p, and it was just about perfect. The laptop’s trackpad wasn’t terribly responsive, but I plan on using a PS4 controller instead. I installed the Moonlight internet access utility on the desktop and tried it using my phone’s wi-fi hotspot. I didn’t want to use up all my data, so I only tried it for a tiny while, but it seemed to be just as good as the local network.

I’m really pleased with the results. It was so much easier to set up than I expected and the gaming experience was better than I hoped for. Now I just need to set up my Raspberry Pi to use a wake on LAN command to start the desktop and I’ll be all set. I’m looking forward to trying this out from another building. I’m expecting more perfection.

Update on NextPVR and Kodi

It’s been about two and a half weeks since I got Kodi set up on a Raspberry Pi in my bedroom to watch TV. So far, it’s going nicely. The guide works perfectly, setting and watching recordings is fine and watching live TV is great. However, I’m running into a problem with timeshifting on Kodi. When I pause a live program and then resume it a bit later, it works fine as long as I don’t fast forward or rewind. It’s a problem because timeshifting is kind of the whole point of this PVR system. I’m going to try adjusting some settings later today and see if I can fix the issue.

So we finally got FiOS

After a couple false starts, we got our FiOS service going on Thursday. We got the gigabit internet and lifestyle and reality custom TV package. The download speeds have been a tad disappointing at about 330 mbps, while the uploads are an excellent 700 mbps. The download is three times better than we had before, but I’d like it to at least match the upload. I’m not sure what’s causing that problem, but I’ll have to try a few things to fix it this coming week.

The TV side of things is going very well so far. The Ceton PCI tuner is working just fine for now, but I’ll still probably upgrade to the new HD Homerun Prime when it comes out. I have the Ceton card in my living room computer, connected to the TV. It runs NextPVR which contains a client for local use and a server that other devices on the network can connect to.
It’s a very powerful program, with lots of options for customization. In the living room, we just use the local NPVR client. I didn’t realize that cable TV services don’t transmit program guide data like the over-the-air service does. The Schedules Direct service is supported by NPVR, with fairly easy set up. It costs $25 per year, but, to me, that’s very reasonable for the convenience.

I was originally planning to use Emby with the NPVR plugin on the server side and the Emby Roku app on the client side. Quite frankly, it sucked. It just dumped all 1200 channels the tuner card sees into a menu with no options to sort or filter them. When I clicked a channel to watch, it didn’t work either. It’s a small caveat, but to use the live TV function of Emby, you have to pay a subscription fee of $4.99 per month, $54 per year, or $119 for life. So I had to go back to the drawing board.

I decided to try out Kodi on my Raspberry Pi server. I installed the NPVR add-on and adjusted some settings. It kind of worked. The guide was perfect, but playback was a little wonky. The audio was fine, but the video would stutter or freeze. I figured it was good enough and I could fix the problem. I ordered a new Raspberry Pi 3B+ and set it up with OSMC. OSMC is a fork of Debian with Kodi preinstalled. I installed it on the Pi, and then velcro’d the Pi to the back of the TV. After a little bit of setup, it was working perfectly. The guide looked just like NPVR, live TV worked without any catches and watching recordings was great. I’m extremely satisfied with the setup.

There’s only one small thing left to do; add a remote control. In the living room I have a Logitech K400+ couch keyboard, which is great for changing app settings, launching games and light web browsing, but it’s really clunky and unintuitive for watching TV. A regular remote control would be ideal. I remembered the new computer my dad got for Christmas 2006. It was a Dell XPS 410, which had a novel for the time TV tuner card. This meant it came with Windows XP Media Center Edition, and a remote control. The remote had every button you need, but none you don’t, with a very solid and high quality feel. To my surprise, I was able to track down two new in box examples on eBay. Set up with NPVR should be a breeze, because it has native support for these media center edition remotes. I also discovered Kodi has an MCE remote add-on, so hopefully set up should be easy there too. The first one comes tomorrow, so I’ll find out soon.

While the internet service so far is a tad disappointing, I’m totally thrilled with the TV. This setup with a cable card tuner inside an HTPC with client computers around the house is something I’ve wanted since not long after we opened that new computer over a decade ago.

After doing some more reading about the Ceton TV tuner cards, I discovered the Ceton company went out of business a few years ago. Their website lingers on the web for some unknown reason. It turns out the InfiniTV 4 PCI card I bought is one of many with defective on-board storage so I am unable to update the firmware to the best version. I’m really hoping that it works reasonably well. The new HD Homerun Prime 6 is the tuner I really want, but it’s not out yet. They say it’s coming in 2019, hopefully sooner rather than later. I’ll pre-order it if I can. With that tuner I’ll be able to switch to using Emby’s built-in tuner support rather than the NextPVR plugin.

Upgrading to Verizon FiOS

Currently at my house, we have Spectrum internet with an advertised speed of 100 mbps, though it’s often a tad faster, and there’s no data cap. For TV, we subscribe to Sling TV, which was a pretty decent deal at $20 per month, but less so at the new price of $25 a month. It gets the job done, but the basic tier we have doesn’t have several channels we’d like to have. We use an antenna occasionally to watch the local channels.

This weekend I stumbled upon the Verizon FiOS sign up page. We considered FiOS when we first moved in, but decided on Spectrum because at the time, FiOS had the same speed, with a data cap, for a slightly higher price than Spectrum. Now though, the tables have turned. FiOS now offers gigabit (actually around 950 mbps down and 850 mbps up) internet, your choice of several TV packages and home phone starting at $75 a month (without tax of course). The current Spectrum bill is around $65 a month with taxes and everything. Seems like a no brainer, right?

Verizon encourages you to rent their router and set top boxes, neither of which I want. And it turns out that’s fine. I already have a great Netgear Orbi setup I want to keep, and according to the forums, I can hook that right up to the FiOS box in the basement with an ethernet cable. In lieu of renting set top boxes at $12 a month each, I’ll be getting a single CableCARD at $5 a month. The card is going to plug into a tuner connected to an old computer acting as a server. I’ll be able to watch my TV channels and record things from anywhere I have internet access.

The only hold up right now is the tuner. I’d love an HD Homerun Prime. Unfortunately, and somewhat stupidly, they don’t have any for sale right now. They say the new six tuner model is coming this year, but in the meantime, they’ve stopped producing the three tuner model. So I can’t buy an HD Homerun unless I want to pay a lot for a used three tuner model.

The other option I’ve found is the Ceton InfiniTV. They have a few models, but the new ones are too expensive at $300. I’ve found a few used ones on eBay, so we’ll see if I can get one. There’s a problem with this tuner though. I really want to use Ubuntu sever for this because it’s free, and faster and easier to use than Windows for this project. There are Linux drivers for the Ceton tuners on Git Hub. The DVR and media management app I want to use, Emby, runs on just about anything. Emby only supports the HD Homerun Prime natively, but will work with the Ceton if you use the NextPVR backend for TV watching and recording. NextPVR only works on Windows though.

I think what I’ll do is get a used Ceton for a hopefully low price, and use my living room computer as the server. I’m just worried that with the transcoding Emby needs to do that there won’t be enough processing power left over for gaming at the same time. If it doesn’t work out I can always build or buy another computer I suppose.

Yesterday afternoon I had such a “duh” moment. I realized that I can use a Megasquirt system on the Saab engine I was originally planning on using. So now the plan is to get myself a 2004-2011 Saab 9-3 2.0T with the B207R engine. 2003 and 2008-11 all wheel drive models had secondary air injection which is stupid. I can remove it, but it’s just easier to not have it in the first place. Hopefully, I’ll be able to use the car’s original computer to run things, but if that’s not possible I can always go with Megasquirt. This engine would be easier to run with Megasquirt than the LE5 anyways because the B207 doesn’t have variable valve timing.

Engine Height Troubles

I took a look at the LTG engine dimensions on the GM crate engine site earlier today. At about 27.3 inches tall according to GM, the LTG is probably too tall to use in a Locost, at least easily. The Locost forums say that the Miata 1.8 liter engine, a popular choice, is fairly tall at around 23 inches and requires the oil pan to sit below the frame rails. Clearly then, the LTG is too tall. Turns out it’s tricky to find dimensions (overall length, width, height) on most engines, unless they’re offered as a crate engine or are very popular in standalone applications, so I’m not totally if an LHU or LNF would fit either. I’m not totally sure if any Ecotec engine would fit, but I think I’ve found a decent option.

Obviously, buying a whole car to extract the engine, accessories and wiring from would be ideal, but I’m not sure it’s going to be possible for a low enough amount of money. The cars containing the LNF and LHU engines are still fairly new, and in the case of the LNF, rare. It’s pretty unlikely I’m going to find a rusted out 2013 Buick Regal Turbo. So a more common and older engine would be easier to work with.

I think I’ll be setting my sights on an LE5, a 2.4 liter naturally aspirated four cylinder found in a bunch of shitty, uninspiring GM cars from 2006 to 2012. In the form I’m most likely to find, it puts out 169 horsepower and 162 ft-lbs of torque. That should be totally fine for a 1500 or 1600 pound car, even though it’s not the 260 horsepower of the turbo engines. I think I’d probably run the engine with a Megasquirt 3 system, which should be able to deal with the engine’s variable valve timing and avoid the headache of using the GM ECU without the rest of the car. The Megasquirt is also infinitely tuneable, so with some effort I might be able to eke out a little more power. And if I want a lot more power, the turbo from the Saab 9-3 bolts on with some effort. I’m looking into grafting on the individual throttle bodies from a motorcycle for this engine. I might even be able to

So that’s where the project stands for now. Today and tomorrow are going to be pretty warm, and hopefully it stays that way. I need to get the garage in ship shape before I start building anything.

Locost Concept Update

The Suspension

Last week we got a Saturn Sky in at my work. Since they came out, I’ve always thought they were a great looking car, maybe even a work of art. The interior, it turns out, leaves a lot to be desired. It’s everything terrible about GM from 10-15 years ago, but I suppose it was a pretty inexpensive car when it was new.

2009 Saturn Sky Redline Ruby Red Limited Edition.jpg
By ReedredOwn work, CC BY-SA 3.0, Link

The Sky/Solstice was built on the GM Kappa platform, a brand new design for a two seat convertible similar to a Miata. Knowing this, I was interested to inspect the suspension design on this car. The Miata, at least the NA and NB generations I’ve looked into, have simple front and rear spindles that are easy to adapt the the Locost design. It turns out the Sky might be even better.

The front and rear spindles appear very similar (I suspect they may even be identical). They’re made of aluminum, which is appealing due to its lighter weight than the Miata’s iron spindles. Both front and rear take ball joints top and bottom, with a tie rod in the middle. This is the same as the Miata in the front, but different in the back. The Miata does not use ball joints in the back, just a simple clevis. The ball joints and tie rod on the Sky allow the toe to be adjustable in addition to camber. The only thing I don’t really care for is that the wheel speed sensor is integrated in the wheel hub/bearing assembly. They’re a lot more expensive than a press in bearing and I’m not sure yet if I can make use of the sensor.

They didn’t make a ton of Solstices and Skies, so finding a reasonably priced parts car a reasonable distance from me would be tricky. Luckily the parts I need are available for an okay price on eBay. On a whim, I cruised around and ended up with a set of four brake calipers with bolts and hoses, and both rear spindles. The calipers were $120, and the spindles $112. I think those are pretty tough prices to beat. If I decide not to build the car, I can always clean up the parts and sell them for a bit more than I paid.

The Drivetrain

My original plan was to use the B207R/Lk9 out of a Saab 9-3 2.0T. They’re very easy to find for cheap in my area. I’m also a Saab mechanic, so I can get any parts I need to refresh the engine and I have easy access to parts and electrical diagrams. I’ve decided not to use this engine though. While it’s a GM engine, there are a few proprietary Saab parts, the ECU among them. At work, we replace ECUs on 9-3s very frequently. The “new” ones aren’t new anymore, they’re rebuilt and have a high failure rate. The parts company has introduced another ECU part number, but using it requires modification to the wiring harness, and I suspect it won’t be any more reliable than what we already have.

With that in mind, I decided to look for new engine options. If money was no object, I’d probably go for an aluminum block GM V8. But money is an object, so I’ll have to go for something less expensive. I think a four cylinder of 2 liters or less is more in the spirit of the Lotus 7 anyways. I took a look at GM’s current crate engine offerings. Their four cylinder option, the LTG, looks like just the ticket. Of course a new engine would be way too expensive, but the LTG is available in several production cars in both front and rear wheel drive configurations (I’m not sure what the difference is and whether it’s important to me though). It puts out up to 272 horsepower and 295 ft-lbs of torque, depending on the car. The LTG can be found without too much trouble in the Cadillac ATS, Buick Regal and Chevrolet Malibu. It seems to be fairly inexpensive to get a wrecked Regal, so I’ll probably try to take that route. The LHU, as installed in the Regal GS or Buick Verano Turbo, would be a fine alternative to the LTG. The LNF, in the Solstice GXP and Sky Red Line would also get the job done, but would probably be tougher to track down.

Any of those engine options should mate easily with the AR5 transmission I’ve been planning on using. I’m not totally sure about options for a flywheel and clutch, but it shouldn’t be terribly difficult to figure out. I hope.

With all this GM stuff, it makes sense to use a GM differential. My ideal choice would be the 3.73 limited slip unit out of a Sky Red Line or Solstice GXP. Those seem a tad expensive for me, so another option could be the 3.42 limited slip differential from a Cadillac CTS. I’ve read they’re the same basic thing, but I’m unsure if the Solstice/Sky axles would fit right into the CTS differential. I’m also concerned about having to have the axles shortened or lengthened because I suspect (but don’t know) that it might be expensive.

So that’s where the concept for this project is at the moment. I’m still not totally sure if it’s going to happen, mostly because my garage needs to get into decent shape before I build anything. The majority of the work shouldn’t be very expensive, but getting someone to add a few electrical circuits to the house might be. I’ll have to call some places and get estimates. After that’s done, the holes in the siding need to be fixed, new overhead doors need to be installed and lighting and electrical outlets need to be added, all of which I can probably handle myself. We’ll have to see how it goes.

Maybe Building a Car

So I’ve rediscovered the homebuilt Lotus 7 style car called the Locost. I think the first time I read about this car was in the August 2006 issue of Car and Driver. I thought it was really neat back then, and I still think it is. I think this kind of car is the perfect thing for someone like me who enjoys driving and modifying cars because of its infinite customizability. Builder usually start with a basic steel space frame, plans for which can be found in several books, and then add adapt it to use just about any components they want.

The three major books on building a Locost from start to finish are:

  • The original: Ron Champion’s How to Build a Sports Car for as Little as £250.
  • How to Build a Cheap Sports Car by Keith Tanner.
  • How to Build Your Own Sports Car: On a Budget by Chris Gibbs.

They all cover similar the same basic information with very similar frame designs, but they each bring something different to the table.

I’d really like to build one of these. I’m currently employed as a car mechanic, and have been for several years, so I have the knowledge and experience to put together the mechanical pieces of the project. I don’t have much practice in metal fabrication or welding, but neither is terribly difficult to learn.

I’ve got a basic plan in my head for the drivetrain and other components that generally aren’t buildable in a garage. The engine will be from a 2003-2011 Saab 9-3 2.0T for a few reasons. First, and most importantly, being a Saab mechanic, I know a lot about the engine already. Almost as importantly, the engine has great power density; it puts out 210 horsepower and 220 ft-lbs of torque (lots more with a tune) in a fairly compact and lightweight package. Saabs are also not worth that much money anymore, so finding a cheap car to extract the engine from shouldn’t be too difficult. Conveniently, this engine should bolt right up to the AR5 5-speed manual transmission found the the Chevrolet Colorado/GMC Canyon and the Pontiac Solstice/Saturn Sky. It’s a pretty inexpensive transmission. I’m still undecided about the rear differential, other than I know I want independent rear suspension. The easiest choice would probably be the Ford 8.8″, which is found in the Explorer and should be pretty cheap and have some options for limited slip capability.

The front and rear spindles and brake calipers will probably come from a Mazda Miata because they’re really simple. The front ones just need top and bottom ball joints and tie rod ends and the rears only need top and bottom control arms. I’m thinking a Triumph TR6 steering rack should work reasonably well. Axles to join the Ford differential to the Miata hubs might be a tad tricky, but people stuff V8s into Miatas without too much trouble, so I’ll have to check out their solutions.

On the face of it, this project seems pretty doable. I’m capable of doing each thing that needs to be done. I think it’s probably similar to removing the engine from a car though. To remove an engine, in principle, all you have to do is disconnect everything from the engine that’s connected to the body of the car and the lift it out. This project has many stages which sound easy on the surface, but probably require lots of attention to small details. This kind of car would be perfect for me though. The endless customizability would mean I could have this car for going fast and tinkering with, and I could get a boring car for the daily grind and stop having to compromise.

I’ll have to get the homemade vehicle registration packet from the DMV and see what the legal requirements are for this sort of thing, but I don’t expect them to be onerous. I’ll also have to buy a few new tools and fix up my garage a bit, but new tools and an improved garage would be a good idea anyways. This has to potential to be a very rewarding project.

I built a new computer

With black Friday sales, I finally got around to building a computer for my living room. I’ve wanted one for a while because when friends are over, it’s a lot easier to sit on the couch and play games on the TV than it is to crowd around a monitor in the office. This computer also has a TV tuner in it, so I hooked up the TV antenna to it so we can watch and record over-the-air TV with this computer. Below is the PC Part Picker list for the computer I built.

PCPartPicker part list / Price breakdown by merchant
Type Item Price
CPU AMD – Ryzen 7 1700X 3.4 GHz 8-Core Processor $213.29 @ OutletPC
CPU Cooler Cooler Master – Hyper 212 EVO 82.9 CFM Sleeve Bearing CPU Cooler $24.89 @ OutletPC
Motherboard MSI – B450M MORTAR Micro ATX AM4 Motherboard
Memory Crucial – Ballistix Sport AT 16 GB (2 x 8 GB) DDR4-3000 Memory $121.49 @ Newegg
Storage Samsung – 860 Evo 1 TB M.2-2280 Solid State Drive $147.99 @ Newegg
Video Card MSI – Radeon RX 480 4 GB GAMING X Video Card
Case Thermaltake – Core V21 MicroATX Mini Tower Case $67.43 @ Amazon
Power Supply EVGA – SuperNOVA G1+ 750 W 80+ Gold Certified Fully-Modular ATX Power Supply $98.68 @ OutletPC
Prices include shipping, taxes, rebates, and discounts
Total (before mail-in rebates) $703.77
Mail-in rebates -$30.00
Total $673.77
Generated by PCPartPicker 2018-12-15 11:04 EST-0500

These are current prices, which I did not pay. Before rebates (which I should get around to sending in), everything was about $530. I reused the graphics card and power supply from an old computer.

So far, I’m really liking it. It plays games on the TV very nicely at 1080p (the TV is 4K, but it’s really difficult to see the difference at couch distance) and it watches and records TV just fine. I’m not really thrilled with any of the media center options out there though. None of them is nearly as good as Windows Media Center was.