Showing posts with label android. Show all posts
Showing posts with label android. Show all posts

Thursday, 27 March 2014

Android x86, Intel and Google

http://linuxgizmos.com/free-ebook-tackles-android-on-x86/?utm_source=twitterfeed&utm_medium=twitter

Sunday, 9 March 2014

[PROJECT] Epson Moverio BT 100 ... Let's try to make them better

I had the opportunity during the last days to try Google Glasses.


It is a great product, well designed.
But in my opinion, it should be considered just as a wearable, with the same capabilities of a potential "smart" watch.
The only advantage over other wearables, is that:

  • it has the same PoV of the user
  • it can show stuff in front of the user
I really see it like a data companion and for sure Google capabilities with voice recognition are awesome. But you do not have enough space on your "display" to perform complex workflows.

But when we are talking about Augmented Reality or Virtual Reality, we have to move to other products.

Latest products making attempts to bring back HMD and AR/VR
But if we go back in the past, EPSON presented, at the end of 2011, the Moverio BT-100. One of the best features of those glasses is they are transparent. You can actually see through them changing your focus.



They are quite old and the specs of the SoC are quite outdated. Furthermore, sensors and peripherals are quite limited... Wi-Fi... And nothing else. Here you are some information about the SoC they used (EMMA Mobile EV).
Android 2.2, no updates, not Google branded (no Play and so on...)... No camera, microphone(!) and/or USB Host functionality (for example could enable the use of ADK).
APX Labs tried to enrich it (see video above).
EPSON will go out on the market in May with the BT 200, the reviewed version. They are throwing the old version to the people interested in developing Android apps or curious about them at a ridiculous price.

That's why I decided to take a ride and ordered them.
The idea is to exploit the best part of this product: the optics, the "glasses" part.

I am quite satisfied by the Google Nexus line... And all the latest 3 products (Nexus 4, Nexus 5 and Nexus 7) support Miracast and SlimPort.
Well known working devices:


This is a way to respectively do wireless display mirroring or by-wire display mirroring.

EPSON provides a Input AV Card to enable external audio&video sources to be sent to the 2 projectors.

The idea is to link the following devices:

  • EPSON Moverio BT-100 (around 99€)
    • EPSON AV Adapter (0€)
      • HDMI to AV Composite adapter (35€)
        • HDMI Male-Male Coupler (5€)
          • SlimPort / Miracast device (30 / 60€)
This allows to use any HDMI capable device to use your BT-100. And with a RaspberryPi or any development card (such as an Odroid one, a BeagleBoard, etc...), you can potentially connect a webcam or a Kinect to put over your head and use computer vision to extract features, gather AR-Tag's positions and generate graphics to be overlayed over the real world images.


Great Android Development articles by Alex Lockwood (CMU)

Microsoft forking Android

Several articles to point out one thing: Android is open source, but it can survive as intented by Google only keeping the OEMs under control. Or we will end up in a '80-ish and '90-ish 'IBM compatible' mess. Microsoft is trying to re-use Android plugging its own services and potentially increasing the fragmentation.

Fast cryptographic operations for Android by Facebook

Immersive 3D display, Android and SDK.

Tutorial on how to send notifications from Android to a server and let the server read them for you.

Sunday, 24 February 2013

Android 4.1+ Tricks - Test OS without 3rd party apps

If you want to do a test run without third party apps but avoid factory reset, you can reboot your device into "safe mode".
This will turn off all third party apps for the next boot and then on the next reboot all apps will be back again. This is good to check battery life or any weirdness that you are not sure if it caused by any of the third party apps.
To do so, at the power off dialog, click and hold "Power off" item until the dialog pops up.

Tuesday, 29 January 2013

Google Nexus 4 and Epic Citadel DEMO

Today EPIC Games released the Citadel Demo of Unreal Engine 3 for Android on Google Play.


I managed to install the "quite" heavy APK (130MB) and run it....
Looks awesome... Not so many dynamic lights (so maybe we will have to wait for real case scenarios)... Also no objects in movement... Nice reflections and good clipping.


Results are impacted by the number of screenshots I took during the Benchmark and some App updating as well in the meanwhile. FPS are limited by VSync (60Hz).





It is possible to move in the scenario and perform some benchmark.

On the Nexus 4, I ran the benchmark setting High Quality and Force AA 4x on Android Settings.
Good job Epic Games!

Tuesday, 18 September 2012

Rikomagic MK802 II as Smart TV

Hardware


  • Rikomagic MK802 II ~75€
  • Microsoft VX 800 ~12€
  • USB Audio Adapter ~5€
  • USB Hub (Powered via power supply) ~7€
  • Wireless Keyboard (e.g. Logitech K400) ~25€

Software

