When some company releases a new device, it’s fairly easy to jump on your gun and point out “Hey, Are You Stupid? Why didn’t you choose THAT SoC instead? It’s more powerful!”. Well, most people actually forget one of the key market constraints: Supply. EvilDragon shares his story behind the choice of the TI OMAP5 SoC for the upcoming DragonBox Pyra. This is a great reminder that it’s never as straightforward as you think.
In case you didn’t follow the recent news, the DragonBox Pyra is a newly announced “Open” Linux-Based Handheld Computer with Gaming Controls (and a Keyboard). It is the spiritual successor of the Pandora, and it was unveiled (at least as a prototype) at the FOSDEM 2014 a couple of days ago. We don’t have a release date yet, but the head of the project, Michael Mozrek, aka Evil Dragon, mentioned what he went through to find the SOC he chose for the Pyra.
The SoC had to meet a number of criteria:
- It should be obtainable, in small quantities. We don’t know the market size of the upcoming Pyra, but the Pandora was only manufactured in the range of thousands of units, so it’s not realistic to plan for hundred of thousands of parts as a start, and the company has limited capital.
- It should have Linux drivers.
- It should be documented (in English) to enable overall board design.
- It should be available in 2014 for prototyping purposes.
- If possible, Open Source drivers would be preferred.
The Pandora currently uses the TI OMAP 3730 (1Ghz, 512 Mb RAM) as SOC, therefore it was natural for the team to consider using a newer processor from TI for the new model.
EvilDragon: Back in 2011/2012, when the OMAP5 had just been announced, we decided to use it for the successor. It was, once again, faster than anything else. But it seemed like TI would never even release the OMAP5… Early 2013, TI still couldn’t give any clear dates – and now Samsung, NVidia, MediaTek, etc. were all catching up. It was clear for me that I WOULD work on a successor – and it was pretty clear that the most complicated things to source would be the SoC and the LCD. So I started as early as I could and contacted various other companies.
So, what suppliers do you have ?
ED: Samsung was the first company I contacted, since the German Headquarters are in Munich, just 45 minutes away from me. The German team did pay me a visit and they really liked the Pandora and the idea to use a Samsung SoC for the successor. They did their best to convince the Korean HQ, but without success. Samsung did not want to sell us their SoC.
One down. For political reasons, probably. The search went on.
ED: I contacted the Freescale distributor, as their Cortex-A9 SoCs could be bought without any registration and in small quantities – but unfortunately, they decided to not produce a Cortex A15.
Another down, failing to deliver on their initial plans. You can’t really do anything about that. Luckily there were still some choices available.
ED: Next stop: MediaTek. Asian company, so probably easier to get than from the huge global players. However, MediaTek only offers Android drivers, and they do not plan to support Linux – well, not for our small quantities anyways. So they decided to not sell them to us as well.
Another down, because it does not meet one criteria here. The Pyra is not made to be an Android-only device.
Then there was another asian company, Rockchips.
ED: I knew from some developers that Rockchips English design manuals were never really usable – so even if we could get the chip, we couldn’t make the hardware design without a good manual.
Here goes another one down the drain, because of documentation issues. So what’s left? Well, the elephant in the room…
ED: I tried to call nVidia a few times, but the German Headquarters never really picked up the phone. Thanks to some contacts I had, I finally got the right persons from nVidia worldwide headquarters on the phone – however, only to get another “no”. They explained to me that in order to be able to use the Tegra, I need to let the hardware be designed and produced by a contracted partner [of their choice]. That’s certainly not what we wanted – and my guess is that no company would do such a complex design as we need for such a low quantity anyways.
NVidia was always a potential big player to consider as a partner for the Pyra, and this was clearly disappointing to be turned down at this stage. It may also be that they are unwilling to make things easy for a device which could potentially be seen as a Shield competitor.
ED: Things didn’t look good at that time. There were still a few more companies who licensed ARMs big.LITTLE architecture, so I contacted them one after another. Most of them were in industrial / automotive business, and they planned to have their SoC ready in 2016… a bit too late for us.
A SOC ready by 2016 would mean an actual launch date at least in 2017 or so. Way too late for a Pandora successor, and at that time the OMAP5 would probably not look as attractive anyway.
ED: Then TI’s distributor contacted us – apparently, the OMAP5 was finished and would go into mass production in November 2013. We could still get it if we wanted.
Wow, that was a hell of a ride to end up actually where they started. If TI had been out of the equation, one can easily see it could have been very hard to actually secure anything for the project. And there were still ongoing discussions in the team whether going for an OMAP5 for the new device was actually a good idea or not…
ED: Well, we talked about the various options [on the table]. PowerVR’s GPU source code is not released – but then again, all other GPU drivers in SoCs are closed source as well. I know a few will now shout “But for MALI there’s an OpenSource driver available!” – well, yes and no. Yes, there’s a driver available – but it’s for the old MALI GPU. Not a single Cortex-A15 SoC uses the old one. And it’s unknown when and whether there will be an OpenSource driver for the new Mali as well. TI offers Linux drivers. for their SoC and for the PowerVR. One thing that’s good about the PowerVR is that the kernel part of the driver is not closed source – which means: While you need a binary blob for the 3D driver, it can still be used on any compiled kernel or OS. So when PowerVR stops its SGX driver development, it doesn’t mean we cannot update the kernel or OS. We can. Only the 3D driver will not be updated anymore. While a fully Open Source driver would be nice, there just isn’t one out there on an ARM SoC. We can’t fix bugs in the 3D driver, but we won’t be stuck with an outdated kernel ever either. You can see that on the current Pandora: There’s a small application available which lets you change the 3D driver version on-the-fly in the running OS. Each version has different bugs, advantages and disadvantages – but they can be run, regardless of the kernel version. We had a long journey, and I talked to various SoC manufacturers – and TI turned out to be the only feasible for us. I’m pretty sure even though it has its flaws, it will be a neat chip for our next handheld.
On the boards in the past couple of months there were several vocal members to suggest moving to an Intel chip instead of staying on anything ARM-based. Well, it’s true that with the recent Intel releases, mobile Intel chips have become certainly more attractive, but…
ED: to be honest: I’d rather be safe and sure than [take risks] and [be] sorry. When we decided what SoC to use, no one knew if the mobile market would ever switch over to Intel. There are many Android games out there that probably wouldn’t work anymore – and we would also lose all the optimized ARM emulators out there like PPSSPP or PCSXReARMed. Yeah, I know, they exist for x86 as well – but it’s probably not as optimized and therefore drains more battery… And it was too risky for a small company like ourselves – so it’s best to stick to ARM right now.
Well, it’s certainly good news that it’s actually possible to even make a successor to the Pandora. As you can see from this story, if you are a small company, only interested in producing a short amount of devices with a relatively recent SoC, no matter what’s available on the market, your choices could actually be very, very limited. Let’s hope that there will always be at least one player to cater to that kind of market.