This is a mbed Client sample where ZXing is incorporated, and works on GR-PEACH and GR-LYCHEE.

Dependencies:   DisplayApp AsciiFont

Overview

This sample program shows how to use mbed Client together with ZXing which is an open-source, multi-format 1D/2D barcode image processing library. For more info on ZXing, please refer to https://github.com/zxing/zxing.

Required hardware

Application setup

  1. Select the connection type. For details, please refer to the following wiki:
    https://os.mbed.com/teams/Renesas/code/GR-PEACH_mbed-os-client-ZXingSample/wiki/Connection-type.
  2. Set the client credentials. For details, please refer to the following wiki:
    https://os.mbed.com/teams/Renesas/code/GR-PEACH_mbed-os-client-ZXingSample/wiki/Client-credentials.
  3. Change Ethernet settings. For details, please refer to the following wiki:
    https://developer.mbed.org/teams/Renesas/code/GR-PEACH_mbed-os-client-ZXingSample/wiki/Ethernet-settings.
  4. Change Wifi settings. For details, please refer to the following wiki:
    https://os.mbed.com/teams/Renesas/code/GR-PEACH_mbed-os-client-ZXingSample/wiki/Wifi-settings.
  5. Set up an IP address. (This step is optional.) For details, please refer to the following wiki:
    https://os.mbed.com/teams/Renesas/code/GR-PEACH_mbed-os-client-ZXingSample/wiki/IP-address-setup.

Building the example

To build this example:

  1. Import this example onto mbed Compiler.
  2. Configure the example in accordance with Application setup.
  3. Compile the example on mbed Compiler and download the resultant binary file.
  4. Plug the Ethernet cable into GR-PEACH or GR-LYCHEE if you are using Ethernet mode.
  5. Plug the micro-USB cable into the OpenSDA port which lies on the next to the RESET button.
  6. Copy the binary previously downloaded to your PC to GR-PEACH or GR-LYCHEE to flash this example. When the copy is successfully completed, the board is ready to work.
  7. Press the RESET button on the board to run the example.
  8. For verification, please refer to the following wiki:
    https://developer.mbed.org/teams/Renesas/code/GR-PEACH_mbed-os-client-ZXingSample/wiki/Monitoring-the-application.

Application resources

This example exposes four resources listed below:

  1. 3202/0/5700. Decode result of barcode data input from camera (GET).
  2. 3201/0/5850. Blink function, blinks LED when executed (POST).
  3. 3201/0/5853. Blink pattern, used by the blink function to determine how to blink. In the format of 1000:500:1000:500:1000:500 (PUT).
  4. 3201/0/5855. Blink color, used by the blink function. Any of red, green, blue, cyan, yellow and magenta is acceptable if you are using GR-PEACH board (PUT).
  5. 3201/0/5855. Blink color, used by the blink function. Any of green, yellow, orange and red is acceptable if you are using GR-LYCHEE board (PUT).

For more info on how to get notifications when resource 1 changes, or how to use resource 2, 3 and 4, please look at

Import programGR-PEACH_mbed-connector-ZXingSample-node

Node.js based Web Application for mbed Device Connector specific to GR-PEACH_mbed-os-client-ZXingSample

