Monday, March 10, 2014

Mesh Network and Internet of Things

What Is a Mesh Network? According to about.com, "Mesh networking is a fancy way of saying every device is able to talk to every other device. The advantage in home automation is multiple paths to the destination device. Imagine you want to drive across town to work. If there’s only possible route to get there then you’ll be late if traffic is heavy or worse, an accident has occurred and stopped traffic. However, if you have multiple alternate routes available then you’ll always get there on time regardless of road conditions. That’s a mesh network."

The world around us is becoming more connected every day, almost to a pervasive extent as microprocessors, BLE (bluetooth smart), ZigBee, and WiFi Direct integrate more than just consumer electronics into our online lives. Everything from the Nest thermostat, BLE enabled lights, to connected refrigerators contain SoCs, enabling us to access them remotely, or use them in ways that we never imagined before. Industrial use of these small, integrated chips is growing like crazy, too. The Internet of Things refers to uniquely identifiable objects and their virtual representations in an Internet-like structure. The following table listed the total addressable market by wireless application:

Wireless Application
Total Addressable Market
Phone accessories (internet / apps centric devices)
> 10 billion
Smart Energy (meters & displays). Which will drive
~ 1 billion
Home Automation (white goods and HVAC)
> 5 billion
Health, Wellness, Sports & Fitness
> 10 billion
Assisted Living
> 5 billion
Animal Tagging (food assurance)
~ 3 billion
Intelligent Transport Systems
>1 billion
M2M (Internet connected devices)
> 10 billion


ZigBee is designed for mesh network which covers large areas, but is not so well suited to ad-hoc networking and requires powered routers within a lower power LAN. BLE will be able to communicate with billions of Bluetooth devices, but it lacked of mesh network support. Fortunately, CSR and Zuli have pushed BLE as a mesh network for the smart home.
The CSR Mesh protocol uses Bluetooth Smart to send messages to other Bluetooth Smart devices in the network which in turn send them onward. Messages can be addressed to individual devices or groups of devices. It is also possible for devices to belong to more than one group. Control is enabled via standard Bluetooth Smart enabled appliances such as light switches, or via the majority of smartphones or tablets available today. 

Most current, common Bluetooth applications allow for up to seven devices to be available for pairing and yet will allow only two to be active at any time and only within a 33ft/10 meter range. CSR Mesh technology allows each Bluetooth Smart device to communicate with all of the others in the network. Each added device will also extend the working range of the network. With CSR Mesh, you can control up to 65,000 devices in a single network! And if that wasn’t enough, there is virtually no limit to the number of networks that can be setup in a given location.

Why are these types of numbers so necessary for the success of the Internet of Things? It was called "Bluetooth Internet of Things Revolution?".

Thursday, February 27, 2014

Smartphone cameras step closer to DSLR cameras

According to YOUKYUNG LEE, AP Technology WriterSmartphone Cameras will step closer to high-end camera with sharper and clearer image quality this year.

