This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
near_field_comms [2014/10/06 16:22] FGraham [Resources] |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Near Field Communication (NFC) ====== | ||
- | |||
- | ===== Summary ===== | ||
- | |||
- | Near Field Communication (NFC) application allows user to set the power of a default device NFC adapter to either an on state or an off state, automatically read the NFC Data Exchange Format (NDEF) text data from NFC tag once it is attached to NFC adapter, write the NDEF text data to the attached NFC Tag through the <nowiki>tizen.nf</nowiki>c interface. | ||
- | |||
- | === Features === | ||
- | |||
- | * Can read existing NFC tag | ||
- | * Can write to NFC tag | ||
- | * Can edit existing data on NFC tag | ||
- | |||
- | Data binding is achieved via Knockoutjs library and jQuery is used for manipulation with %%HTML%% elements. | ||
- | |||
- | ===Shared services === | ||
- | |||
- | * Bootstrap | ||
- | * Car indicators | ||
- | * Configuration | ||
- | * Text-to-speech | ||
- | * Theme engine | ||
- | |||
- | === Shared components === | ||
- | |||
- | * Global methods | ||
- | * jQuery extensions | ||
- | * Alphabet Bookmarking | ||
- | * Audio Player | ||
- | * Bottom Panel | ||
- | * Box Caption | ||
- | * Button Controls | ||
- | * Clock | ||
- | * Incoming Call handler | ||
- | * Library | ||
- | * Progress Bar | ||
- | * Tabs | ||
- | * Top Bar Icons | ||
- | * Settings | ||
- | |||
- | |||
- | |||
- | ===== Resources ===== | ||
- | |||
- | |||
- | Watch [[https://download.automotivelinux.org/POC/PoC_Videos/OSTC_NFC_PoC.mp4|Near Field Comms]]. | ||
- | |||
- | Access the [[https://download.automotivelinux.org/POC/PoC_DRDs/DRD_NFC_v1-5.xlsx|Design Requirements Document (DRD)]]. | ||
- | |||
- | Download the [[https://download.automotivelinux.org/POC/PoC_WGT/NFC_AGL_03SEP2014.wgt|Application WGT]]. | ||
- | |||
- | ===== What the app does ===== | ||
- | |||
- | It facilitates the interface with, reading of, and writing to tags using Near Field Communication. | ||
- | |||
- | {{ :nfc_does.jpg |{{ :sdl_whatappdoes.png |}} | ||
- | |||
- | |||
- | ===== Technical Details ===== | ||
- | |||
- | The sections below are taken from directions for what is known as the Tizen IVI 3.0-M2-EOY (commonly called 'the Jan. 15 image'. The current Tizen release is dated 2014.01.14, and may require some adjustment. | ||
- | |||
- | |||
- | |||
- | ===== Installation Prerequisites ===== | ||
- | |||
- | The following installation directions take the base Tizen image and install needed supporting software | ||
- | |||
- | ===== Instructions for debugging WRT Apps on Tizen IVI (installation, removal, and deployment) ===== | ||
- | |||
- | Tizen IVI WRT applications are built into widget ('.wgt') files for deployment (a format based on the %%W3C%% widget specification, see <nowiki>http://www.w3.org/TR/widgets/</nowiki> for more information). Once you have built or received the widget files for one or more applications that you wish to deploy and run, the next step is to copy them onto the target device. Common options for this would be tools like scp/sftp (in a Linux/Unix environment), FileZilla (Windows and Mac) or Cyberduck (Mac). | ||
- | |||
- | Once the .wgt files have been transferred to the target machine, they may be installed, launched and uninstalled. | ||
- | |||
- | To get a list of currently installed applications, use the following command from a terminal (or remote shell/ssh session) on the target hardware (log in as root with the password tizen): | ||
- | |||
- | root:~> wrt-launcher -l | ||
- | |||
- | This will produce output similar to the following: | ||
- | |||
- | ^ No ^ Name ^ Version ^ GUID ^ Package ID ^ App ID ^ | ||
- | | 1 | saythis | 1.0.0 | %%http://yourdomain/sayThis%% | lYjFlj49Q4 | lYjFlj49Q4.saythis | | ||
- | | 2 | Settings | 1.0.0 | %%http://yourdomain/Settings%% | ODBQpKvkS1 | ODBQpKvkS1.Settings | | ||
- | | 3 | MediaPlayer | 1.0.0 | %%http://yourdomain/MediaPlayer %% | t8j6HTRpuz | t8j6HTRpuz.MediaPlayer | | ||
- | | 4 | Store | 8.2.4401 | %%http://com.intel.tizen/store%% | intelPoc13 | intelPoc13.Store | | ||
- | | 5 | NFC | 12.1.3750 | %%http://com.intel.tizen/NFC%% | intelPoc20 | intelPoc20.NFC | | ||
- | |||
- | |||
- | If the application you wish to install is not already installed, simply enter (using intelPoc20.NFC.wgt as an example): | ||
- | |||
- | root:~> wrt-installer -i intelPoc20.NFC.wgt | ||
- | |||
- | If successful, you should see output such as the following: | ||
- | |||
- | =========================================================== | ||
- | # wrt-installer # | ||
- | # argc [3] | ||
- | # argv[0] = [wrt-installer] | ||
- | # argv[1] = [-i] | ||
- | # argv[2] = [intelPoc20.NFC.wgt] | ||
- | ## wrt-installer : intelPoc20.NFC.wgt installation was successful. | ||
- | =========================================================== | ||
- | |||
- | If unsuccessful, you may see errors such as 'invalid widget package', 'privilege level violation' or, if the application is already installed (and its widget file was built with a different signature than the one you wish to install), 'invalid signature'. The first two errors are out of scope for this document. | ||
- | |||
- | If you see 'invalid signature', and the widget file has to your knowledge been created with a valid signature, the likely cause is a conflict between the signature of the currently installed version and that of the new version. Though both signatures may be valid, the system treats the upgrade of an existing package with a different signature as a security violation. To work around this issue, simply uninstall the application and subsequently install the new version: | ||
- | |||
- | root:~> wrt-installer -un intelPoc20.NFC.wgt <-- note: use the App ID when | ||
- | un-installing and the full widget filename when installing | ||
- | |||
- | If the uninstall is successful, you should see output like the following: | ||
- | |||
- | =========================================================== | ||
- | # wrt-installer # | ||
- | # argc [3] | ||
- | # argv[0] = [wrt-installer] | ||
- | # argv[1] = [-un] | ||
- | # argv[2] = [intelPoc20.NFC.wgt] | ||
- | =========================================================== | ||
- | ## wrt-installer : intelPoc20.NFC.wgt uninstallation was successful. | ||
- | |||
- | Refer to installation instructions above for the subsequent installation steps. | ||
- | |||
- | In order to launch and run an installed application, issue the following command with the application's App ID as an argument: | ||
- | |||
- | root:~> wrt-launcher -s intelPoc20.NFC.wgt | ||
- | |||
- | You should see the application start and run on the target device. | ||
- | |||
- | To launch the application in debug mode, add the '-d' flag: | ||
- | |||
- | root:~> wrt-launcher -d -s intelPoc20.NFC.wgt | ||
- | |||
- | This will produce output like the following: | ||
- | |||
- | root:~/wgt> wrt-launcher -d -s intelPoc20.NFC.wgt | ||
- | port: 36070 | ||
- | result: launched | ||
- | |||
- | The port number referenced is a random high port which allows one to connect to the target device with a web browser using a %%URL%% of the form: | ||
- | |||
- | http://<ip address or name of target device>:<port #> | ||
- | |||
- | **For example:** | ||
- | |||
- | http://192.168.1.223:36070 | ||
- | |||
- | Once connected, you should see a single link in the upper right of the resulting web page, e.g.: | ||
- | |||
- | file:///opt/usr/apps/intelPoc20/res/wgt/index.html | ||
- | |||
- | Clicking that link will launch Webkit Web Inspector, a set of web development tools that should look familiar to users of Firefox Firebug or Chrome Dev Tools. Click the 'Console' icon in the toolbar to go to the Javascript console. Press ctrl-R, or type: | ||
- | |||
- | window.location.reload(); | ||
- | |||
- | ...to reload the application in order to display the startup/initialization functions associated with the app (since the app has already started by the time the debug interface is available). | ||
- | |||
- | To exit a running application, issue the following command with the application's App ID as an argument: | ||
- | |||
- | root:~> wrt-launcher -k intelPoc20.NFC | ||
- | |||
- | **Instruction to the console:** | ||
- | |||
- | Assumptions these are all running from the Tizen platform and can access the console by SSH command or Control ALT F4 for a terminal. Tizen instructions are at Tizen.org | ||
- | |||
- | Install | ||
- | |||
- | wrt-installer -i intelPoc20.NFC.wgt | ||
- | |||
- | Launch | ||
- | |||
- | wrt-installer -i intelPoc20.NFC.wgt | ||
- | |||
- | |||
- | ===== Known Bugs ===== | ||
- | |||
- | ^ Issue Type ^ Key ^ Summary | | ||
- | | Bug | TC-1243 |Buxton must be used in package platform/core/connectivity/nfc-manager-neard | | ||
- | | Bug | TC-1178 |Remove Flora license from package platform/core/connectivity/nfc-manager-neard | | ||
- | | Bug | TC-263 |Neard bluetooth pairing does not work by default | | ||
- | | Bug | TC-48 |[3.0] Kernel backtrace when tethering connection created | | ||
- | | Bug | TC-214 |capi-system-sensor (and other capi packages) doesn't report its version number | | ||
- | | Bug | TC-199 |Support emulator image builds for Tizen IVI | | ||
- | | Bug | TC-1248 |Native keyboard doesn’t exit after entering text | | ||
- | |||
- | ===== Release History ===== | ||
- | |||
- | ==== Features ==== | ||
- | |||
- | * Can read existing NFC tag | ||
- | * Can write to NFC tag | ||
- | * Can edit existing data on NFC tag | ||
- | |||
- | |||
- | === Bug Fixes === | ||
- | |||
- | ^ Issue Type ^ Key ^ Summary ^ | ||
- | | Bug |TC-325 | [2.0] NFC doesn't work | | ||
- | | Bug |TC-2580 | tizen.nfc WEB API is not available | | ||
- | | Bug |TC-612 | No NFC UI Interface in Settings | | ||
- | | Bug |TC-3002 | [SDK][Simulator][NFC panel] Fail to send/receive message with NFC panel (nfc tag and nfc peer) | | ||
- | | Bug |TC-310 | BT handover via NFC failes | | ||
- | | Bug |TC-575 | Integrate NFC to IVI 2.0 image | | ||
- | | Bug |TC-2904 | [SDK][Simulator][NFC] Demo application unable to connect nfc panel | | ||
- | | Bug |TC-1825 | [3.0] NFC adapters are not enabled by default | | ||
- | | Bug |TC-251 | It fails to finish bluetooth pairing through NFC | | ||
- | | Bug |TC-1067 | [3.0] remove the nfc-* packages from default build | | ||
- | | Bug |TC-1182 | [3.0] fail to push device through NFC | | ||
- | | Bug |TC-1607 | [Behavior]Blank white page presents when run nfc, location tests | | ||
- | | Bug |TC-1618 | [IVI] [TizenAPI/Communication/NFC] Test on Method and attribute of NFCAdapter got fails | | ||
- | | Bug |TC-1484 | [IVI][TizenAPI/Communication/NFC] web test for method of NFCTag fails | | ||
- | | Bug |TC-295 | nfc-manager-neard update causes several packages to become unresolvable and images to fail | | ||
- | | Bug |TC-616 | fail to push device through NFC | | ||
- | | Bug |TC-1803 | [IVI] [TizenAPI/Communication/NFC]Test of “Check if NFCManager object has method setExclusiveMode()” fails | | ||
- | | Bug |TC-2521 | [REG] It fails to connect to encrypted WiFi AP though NFC | | ||
- | | Bug |TC-335 | Package platform/core/connectivity/nfc-manager-neard is not compliant with multi-user architecture | | ||
- | | Bug |TC-1665 | [3.0] The neard service is not enabled | | ||
- | | Bug |TC-2202 | [TIVISBB] neard even cannot be launched manually | | ||
- | | Bug |TC-2930 | [SDK][Simulator][Toggle widget]Application move to left-up unexpected when drag toggle widget (from on/off to off/on )in the application | | ||
- | | Bug |TC-1312 | [3.0]Incorrect package name when install ivi-qa pattern: should be neard-test instead of neard-tizen-test | | ||
- | | Bug |TC-1078 | [3.0]Incorrect package name when install ivi-qa pattern: should be neard-tizen-test instead of neard-test | | ||
- | | Bug |TC-1928 | libnl needs to be upgraded to provide ability to automatically load kernel modules | | ||
- | | Bug |TC-2451 | Core dumps not working | | ||
- | | Bug |TC-2123 | [3.0] neard DBus interface 'org.neard.Device' missed | | ||
- | | Bug |TC-1922 | Iwlwifi module crashing | | ||
- | | Bug |TC-1854 | Neard bt-handover script errors: no such device | | ||
- | | Bug |TC-1780 | [3.0] mrpd.service and gptp.service are not enabled | | ||
- | | Bug |TC-1251 | IVI image does not boot in runlevel 5 | | ||
- | | Bug |TC-173 | onattach callback of NFCAdapter's setTagListener method is not triggered when attached NFC Tag has no records | | ||
- | |||