Android settings

  • Animation 0.5x
  • Force GPU
  • Choose Null Keyboard as Input method
  • Change language to the preferred one
  • Set video to 720p@60Hz (1080p works, but it is too much for the hardware)

Todo

  • USB AUDIO Card Status
    • Works, I need to check if output device is set back to AUDIO_CODEC in Skype or Google Talk
  • Webcam Video Status
    • Video works on most apps
    • Device is properly detected by the kernel as UVC compliant camera
    • Skype/Google Hangout: it doesn't handle the output video stream correclty, so when video calling the receiver will have a greenish video
      • Can be related to sync frequency of webcam (50 or 60Hz), or endianess of library
  • Webcam Audio Status
    • CONNECT THE WEBCAM AFTER BOOTING UP
      • Developers hardcoded some changes in their messy way to handle audio: if you change the order/numbering of device some stuff will not work
    • Device is properly detected by the kernel as UVC compliant camera, exposing an additional audio card interface having a single capture endpoint
    • Seems MK802 II firmware is using alsa in the stack, but no asoundrc/alsa.conf file is used
    • [UPDATE] In 121020 firmware, 2 system properties appeared:
      • audio.input.active (AUDIO_CODEC, AUDIO_HDMI, AUDIO_SPDIF)
      • audio.output.active (AUDIO_CODEC, AUDIO_USB#)
    • [UPDATE] In 121020 firmware, the system setting audio_output_channel drives the output device
    • [UPDATE] In 121020 firmware, connecting an USB Audio card we obtain a pop up notifying the audio input and output can be changed
    • [UPDATE] In 121020 firmware, if an application needs audio recording capabilities (like Skype, Google Hangout, Google Talk in Voice chat), audio.output.active is set to AUDIO_CODEC (and no more AUDIO_HDMI)
      • Temporary workaround before automatizing it: go to Audio Settings and set output device back to AUDIO_HDMI
    • I wrote an app to show status of settings before and during a call (Skype or GoogleTalk)...
      • Unfortunately, they are not changing the setting, or at least, there is a setting key called audio_output_channel, which is always set to AUDIO_HDMI
  • Remount /system with RW capabilities
    • Already tried, unsuccessful: mount binary, busybox, adb over wifi, total commander - always "Fail: read only filesystem"
      • Seems some devices (like mine) have a corrupted /system partition, there are 2 solutions:
        • Fix the current image
          • Using a Lubuntu image we can manage to backup, recreate the partition and restore the data
          • Download the Lubuntu image
          • Write the image on the ÂµSD (various methods and OSes here)
          • Once MK 802 II boots, you can use miniand as password
          • Backup the data in /system
          • Delete and re-create the partition (you can use GParted or fdisk)
          • Restore the data
        • Update the firmware or reinstall the existing one
  • How to Update to firmware 2012 10 20
  • Keyboard mapping
    • It is still in EN language, but it can be fixed with apps on Google Play, it is a minor issue

Notes

Trying to rebuild from scratch or using CM9 or CM10 repos is possible, but some features will surely break (video acceleration, wifi...). So the way we must follow should be trying to patch as little as possible to enable all the missing features.

Tuesday, 28 August 2012

Softmodem communication on Android

One of the projects I would like to proceed but I am a little stuck due to limited amount of time...
Being able to communicate between Arduino devices and Android via audio cable.
The idea is simple (and not mine): modulate a carrier wave using frequency changes in correspondence of binary data changes. It is called Frequency Shift Keying.
Obviously, transmission data rates are not suitable for media streaming, but enough for trasmitting small amount of information like commands, data from sensors connected to Arduino board, etc....



There is a similar project, called Androino. Another working example, this time on Apple hardware, is IR-Remote.
I think it was a university project but I think it has been abandoned. Source code is available but I wasn't able to make it work.

Hardware

On the hardware side, all I bought is:

Software

Talking about the software, the Arduino code is ready and available as serial interface. It has been developed by ARMS22 (authors of the board too). It is available on this website. They focused their attention on iPhone, but I want to make it work on Android.

An Android client existed too, but it has been removed from the website. For receiving data on Android, the main idea is to use the Audio API to record chunks of audio, perform a zero crossing algorithm on it to store the "distance" between crossings. Then perform an RLE to translate it into valid byte values.
This will be packed into a threaded library offering an input and an output queue as interface for reading incoming data.
For sending data, some code in Javascript is available and it should not be too difficult to implement it in Java.

The issue can be the battery consumption, since we are continuously recording&processing Audio, having no interrupt on Android side.
I am sure an ADK board is the best way to communicate with Android, but it wouldn't be cross-platform and cross-device.




ODROID-X ordered... New project!

ODROID-X is a development board based on Samsung Galaxy S III CPU (Exynos 4412) produced by Hardkernel.
It seems a perfect platform for Android Platform Development. Kernel sources for Android 4.0.4 are available and Linaro seems to support it too.
My first attempt will be to be aware of the potential of the board and on the stability/reliability of the system.
Then tackle down the missing features and/or bug fixes that would make it a perfect device for:

  • Mini PC (focusing on support for webcams, enabling video calls, chat apps)
  • Android Gaming Console (it seems to work properly)

Next steps...

ODROID-X is more or less ready for Android 4.0.4 (I'll confirm when I'll receive it). The missing features can be the support for webcams (at least the ones supported by Linux Kernel having UVC interface) and gamepads (USB HID or BT HID ones).
The webcam support has been studied and Aptina published a whitepaper providing an overview on Android ICS Camera HAL.

Game controllers seem to be already supported.
After the break, gaming capabilities of ODROID-X.

Thursday, 6 January 2011

Google shows off Android 3.0, the 'Entirely for Tablet' Honeycomb (video)

Google shows off Android 3.0, the 'Entirely for Tablet' Honeycomb (video)

Well, look who just oozed into being, Google's latest flavor of Android, the tablet-friendly 3.0, Honeycomb. We heard talk that 3.0 would be exclusively for tablets, as in not for phones, and that looks to be played out with the text 'Entirely for Tablet' seen early in the video. Perhaps the best thing to say is that this looks more or less nothing like Android. Sure, the browser is the same, and the Gmail app will be familiar to iPad users, but trust us when we say there's a lot of lovely UI in the video above to admire...and a lot of glowly blue lights, too. Apparently we weren't the only ones who saw Tron:Legacy on opening night.
Continue reading Google shows off Android 3.0, the 'Entirely for Tablet' Honeycomb (video)
Google shows off Android 3.0, the 'Entirely for Tablet' Honeycomb (video) originally appeared on Engadget on Wed, 05 Jan 2011 17:18:00 EDT. Please see our terms for use of feeds.

Thursday, 22 April 2010

Android on iPhone

All I can say is... Good Job.
I knew it was possibile to set up a Linux Kernel on Apple iPhone...
But I thought it would be difficult to make all devices work.
David Wang reached the objective, doing more or less the same stuff the x86 porting group did a year ago.



I checked Google Groups android-porting section and there are a lot of informations about that achievement.

You can download some shared stuff from Wang here (idroid-release-0.1.tar.bz.tar).

Tuesday, 21 July 2009

Google Android porting on x86 - UPDATE

Google Android version 1.5 (Cupcake) has been ported on the ASUS EeePc 701.
Two members of Google Groups, beyounn and cwhuang01 created a Google Code group named Android-x86, in which we are "branching" the original Google Android source code in order to obtain an updated, fully featured and working OS.
We were trying to make Cupcake boot on different NetBooks and/or VirtualBox VMs. So we decided to merge our works.
Current status:
  • Intel on-board VGA is working (with 2.6.30 Kernel it is possible to set the right resolution)
  • GPS USB Serial device is correctly binded to OS
  • LAN 100Mbit Network Adapter is working (both DHCP and static configuration)
  • WiFi Atheros 5k Network Adapter is working (both DHCP and static configuration)
  • USB Mouse (software mouse) and/or Keyboard works
  • USB Pen Drive or Memory reader can be mounted as SD Card
  • Audio is working (ALSA was not working due to a rebuild mistake in the Android Make System)
  • OpenGL-ES are going to be supported, there's a group of developers sharing their code here

Friday, 29 May 2009

Porting status and Canonical developers' news

The porting process of latest Google Android sources to ASUS EeePc 701 is almost complete.
Current status:
  • Intel on-board VGA is working ( 640x480 until 2.6.29 Kernel )
  • GPS USB Serial device is correctly binded to OS
  • LAN 100Mbit Network Adapter is working ( both DHCP and static configuration )
  • WiFi Atheros 5k Network Adapter is working ( both DHCP and static configuration )
  • USB Mouse and/or Keyboard works
  • USB Pen Drives can be mounted as SD Cards
  • Audio is not working ( surely an ALSA configuration issue )
Furthermore, our A.API is working. I cannot tell you anything more.

I read in some websites (ArsTechnica) Canonical developers are focusing their attention on run Android applications on Ubuntu.
That can be technically done by writing a Dalvik VM that lies over a Linux distribution.
Or using an emulator, but it exists and it is too slow. No optimization can guarantee a smooth execution of the applications.

Monday, 4 May 2009

Android on Eee Pc

I am porting a Android to an ASUS Eee PC (fully featured, from source code downloaded on 3rd April).
I'll post few tutorials or something similar in next weeks.


You can know more here.