Committer:
1050186
Date:
Mon Apr 17 05:28:29 2017 +0000
Revision:
5:6b6540e303f2
Parent:
0:eb73febb2bba
Child:
6:ea24d9271ff1
Support GCC_ARM, and update libraries.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 0:eb73febb2bba 1 /*
<> 0:eb73febb2bba 2 * Copyright (c) 2016 ARM Limited. All rights reserved.
<> 0:eb73febb2bba 3 * SPDX-License-Identifier: Apache-2.0
<> 0:eb73febb2bba 4 * Licensed under the Apache License, Version 2.0 (the License); you may
<> 0:eb73febb2bba 5 * not use this file except in compliance with the License.
<> 0:eb73febb2bba 6 * You may obtain a copy of the License at
<> 0:eb73febb2bba 7 *
<> 0:eb73febb2bba 8 * http://www.apache.org/licenses/LICENSE-2.0
<> 0:eb73febb2bba 9 *
<> 0:eb73febb2bba 10 * Unless required by applicable law or agreed to in writing, software
<> 0:eb73febb2bba 11 * distributed under the License is distributed on an AS IS BASIS, WITHOUT
<> 0:eb73febb2bba 12 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
<> 0:eb73febb2bba 13 * See the License for the specific language governing permissions and
<> 0:eb73febb2bba 14 * limitations under the License.
<> 0:eb73febb2bba 15 */
<> 0:eb73febb2bba 16 #ifndef MBED_CLIENT_CONFIG_H
<> 0:eb73febb2bba 17 #define MBED_CLIENT_CONFIG_H
<> 0:eb73febb2bba 18
<> 0:eb73febb2bba 19
<> 0:eb73febb2bba 20 // Defines the number of times client should try re-connection towards
<> 0:eb73febb2bba 21 // Server in case of connectivity loss , also defines the number of CoAP
<> 0:eb73febb2bba 22 // re-transmission attempts.Default value is 3
<> 0:eb73febb2bba 23 #define M2M_CLIENT_RECONNECTION_COUNT 3
<> 0:eb73febb2bba 24
<> 0:eb73febb2bba 25 // Defines the interval (in seconds) in which client should try re-connection towards
<> 0:eb73febb2bba 26 // Server in case of connectivity loss , also use the same interval for CoAP
<> 0:eb73febb2bba 27 // re-transmission attempts. Default value is 5 seconds
<> 0:eb73febb2bba 28 #define M2M_CLIENT_RECONNECTION_INTERVAL 5
<> 0:eb73febb2bba 29
<> 0:eb73febb2bba 30 // Defines the keep-alive interval (in seconds) in which client should send keep alive
<> 0:eb73febb2bba 31 // pings to server while connected through TCP mode. Default value is 300 seconds
<> 0:eb73febb2bba 32 #define M2M_CLIENT_TCP_KEEPALIVE_TIME 300
<> 0:eb73febb2bba 33
<> 0:eb73febb2bba 34 // Defines the maximum CoAP messages that client can hold, maximum value is 6
<> 0:eb73febb2bba 35 #define SN_COAP_DUPLICATION_MAX_MSGS_COUNT 2
<> 0:eb73febb2bba 36
<> 0:eb73febb2bba 37 // Defines the size of blockwise CoAP messages that client can handle.
<> 0:eb73febb2bba 38 // The values that can be defined uust be 2^x and x is at least 4.
<> 0:eb73febb2bba 39 // Suitable values: 0, 16, 32, 64, 128, 256, 512 and 1024
<> 0:eb73febb2bba 40 #define SN_COAP_MAX_BLOCKWISE_PAYLOAD_SIZE 1024
<> 0:eb73febb2bba 41
<> 0:eb73febb2bba 42 // Many pure LWM2M servers doen't accept 'obs' text in registration message.
<> 0:eb73febb2bba 43 // While using Client against such servers, this flag can be set to define to
<> 0:eb73febb2bba 44 // disable client sending 'obs' text for observable resources.
<> 0:eb73febb2bba 45 #undef COAP_DISABLE_OBS_FEATURE
<> 0:eb73febb2bba 46
<> 0:eb73febb2bba 47 // Disable Bootstrap functionality in client in order to reduce code size, if bootstrap
<> 0:eb73febb2bba 48 // functionality is not required.
<> 0:eb73febb2bba 49 #undef M2M_CLIENT_DISABLE_BOOTSTRAP_FEATURE
<> 0:eb73febb2bba 50
<> 0:eb73febb2bba 51 #endif // MBED_CLIENT_CONFIG_H
<> 0:eb73febb2bba 52