Samsung Electronics Co. has beefed up the camera in its Galaxy S5 smartphone due for April release and added smarter camera software, following Sony and Nokia in their upgrades of handset cameras. The tweaks mean smartphone photos, ubiquitous nowadays because of social media such as Facebook and Twitter, will be closer in quality to images captured by digital single-lens reflex cameras, also known as DSLR.
How to give a super-thin smartphone the power of a DSLR camera that can capture moving images with clarity is a key challenge for the likes of Samsung, Sony, Nokia and LG as they try to differentiate their offerings in a crowded handset market. Their efforts to make smartphone cameras more powerful have taken a toll on the compact, point-and-shoot camera market, but catching up to the high-end cameras used by professional photographers had appeared a far-fetched ambition.
The gap is getting narrower thanks mainly to improvements in camera software and other technologies, but may never close completely.
The global wireless show that wraps up in Barcelona on Thursday showed smartphone makers using software trickery to offset their camera weaknesses: inferior image sensors and lack of optical zoom lens. The companies are also making photo manipulation on the phone easier to learn than manually controlling DSLR cameras.
Instead of touting their smartphones as thinner, lighter or bigger screened, Samsung, Sony and LG were boasting how their latest mobile gadgets can record ultra-high definition videos known as 4K, take big-pixel pictures without a second of delay and capture clearer images even at a low-light settings and when a subject is moving.
One trend in smartphone camera this year will be phase detection autofocus, previously available only in cameras with interchangeable lens, said Chris Chute, a director at research company IDC.
Samsung showcased the feature in the Galaxy S5, the latest version of the South Korean company's flagship smartphone. It reduces the time it takes to focus on a subject to 0.3 second so even when the subject is moving, the image can be captured with a sharp edge, said Seshu Madhavapeddy, Samsung's senior vice president for product and technology.
"Now that phones are starting to have this, consumers will only be more likely to use phones for not just everyday pictures, but more and more for special event photography," Chute said.
With the 16 megapixel rear camera in the Galaxy S5, it is possible to preview the result of applying high dynamic range imaging to pictures. HDR imaging usually helps create better pictures but with digital cameras, it is processed after snapping a photo.
Samsung and LG also showed how their high-end smartphones can selectively blur and sharpen a picture by tapping the area a user wants to adjust. This feature, which adds depth to a photo, was a major trait in DSLR cameras. While DSLR cameras did this trick in the image's raw data by changing the lens aperture, Samsung's S5 and LG's G Pro 2 do it through software. Nokia and Sony said their latest smartphones have similar features.
Nokia is also betting big on powerful camera features to lure buyers from Samsung and Apple Inc. Among Nokia's major products is the Lumia 1020 smartphone announced last year, which can take 38 megapixel images. Larger pixels in the camera don't necessarily mean a better picture, which also depends on the lens and image sensors. But bigger pixels allow taking photos with sufficient details for poster-size prints, something that professional photographers are keen on. Other high-end smartphone cameras are around or below 20 megapixels.
Sony's Xperia Z2 smartphone, announced at the Mobile World Congress, has a rear camera with 20.7 megapixels, same as the predecessor Z1, but Sony upgraded the camera's video-recording power to 4K. The Z2 is also equipped with technologies that allow users capture to moving subjects blur-free.
All these handsets from Samsung, Sony and LG can record ultra-HD picture quality video, something that isn't widespread among digital cameras.
"This trend is happening much faster than most predicted," said IDC's Chute of the 4K video recording in high-end smartphones.
But will these moves push smartphone cameras to reach the market reserved for premium cameras over $1,000?
"You're getting to the stage where cameras in high end models are good enough for the majority of consumers in most environments," said Nick Dillon, a senior analyst at Ovum. But there will be a significant quality gap between the pictures from DSLR cameras and smartphones for the foreseeable future, he said.
One reason is the sensor. The larger the sensor is, the better the image's quality.
"There is a limitation in the sensor size you can put in smartphones because it would make smartphones bigger," Dillon said.
And that's one crucial reason why professional photographers haven't swapped their cameras for smartphones.
Smartphone cameras have yet to match high-end digital cameras especially in low-light settings, said Jun Michael Park, a freelance photo journalist in Seoul.
"I still wouldn't switch. Smartphone's small camera comes in handy, but when I take pictures I always think about getting it printed, having a show, or getting them published," Park said.
Winning over photographers like Park could be the next trophy for smartphone makers.

Monday, February 10, 2014

Asus Transformer Prime TF201 with KitKat 4.4.2

Thanks to androidadvices.com, now we can have Android KitKat 4.4.2
run on Asus Transforimer Prime TF201. Android Kitkat has many new attractive features and enhancements including
  • New NFC capabilities through Host Card Emulation
  • Printing framework
  • Storage access framework
  • Low-power sensors
  • SMS provider
  • New ways to build beautiful apps
  • New media capabilities
  • RenderScript Compute
  • New Graphics
  • New Types of Connectivity
  • Support for international Users
  • Security enhancements
  • Tools for analyzing memory use
