What are the j2me bluetooth frameworks available? - frameworks

I am new to J2ME. I am working on a software which will send a image (taken from the camera) to a pc for further processing and am looking for a bluetooth framework. What are the ones, with good documentation and examples, available ?

Bluetooth APIs for J2ME are defined JSR 82: Java APIs for Bluetooth.
For usage information you can read for example:
Using the Java APIs for Bluetooth Wireless Technology, Part 1 - API Overview
Using the Java APIs for Bluetooth, Part 2 - Putting the Core APIs to Work

Related

Movesense low level API

I am planning to connect Movesense to Arduino with BLE Shield.
Where I can get deep protocol description to get position data from the Movesense? Do this information public?
On Android I have library mdslib-1.39.0(1)-release.aar that allows connection to Movesense, but have not able to get code from it, to create Arduino connection to Movesense, based on Android sample.
The "Whiteboard protocol" that MDS implements on top of BLE is quite complicated as well as proprietary, so it is not possible to have that on Arduino (or outside the common environments). However that is not the only way to communicate with the Movesense sensor.
For low level BLE access, you can either define your own GATT service using CustomGATTService, or use one of the existing "out of the box" profiles (HRS or Nordic UART Service. These will be nicer in 2.0).
The new 2.0 comes with a sample that provides any sensor data over GATT (as a binary stream) and we've back ported it to 1.9.4 as well (find it in https://bitbucket.org/suunto/movesense-device-lib/downloads/).
In my opinion if you just want IMU-data, the "gatt_sensordata_app"-sample is by far the easiest way to go.
Full disclosure: I work for the Movesense team

IoTivity vs AllJoyn - what is the difference?

Open Interconnect Consortium has just released IoTivity, an open source framework for IoT, similar to AllSeen Alliance's AllJoyn framework. What are the differences between them, apart from IoTivity being based on CoAP and AllJoyn based on D-Bus? Are they interoperable?
This is a community wiki, so please expand it if you can.
Architecture
IoTivity
IoTivity provides 4 basic components:
Discovery
Data transmission
Data Management
Device management
AllJoyn
AllJoyn provides the following components:
App Code
Service Frameworks Libraries
Core Library
Router
It also provides the Thin variant without the Router.
Protocols
IoTivity
IoTivity will be using multiple protocols, but for now it uses CoAP. IT also has a MQTT plugin.
AllJoyn
AllJoyn provides its own bus based on D-Bus Wire protocol. AllJoyn Gateway Agent will have connectors for REST, MQTT, XMPP and TR-069.
Supported platforms
IoTivity
IoTivity currently supports:
Android
Arduino
darwin/iOS
Linux
Tizen
Windows
Yocto
AllJoyn
AllJoyn currently supports:
Android
Arduino
iOS
Linux
OS X
Windows
As explained at OpenIoT 2016 :
Full presentation at :
http://events.linuxfoundation.org/sites/events/files/slides/OpenIoT%20Summit%20Greg%20Burns.pdf
https://www.youtube.com/watch?v=siT2TPnTRHY&list=PLq2bxbH0KVGmtGRUQ4G7RfxsDeGtc9Yxz
When it comes to supported transports, AllJoyn now supports more. It supports IP-related physical layers like WiFi, WiFi-Direct, Ethernet and Powerline. Also, it can support bluetooth with their gateway agent. Other radios such as Bluetooth LE, 6LowPan, ZigBee or Z–Wave are encouraged to be added.
The following is a snapshot from the QA session in Allseen official website.
Reference: https://allseenalliance.org/alliance/faq#n142
One additional difference between these frameworks is how they treat Intellectual Property rights. AllSeen require from members not to sue other vendors which used AllJoyn for their product (Patent Non-Assertion Pledge).
Iotivity is easy to use, it provides C and C++ sdk for developing application on constrained devices. Quite easy to use for a basic application, provides GET,PUT ,POST and Observe functionality. Compared to Alljoyn it is faster and easier to develop apps on it.
Theyre completely different frameworks made by different companies that are both trying to achieve the same (or similar) thing. Its like comparing iOS to android.
They are not interoperable.

