Send the data of GR-PEACH_HVC-P2_sample to the cloud.

Dependencies:   AsciiFont GR-PEACH_video GraphicsFramework LCD_shield_config R_BSP USBHost_custom easy-connect-gr-peach

Fork of mbed-os-example-client by mbed-os-examples

Note at the time of sample import

Please not check the "Update all libraries to the latest version" at the time of import.

Warning!

When exporting and using it, increase the following stack size.

mbed-os/features/FEATURE_LWIP/lwip-interface/lwipopts.h

#define TCPIP_THREAD_STACKSIZE      1024
->
#define TCPIP_THREAD_STACKSIZE      2048

Overview

This is a sample to send the analysis result of GR-PEACH_HVC-P2_sample to the cloud using mbed-client. Please refer to following for operation of HVC-P2.

Import programGR-PEACH_HVC-P2_sample

Sample to operate omron HVC-P2 on GR-PEACH.


Required hardware

Application setup

Client credentials

To register the application to mbed Device Connector, you need to create and set the client side certificate.

  1. Go to https://connector.mbed.com/ and log in with your mbed account
  2. On mbed Device Connector, go to https://connector.mbed.com/#credentials and click the Get my device security credentials button to get new credentials for your device.
  3. Replace the contents in security.h of this example with content copied above.

Ethernet settings

This sample uses Ethernet as the default connection type. To change the connection type, set WIFI_BP3595 in mbed_app.json:

mbed_app.json

"network-interface":{
    "help": "Options are ETHERNET, WIFI_ESP8266, WIFI_BP3595",
    "value": "ETHERNET"
},


To specify MAC address, add fllowing function to main.cpp. (When using Wifi, setting of MAC address is not necessary.)

Specify MAC address

// set mac address
void mbed_mac_address(char *mac) {
    mac[0] = 0x00;
    mac[1] = 0x02;
    mac[2] = 0xF7;
    mac[3] = 0xF0;
    mac[4] = 0x00;
    mac[5] = 0x00;
}


Wifi settings