Before installing a new ROM, as always you should
  • All the data in your Asus Transformer Prime TF201 device should be backed up with the help of below mentioned manual steps. 
  • Enable the USB Debugging Mode in your computer from the path “Settings > Applications > Development > USB debugging”. Also, the minimum battery life should be a minimum of 40% or else there is a risk of device getting turned Off in the middle of firmware update.
  • For applying this custom ROM firmware, you need to make sure that your Asus Transformer Prime TF201 is rooted.
  1. Download KitKat 4.4.2 Android Firmware and Google Apps Package to your computer. Once downloaded, connect your device to the computer with the help of original USB cable and place the two zip files in sdcard root of your Asus Transformer Prime TF201.
  2. Disconnect the device from computer and turn Off your device so that it can be entered in the recovery mode. Press and hold Volume Down + Power buttons together and release the same when you see ASUS logo on screen for entering the device in the recovery mode.
  3. In recovery mode, select options to clear and wipe the data present in your phone. In recovery mode, select “install zip from sd card” and then choose the zip file of KitKat 4.4.2 Android firmware and then the Google Apps Package which you have placed in your phone.
  4. Once the firmware is updated, select “Go Back” and select “reboot system now”. The whole process of firmware update will take around 4 -5 minutes and in some cases it may take more time.
  5. To check on whether the firmware is updated or not, head over to the path “Settings > About Phone” for checking the same where you will see the current firmware version as KitKat 4.4.2.

Monday, February 3, 2014

Tuesday, January 28, 2014

Ubuntu 13.10 Installation Offset 512 Bytes Fix

During the installation of Ubuntu 13.10, I was also blocked by the disk partition problem of offset 512 Bytes.
enter image description here

I tried the following method and it worked:
  • Boot installation CD (or usb stick) so you get the page showing HD needs, internet connection etc.
  • Press Ctrl+alt+F1 to get into "terminal mode".
  • Run sudo parted -a optimal /dev/sda (change drive name accordingly). This will startup parted with this optimal setting for this drive.

Android NDK JNI Programming

One a Android NDK library is built, a JNI (Java Native Interface) code should be prepared to interface your Java application.

JNI is built serving as a bridge between Java and NDK code.

JNI serves as a gateway between native code and Java
We may follow the JDK1.1 JNI guide in Java native Interface Programming, which includes

Declaring Native Methods

On the Java side, you declare a native method with the native keyword and an empty method body. On the native language side, you provide an implementation for the native method. You must take care when writing native methods to "match" the native function implementation with the method signature in Java. javah, explained in Step 3: Create the .h file, is a helpful tool to generate native function prototypes that match the Java native method declaration.

Mapping between Java and Native Types

The JNI defines a mapping of Java types and native (C/C++) types. This section introduces the native types corresponding to both primitive Java types (e.g., intdouble) and Java objects (including strings and arrays).

Accessing Java Strings

Strings are a particularly useful kind of Java objects. The JNI provides a set of string manipulation functions to ease the task of handling Java strings in native code. The programmer can translate between Java strings and native strings in Unicode and UTF-8 formats.

Accessing Java Arrays

Arrays are another kind of frequently-used Java object. You can use JNI array manipulation functions to create arrays and access array elements.

Calling Java Methods

The JNI supports a complete set of "callback" operations that allow you to invoke a Java method from the native code. You locate the method using its name and signature. You can invoke both static and instance (non-static) methods.javap is a helpful tool to generate JNI-style method signatures from class files.

Accessing Java Fields

The JNI allows you to locate the field using the field's name and type signature. You can get hold of both static and instance (non-static) fields. javap is a helpful tool to generate JNI-style field signatures from class files.

Catching and Throwing Exceptions

This section teaches you how to deal with exceptions from within a native method implementation. Your native method can catch, throw, and clear exceptions.

Local and Global References

Native code can refer to Java objects using either local or global references. Local references are only valid within a native method invocation. They are freed automatically after the native method returns. You must explicitly allocate and free global references.

Threads and Native Methods

This section describes the implications of running native methods in the multi-threaded Java environment. The JNI offers basic synchronization constructs for native methods.

Invoking the Java Virtual Machine

This section shows you how to load the Java Virtual Machine from a native library into a native application. This lesson includes how to initialize the Java Virtual Machine and invoke Java methods. The Invocation API also allows native threads to attach to a running Java Virtual Machine and bootstrap themselves into Java threads. Currently, the JDK only supports attaching native threads on Win32. The support for Solaris native threads will be available in a future release.

JNI Programming in C++

In C++, the JNI presents a slightly cleaner interface and performs additional static type checking.
The following tutorials are also very good for Android app development with NDK:
  1. Introduction to Android JNI development Using NDK - Part 1
  2. Introduction to Android JNI development Using NDK - Part 2

Followers

About Me

My photo
HD Multimedia Technology player