Any advice for iPhone Wireless Comms with Embedded Linux Device?

I am looking for advice on protocols for use in LAN comms between an iPhone and an embedded Linux device. The embedded Linux device requires the following functionality...
Connectible to Wireless LAN.
Discoverable as a device on the Wireless LAN.
(Virtually) connectible with iPhone.
Remotely Callable API provided to the iPhone.
Able to remotely call back functions on the iPhone.
I am looking to use platform independent protocols to achieve this functionality because the mobile application will be ported from the iPhone to other mobile platforms like Android. Since I am a newbie with Embedded Linux, my research (and possibly naivety) suggests that said functionality could be realised with the following protocols...
DHCP for obtaining dynamic IP address.
DNLA? (Bonjour is native to iOS right?)
Connection-oriented communication implies TCP.
SOAP or REST architecture on HTTP.
SOAP or REST architecture on HTTP.
Can you suggest other, more suitable protocols? Am I barking up the wrong tree? Is there a much more simple way I could achieve this functionality? For example, providing the remote API using only a TCP socket?
Any advice you can offer is welcome...
Look into 0mq. It's a scalable messaging library that provides a message queue without requiring a message broker.
-Has objective-c bindings to help you implement in iOS
-Has java bindings to help you implement in Android.
-Small footprint.
I did something similar - an Arduino that streams data to an iPhone app connected over WiFi using the UDP protocol.

iPhone SDK 3.0: where is the Bluetooth?

i'm participating in the iPhone Developer Program and i have access to the iPhone 3.0 firmware and SDK.
one of the new features of the iPhone 3.0 -- is ability to use Bluetooth, but i can't find any documentation about it.
can someone point me please -- where is it?
The only way of using bluetooth directly is if you join the Made for iPod / Works With iPhone program and integrate the Apple authentication chip into your custom device. Once you've done that, you can use the ExternalAccessory framework which exposes a low-level IO stream API to the device.
Frameworks like Core Audio will let you play and record music via bluetooth headsets and the Gamekit framework will let you discover and talk to other devices via bluetooth, but the fact that it's bluetooth is not exposed to the developer at all.
Look at the GameKit API - it provides simple high level access to BlueTooth connections between devices (built on Apple's Bonjour discovery service).
If I recall correctly, you aren't allowed direct access to the Bluetooth, but rather, you are able to use certain API calls that will search for nearby devices. However, I'm not a developer currently, so I can't point you at any documentation. Perhaps someone else can back me up with a bit more information.
My iphone 3G & 4 will connect to my Sony BT1500 car head unit which was made well before iPhone existed (i.e it's not iPod signed).

Access to the ANT Wireless and GPS receiver modules in iPhone/iPod Touch

I'm an iPhone/iPod-touch newbie, and would like to write an iPhone application utilizing the built-in ANT wireless radio. As I found out both the iPhone and iPod Touch have an ANT wireless module, that is used in the Nike+iPod Sport Kit to connect the Nike sensor with the iPhone/iPod.
After some googleing, I didn't find much (one article was interesting, but not what I'm looking for).
So my questions:
Is it possible to access the built-in ANT Wireless device in iPhone/iPod Touch?
Is it possible to access the built-in GPS module in iPhone?
Are there some APIs or SDKs that provide access to the ANT or the GPS module?
I can imagine that Apple is not eager opening the access to all of the iPhone features. But at least the GPS module should be accessible.
The GPS radio is only accessible through the Core Location API, which will give you a latitude and longitude fix to your desired level of accuracy, but does not provide any low-level access to the radio. The ANT radio is not available using public APIs, although it may be possible to talk to it on a jailbroken phone. Any such application could not be distributed through the App Store, however.
There are no APIs to take advantage of the ANT protocol. However, there is an API to exploit the integrated GPS, called Core Location and fairly easy to use.
The upcoming SDK 3.0 provides support for connecting to external devices through both cable and Bluetooth connections.