Android · Android App Development

Custom Android Hardware. Input on sourcing our device?

Anonymous

February 5th, 2016

I'm looking for ideas on sourcing tablets for a custom app/hardware platform. I need a mostly stock platform, and the ability to install a custom Android build. We are building a device to put on-premise with customers. The tablet hardware will be stock to start, who do you approach to find a vendor to source devices from? Does anyone have any hidden "got-ya's" that show-up when working with Android devices? We will have a custom app that captures information and uploads it to a server. We want to strip the "fluff" from Android to save resources on the device. The other item I'm looking for is the ability to have the vendor "pre-load" an image onto the tablet. Does anyone have any hands on experience with this?

James Szeto Principal Consultant at Firehorse Solutions

February 8th, 2016

I am assuming configuration management of a large pool of devices. I would use Ansible (ansible.com). We use it to configure very large pools of linux servers for Amazon Web Services (AWS). Anisble can be used to make dynamic changes to your app configuration.  Then, I would use Elasticsearch, Logstash and Kibana (ELK) to monitor your devices, such as get stats, cpu usage, memory usage and a few other things as long as you can ssh into the android device.  These tools I described are used by DevOps.  Also, you can write a JSON API to send and receive status or command the device using Node.JS or AngularJS.

David Pariseau

February 6th, 2016

Good recommendations Shailesh.  Alibaba is a good source, but it really depends on volumes.  If your only looking at hundreds of units then the considerations are much different than if you're looking for thousands or even larger volumes.  It's a tradeoff between the cost benefits of volume purchasing vs. the support you require.   If you're looking for small volumes forget about trying to engage a large player (they won't be interested in supporting) you, if the volumes are small but the changes you require significant then look for a smaller player perhaps of custom or specialty products.  Your unit cost will go up significantly but your level of support will as well.  And, in some applications the unit cost isn't the driving factor (if you're charging the client significantly for your value-add, perhaps the hardware cost is a small part of the overall costs?).   As in everything the optimal solution will depend on your constraints.

Anonymous

February 8th, 2016

This is for a different project James. We will be recording all audio at a location via a soundboard. The worry is keeping the app running all of the time without interruption. Any ideas on how  you would manage a large pool of devices?

James Szeto Principal Consultant at Firehorse Solutions

February 8th, 2016

As for apps running all of the time without interruption, the Android OS does not seem to recover the memory after a program has started or closed down in the background. The device will eventually slowdown and do the spinning wheel of death with the CPU getting really warm. I have to manually kill background programs and flush the memory in order to recover available memory (cache or apps) . Another problem I run into after running for extended periods is corrupt flash drive. The file system seems to get corrupted. Reboot seems to fix it. Probably does a check disk for corruptions. I run my app 24x7 on my tablet. The app receives realtime steaming video on 9 channels from my DVR. Every few days I would have to reboot the device. I think my app has a memory leak or it timeout to the server and lost it's mind.

Since your using a WiFi connection, I suspect your limitation are network reliability, bandwidth, caching, buffering and processing.

Post Note:
My DSL router just reboot on it's own.  I lost the real-time video stream.  It appears the app does not have persistence to reestablish a lost connection.

James Szeto Principal Consultant at Firehorse Solutions

February 8th, 2016

If I understand you correctly, you basically want to be in locked-down kiosk mode.  Try something like "KioWare Lite" or something similar.

http://www.kioware.com/android.aspx

David Pariseau

February 5th, 2016

Are there specific custom hardware requirements for this device or is it purely custom software sitting on an off-the-shelf tablet (or the equivalent)?

Anonymous

February 7th, 2016

How do you approach the manufacturer about getting ROM access? That is very helpful James, thank you for the insight!

Shailesh Bhat Product & Business Management, Entrepreneur

February 6th, 2016

Hi Eric,

We work with android tablets (sourced from CN).

I am curious, what benefit are you seeking in removing the android 'fluff'.  Are you doing it for branding reasons, functionality reasons or performance reasons (in other words, will your custom app be resource heavy, that removing fluff will make a difference?).

On custom hardware, David Pariseau is absolutely right; you should look for off-the-shelf devices.  In our case, we wanted the device to have an OTG port and a separate charging port (because the application would be in use for >12hrs continuously), and we managed to find such hardware without having to get it custom built (our volumes did not justify a custom hardware build).

As a starting point, you should consider looking for hardware suppliers on alibaba.com if it makes sense for you to source it from CN (but be careful in your dealings there, I have heard of folks being cheated too).

Good Luck.

James Szeto Principal Consultant at Firehorse Solutions

February 6th, 2016

Try Geekland USA
geekland.co

They sell Android Tablets and Embedded PCBA Android Boards.  They also provide OEM/ODM Contract Manufacturing Services.

Here is an example:

Samsung Exynos 4412 Quad-Core Cortex-A9 CPU based Android board


David Pariseau

February 5th, 2016

What kinds of volumes are you looking for?  If you're looking for small volumes then I think you're at the mercy of what you can find on-the-shelf.  If you're looking for larger volumes then you can interest manufacturers, perhaps even into providing the changes or build you're looking for.