As mentioned a few days ago, Nikolaus and me have been visiting the embedded world exhibition in Nuremburg today.
We mainly focussed on different storage solutions (eMMC, nanoSSD, MicroSD Cards), but also discussed various other things and learned quite a few new things.
Here is a small blog post about the results
1. What storage is best?
We followed all your discussions, concerns and wished here at the boards and spoke to various manufacturers about pros and cons.
A nice solution would've been nanoSSD together with an internal MicroSD slot, both bootable.
nanoSSD is pretty fast - however, it's also very powerhungry.
While MicroSD Cards / eMMC usually use about 0,3W, the nanoSSD can use up to 0,9W
Therefore, it's not really an option.
Next was to compare the MicroSD with an eMMC.
Power consumption is similar, speed mostly depends on the eMMC/SD Card used, but the latency of a MicroSD Card will always a bit worse than for the eMMC.
The eMMC is directly connected to the MMC line of the SoC, whereas a MicroSD Card always needs to have a converter inbetween.
That converter adds a bit of latency - probably not much, but a bit.
However, I can understand that a MicroSD card is appealing, since you can change it and still use the unit easily in case the eMMC breaks sometime in the future.
Therefore, we thought of a solution here - and I think we found the perfect one.
As mentioned, we're planning to put the CPU together with the memory and storage on a pluggable daughterboard.
This saves money in production (since the mainboard will be two-layer and only the small CPU board needs to be more complex), and it adds the possibility to upgrade the Pyra in the future with whatever SoC / memory / storage will become available in the future.
Additionally, we will try to add the MicroSD/SIM-Card Combo-slot below the battery - and include a small chip that will be able to either connect the eMMC or the MicroSD Slot to the SoC.
If we use the OMAP5, you can then either use the eMMC together with both full sized SD Card slots or the MicroSD Slot with both full sized SD Card slots.
If a future SoC supports more MMC devices, you will be able to use all the devices at the same time.
This should be a solution perfect for everyone. You can either boot from eMMC, the internal MicroSD Card or the Full Sized SD Card slot (like on the Pandora).
And in case your eMMC breaks (never seen that on the Pandora, but you never know), then simply put a MicroSD Card in and switch to that slot.
I hope you're happy with that solution
2. UMTS and a hardware switch
Some of you here at the boards had a bit of a concern with the (optional) UMTS module:
A modified firmware or software could be created to misuse the UMTS module and send data somewhere without the user knowing it - so they asked for a hardware switch to completely turn off the module physically.
Well, we thought about that - but adding a switch would increase the costs quite a bit (mold would be more complicated, switch would be needed, etc).
However, we found another, pretty cheap but effective solution:
We plan to include a small power measurement chip into the hardware, that is hardwired to a small LED.
Whenever the UMTS module needs power (which it does when it will be activated), the LED will light up.
This hardwiring cannot be changed in software, so you will KNOW when your UMTS module will be active!
3. Intel and everything else
While you all know that we won't start with an x86 right away, it could be that we'll release a CPU module with one sometime in the future.
And as Intel had a booth there, we thought it doesn't hurt talking to them and get some more information.
Right now, the latest BayTrail does NOT have a development board available, as we already thought.
While it's possible to buy the latest BayTrail without any NDAs and in low numbers, Intel suggests to not buy it directly but get it on a module from one of their partners.
Getting the SoC directly to work is a bit more complicated than an ARM SoC, since it will also need a BIOS...
We checked some of their partners, but their modules usually are way too big for us (and not yet available with the most recent SoC anyways).
So right now, the x86 is too risky for us, but that doesn't mean we won't do an x86 module sometime in the future (though please don't bet on it!)
I also visited Qualcomm and got another contact for getting the Snapdragon. The 805 will be too power hungry for mobile devices though (it's mostly aimed at tablets), so it won't be usable for us.
But I'll keep you informed about any further updates.
That's it from the show - keep on discussing about things.
As you could see with the storage, we'll follow your ideas and try to find the best solution for everyone
We mainly focussed on different storage solutions (eMMC, nanoSSD, MicroSD Cards), but also discussed various other things and learned quite a few new things.
Here is a small blog post about the results
1. What storage is best?
We followed all your discussions, concerns and wished here at the boards and spoke to various manufacturers about pros and cons.
A nice solution would've been nanoSSD together with an internal MicroSD slot, both bootable.
nanoSSD is pretty fast - however, it's also very powerhungry.
While MicroSD Cards / eMMC usually use about 0,3W, the nanoSSD can use up to 0,9W
Therefore, it's not really an option.
Next was to compare the MicroSD with an eMMC.
Power consumption is similar, speed mostly depends on the eMMC/SD Card used, but the latency of a MicroSD Card will always a bit worse than for the eMMC.
The eMMC is directly connected to the MMC line of the SoC, whereas a MicroSD Card always needs to have a converter inbetween.
That converter adds a bit of latency - probably not much, but a bit.
However, I can understand that a MicroSD card is appealing, since you can change it and still use the unit easily in case the eMMC breaks sometime in the future.
Therefore, we thought of a solution here - and I think we found the perfect one.
As mentioned, we're planning to put the CPU together with the memory and storage on a pluggable daughterboard.
This saves money in production (since the mainboard will be two-layer and only the small CPU board needs to be more complex), and it adds the possibility to upgrade the Pyra in the future with whatever SoC / memory / storage will become available in the future.
Additionally, we will try to add the MicroSD/SIM-Card Combo-slot below the battery - and include a small chip that will be able to either connect the eMMC or the MicroSD Slot to the SoC.
If we use the OMAP5, you can then either use the eMMC together with both full sized SD Card slots or the MicroSD Slot with both full sized SD Card slots.
If a future SoC supports more MMC devices, you will be able to use all the devices at the same time.
This should be a solution perfect for everyone. You can either boot from eMMC, the internal MicroSD Card or the Full Sized SD Card slot (like on the Pandora).
And in case your eMMC breaks (never seen that on the Pandora, but you never know), then simply put a MicroSD Card in and switch to that slot.
I hope you're happy with that solution
2. UMTS and a hardware switch
Some of you here at the boards had a bit of a concern with the (optional) UMTS module:
A modified firmware or software could be created to misuse the UMTS module and send data somewhere without the user knowing it - so they asked for a hardware switch to completely turn off the module physically.
Well, we thought about that - but adding a switch would increase the costs quite a bit (mold would be more complicated, switch would be needed, etc).
However, we found another, pretty cheap but effective solution:
We plan to include a small power measurement chip into the hardware, that is hardwired to a small LED.
Whenever the UMTS module needs power (which it does when it will be activated), the LED will light up.
This hardwiring cannot be changed in software, so you will KNOW when your UMTS module will be active!
3. Intel and everything else
While you all know that we won't start with an x86 right away, it could be that we'll release a CPU module with one sometime in the future.
And as Intel had a booth there, we thought it doesn't hurt talking to them and get some more information.
Right now, the latest BayTrail does NOT have a development board available, as we already thought.
While it's possible to buy the latest BayTrail without any NDAs and in low numbers, Intel suggests to not buy it directly but get it on a module from one of their partners.
Getting the SoC directly to work is a bit more complicated than an ARM SoC, since it will also need a BIOS...
We checked some of their partners, but their modules usually are way too big for us (and not yet available with the most recent SoC anyways).
So right now, the x86 is too risky for us, but that doesn't mean we won't do an x86 module sometime in the future (though please don't bet on it!)
I also visited Qualcomm and got another contact for getting the Snapdragon. The 805 will be too power hungry for mobile devices though (it's mostly aimed at tablets), so it won't be usable for us.
But I'll keep you informed about any further updates.
That's it from the show - keep on discussing about things.
As you could see with the storage, we'll follow your ideas and try to find the best solution for everyone