This example can use BP3595 Wifi Interface for managing the wireless connectivity. To run this example using Wifi, you need:

  1. A BP3595 Wifi module ( https://developer.mbed.org/components/BP3595-for-GR-PEACH/ )
  2. Mount BP3595 onto GR-PEACH
  3. Close GR-PEACH's JP21 (https://developer.mbed.org/teams/Renesas/wiki/Jumper-settings-of-GR-PEACH)
  4. In the mbed_app.json file, change

mbed_app.json

"network-interface":{
    "help": "Options are ETHERNET, WIFI_ESP8266, WIFI_BP3595",
    "value": "WIFI_BP3595"
},


Provide your Wifi SSID and password here and leave \" in the beginning and end of your SSID and password as shown in the example below:

mbed_app.json

"wifi-ssid": {
    "help": "WiFi SSID",
    "value": "\"SSID\""
},
"wifi-password": {
    "help": "WIFI Password",
    "value": "\"Password\""
}


Specify the security type for connection to be used. When the security type is WPA2, you need to specify NSAPI_SECURITY_WAP as follows:

mbed_app.json

"wifi-security":{
    "help": "Options are NSAPI_SECURITY_WEP, NSAPI_SECURITY_WPA, NSAPI_SECURITY_WPA2, NSAPI_SECURITY_WPA_WPA2",
    "value": "NSAPI_SECURITY_WEP"
},

By default, NSAPI_SECURITY_WPA_WPA2 is specified here.

Application resources

This example exposes four resources listed below:

  1. 3202/0/5700. Recognition result from HVC-P2 (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 (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

# This is a Web Application for GR-PEACH_mbed-os-client-ZXingSample, but it can also be used for this sample.

Committer:
mbed_official
Date:
Fri Oct 28 12:00:11 2016 +0100
Revision:
25:32b45b3e4d12
Parent:
24:5db6419ee4be
Merge pull request #96 from ARMmbed/mbedTLS_cleanup

Cleanup of mbedTLS config
.
Commit copied from https://github.com/ARMmbed/mbed-os-example-client

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 24:5db6419ee4be 1 /**
mbed_official 5:b7d7ca715fdb 2 * Minimal configuration for using mbedtls as part of mbed-client
mbed_official 5:b7d7ca715fdb 3 *
mbed_official 24:5db6419ee4be 4 * NOTE! This is an optimized, minimal configuration for mbed Client.
mbed_official 24:5db6419ee4be 5 * We know it works with mbed Client but if you want to add more
mbed_official 24:5db6419ee4be 6 * services/communications to the application yourself - please ensure
mbed_official 24:5db6419ee4be 7 * you update this configuration accordingly. The default configuration
mbed_official 24:5db6419ee4be 8 * can be found from mbedTLS Github:
mbed_official 24:5db6419ee4be 9 *
mbed_official 24:5db6419ee4be 10 * https://github.com/ARMmbed/mbedtls/blob/development/include/mbedtls/config.h
mbed_official 24:5db6419ee4be 11 *
mbed_official 24:5db6419ee4be 12 *
mbed_official 5:b7d7ca715fdb 13 * Copyright (C) 2006-2016, ARM Limited, All Rights Reserved
mbed_official 5:b7d7ca715fdb 14 * SPDX-License-Identifier: Apache-2.0
mbed_official 5:b7d7ca715fdb 15 *
mbed_official 5:b7d7ca715fdb 16 * Licensed under the Apache License, Version 2.0 (the "License"); you may
mbed_official 5:b7d7ca715fdb 17 * not use this file except in compliance with the License.
mbed_official 5:b7d7ca715fdb 18 * You may obtain a copy of the License at
mbed_official 5:b7d7ca715fdb 19 *
mbed_official 5:b7d7ca715fdb 20 * http://www.apache.org/licenses/LICENSE-2.0
mbed_official 5:b7d7ca715fdb 21 *
mbed_official 5:b7d7ca715fdb 22 * Unless required by applicable law or agreed to in writing, software
mbed_official 5:b7d7ca715fdb 23 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
mbed_official 5:b7d7ca715fdb 24 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mbed_official 5:b7d7ca715fdb 25 * See the License for the specific language governing permissions and
mbed_official 5:b7d7ca715fdb 26 * limitations under the License.
mbed_official 5:b7d7ca715fdb 27 *
mbed_official 5:b7d7ca715fdb 28 * This file is part of mbed TLS (https://tls.mbed.org)
mbed_official 5:b7d7ca715fdb 29 */
mbed_official 5:b7d7ca715fdb 30
mbed_official 5:b7d7ca715fdb 31
mbed_official 5:b7d7ca715fdb 32 #ifndef MBEDTLS_CUSTOM_CONFIG_H
mbed_official 5:b7d7ca715fdb 33 #define MBEDTLS_CUSTOM_CONFIG_H
mbed_official 5:b7d7ca715fdb 34
mbed_official 5:b7d7ca715fdb 35 /* System support */
mbed_official 5:b7d7ca715fdb 36 #define MBEDTLS_HAVE_ASM
mbed_official 5:b7d7ca715fdb 37
mbed_official 5:b7d7ca715fdb 38 /* mbed TLS feature support */
mbed_official 5:b7d7ca715fdb 39 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
mbed_official 5:b7d7ca715fdb 40 #define MBEDTLS_ECP_NIST_OPTIM
mbed_official 5:b7d7ca715fdb 41 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
mbed_official 5:b7d7ca715fdb 42 #define MBEDTLS_SSL_PROTO_TLS1_2
mbed_official 5:b7d7ca715fdb 43 #define MBEDTLS_SSL_PROTO_DTLS
mbed_official 5:b7d7ca715fdb 44 #define MBEDTLS_SSL_DTLS_ANTI_REPLAY
mbed_official 5:b7d7ca715fdb 45 #define MBEDTLS_SSL_DTLS_HELLO_VERIFY
mbed_official 5:b7d7ca715fdb 46 #define MBEDTLS_SSL_EXPORT_KEYS
mbed_official 5:b7d7ca715fdb 47
mbed_official 5:b7d7ca715fdb 48 /* mbed TLS modules */
mbed_official 5:b7d7ca715fdb 49 #define MBEDTLS_AES_C
mbed_official 5:b7d7ca715fdb 50 #define MBEDTLS_ASN1_PARSE_C
mbed_official 5:b7d7ca715fdb 51 #define MBEDTLS_ASN1_WRITE_C
mbed_official 5:b7d7ca715fdb 52 #define MBEDTLS_BIGNUM_C
mbed_official 5:b7d7ca715fdb 53 #define MBEDTLS_CIPHER_C
mbed_official 5:b7d7ca715fdb 54 #define MBEDTLS_CTR_DRBG_C
mbed_official 5:b7d7ca715fdb 55 #define MBEDTLS_ECP_C
mbed_official 5:b7d7ca715fdb 56 #define MBEDTLS_ENTROPY_C
mbed_official 5:b7d7ca715fdb 57 #define MBEDTLS_MD_C
mbed_official 5:b7d7ca715fdb 58 #define MBEDTLS_OID_C
mbed_official 5:b7d7ca715fdb 59 #define MBEDTLS_PK_C
mbed_official 5:b7d7ca715fdb 60 #define MBEDTLS_PK_PARSE_C
mbed_official 5:b7d7ca715fdb 61 #define MBEDTLS_SHA256_C
mbed_official 5:b7d7ca715fdb 62 #define MBEDTLS_SSL_COOKIE_C
mbed_official 5:b7d7ca715fdb 63 #define MBEDTLS_SSL_CLI_C
mbed_official 5:b7d7ca715fdb 64 #define MBEDTLS_SSL_SRV_C
mbed_official 5:b7d7ca715fdb 65 #define MBEDTLS_SSL_TLS_C
mbed_official 5:b7d7ca715fdb 66
mbed_official 5:b7d7ca715fdb 67 // XXX mbedclient needs these: mbedtls_x509_crt_free, mbedtls_x509_crt_init, mbedtls_x509_crt_parse
mbed_official 5:b7d7ca715fdb 68 #define MBEDTLS_X509_USE_C
mbed_official 5:b7d7ca715fdb 69 #define MBEDTLS_X509_CRT_PARSE_C
mbed_official 5:b7d7ca715fdb 70
mbed_official 5:b7d7ca715fdb 71 // XXX: clean these up!!
mbed_official 5:b7d7ca715fdb 72 #define MBEDTLS_SHA512_C
mbed_official 5:b7d7ca715fdb 73 #define MBEDTLS_ECDH_C
mbed_official 5:b7d7ca715fdb 74 #define MBEDTLS_GCM_C
mbed_official 5:b7d7ca715fdb 75
mbed_official 5:b7d7ca715fdb 76 #define MBEDTLS_ECDH_C
mbed_official 5:b7d7ca715fdb 77 #define MBEDTLS_ECDSA_C
mbed_official 5:b7d7ca715fdb 78 #define MBEDTLS_X509_CRT_PARSE_C
mbed_official 5:b7d7ca715fdb 79
mbed_official 5:b7d7ca715fdb 80 // Remove RSA, save 20KB at total
mbed_official 5:b7d7ca715fdb 81 #undef MBEDTLS_RSA_C
mbed_official 5:b7d7ca715fdb 82 #undef MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
mbed_official 5:b7d7ca715fdb 83
mbed_official 5:b7d7ca715fdb 84 // Remove error messages, save 10KB of ROM
mbed_official 5:b7d7ca715fdb 85 #undef MBEDTLS_ERROR_C
mbed_official 5:b7d7ca715fdb 86
mbed_official 5:b7d7ca715fdb 87 // Remove selftesting and save 11KB of ROM
mbed_official 5:b7d7ca715fdb 88 #undef MBEDTLS_SELF_TEST
mbed_official 5:b7d7ca715fdb 89
mbed_official 5:b7d7ca715fdb 90 // Reduces ROM size by 30 kB
mbed_official 5:b7d7ca715fdb 91 #undef MBEDTLS_ERROR_STRERROR_DUMMY
mbed_official 5:b7d7ca715fdb 92 #undef MBEDTLS_VERSION_FEATURES
mbed_official 5:b7d7ca715fdb 93 #undef MBEDTLS_DEBUG_C
mbed_official 5:b7d7ca715fdb 94
mbed_official 5:b7d7ca715fdb 95 // needed for parsing the certificates
mbed_official 5:b7d7ca715fdb 96 #define MBEDTLS_PEM_PARSE_C
mbed_official 5:b7d7ca715fdb 97 // dep of the previous
mbed_official 5:b7d7ca715fdb 98 #define MBEDTLS_BASE64_C
mbed_official 5:b7d7ca715fdb 99
mbed_official 24:5db6419ee4be 100 // Reduce IO buffer to save RAM, default is 16KB
mbed_official 5:b7d7ca715fdb 101 #define MBEDTLS_SSL_MAX_CONTENT_LEN 2048
mbed_official 5:b7d7ca715fdb 102
mbed_official 5:b7d7ca715fdb 103 // define to save 8KB RAM at the expense of ROM
mbed_official 5:b7d7ca715fdb 104 #undef MBEDTLS_AES_ROM_TABLES
mbed_official 5:b7d7ca715fdb 105
mbed_official 5:b7d7ca715fdb 106 // Save ROM and a few bytes of RAM by specifying our own ciphersuite list
mbed_official 5:b7d7ca715fdb 107 #define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
mbed_official 5:b7d7ca715fdb 108
mbed_official 5:b7d7ca715fdb 109 #include "mbedtls/check_config.h"
mbed_official 5:b7d7ca715fdb 110
mbed_official 5:b7d7ca715fdb 111 #endif /* MBEDTLS_CUSTOM_CONFIG_H */