Repository: incubator-mynewt-larva Updated Branches: refs/heads/master bc9756067 -> 3e88a5c6c
bletiny - replace console_printf with sys/log. Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/commit/c7827332 Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/tree/c7827332 Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/diff/c7827332 Branch: refs/heads/master Commit: c78273321ebb8b587db552d32169f00cb83f9382 Parents: bc97560 Author: Christopher Collins <ccollins47...@gmail.com> Authored: Wed Feb 10 17:18:18 2016 -0800 Committer: Christopher Collins <ccollins47...@gmail.com> Committed: Wed Feb 10 17:26:31 2016 -0800 ---------------------------------------------------------------------- project/bletiny/bletiny.yml | 1 + project/bletiny/src/bletiny_priv.h | 8 +- project/bletiny/src/cmd.c | 76 +++++------ project/bletiny/src/main.c | 226 +++++++++++++++++--------------- project/bletiny/src/parse.c | 38 ++---- project/bletiny/src/periph.c | 20 +-- 6 files changed, 189 insertions(+), 180 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/c7827332/project/bletiny/bletiny.yml ---------------------------------------------------------------------- diff --git a/project/bletiny/bletiny.yml b/project/bletiny/bletiny.yml index 93bb791..afa356f 100644 --- a/project/bletiny/bletiny.yml +++ b/project/bletiny/bletiny.yml @@ -20,6 +20,7 @@ project.name: bletiny project.identities: tiny project.eggs: + - sys/log - libs/os - net/nimble/controller - net/nimble/host http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/c7827332/project/bletiny/src/bletiny_priv.h ---------------------------------------------------------------------- diff --git a/project/bletiny/src/bletiny_priv.h b/project/bletiny/src/bletiny_priv.h index 1f51215..5026ce1 100644 --- a/project/bletiny/src/bletiny_priv.h +++ b/project/bletiny/src/bletiny_priv.h @@ -21,6 +21,7 @@ #define H_BLETINY_PRIV_ #include <inttypes.h> +#include "log/log.h" #include "os/queue.h" #include "host/ble_gatt.h" @@ -89,7 +90,8 @@ extern uint8_t bletiny_gatt_service_changed[4]; extern struct nmgr_transport nm_ble_transport; extern uint16_t nm_attr_val_handle; -void bletiny_printf(const char *fmt, ...); +extern struct log bletiny_log; + void print_addr(void *addr); void print_uuid(void *uuid128); const struct cmd_entry *parse_cmd_find(const struct cmd_entry *cmds, @@ -160,4 +162,8 @@ void bletiny_chrup(uint16_t attr_handle); int bletiny_l2cap_update(uint16_t conn_handle, struct ble_l2cap_sig_update_params *params); +#define BLETINY_LOG_MODULE (LOG_MODULE_PERUSER + 0) +#define BLETINY_LOG(lvl, ...) \ + LOG_ ## lvl(&bletiny_log, BLETINY_LOG_MODULE, __VA_ARGS__) + #endif http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/c7827332/project/bletiny/src/cmd.c ---------------------------------------------------------------------- diff --git a/project/bletiny/src/cmd.c b/project/bletiny/src/cmd.c index 3dfb124..68bdb70 100644 --- a/project/bletiny/src/cmd.c +++ b/project/bletiny/src/cmd.c @@ -53,7 +53,8 @@ cmd_exec(const struct cmd_entry *cmds, int argc, char **argv) cmd = parse_cmd_find(cmds, argv[1]); if (cmd == NULL) { - bletiny_printf("Error: unknown %s command: %s\n", argv[0], argv[1]); + BLETINY_LOG(DEBUG, "Error: unknown %s command: %s\n", + argv[0], argv[1]); return -1; } @@ -68,9 +69,9 @@ cmd_exec(const struct cmd_entry *cmds, int argc, char **argv) static void cmd_print_dsc(struct bletiny_dsc *dsc) { - bletiny_printf(" dsc_handle=%d uuid=", dsc->dsc.handle); + BLETINY_LOG(DEBUG, " dsc_handle=%d uuid=", dsc->dsc.handle); print_uuid(dsc->dsc.uuid128); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } static void @@ -78,12 +79,11 @@ cmd_print_chr(struct bletiny_chr *chr) { struct bletiny_dsc *dsc; - bletiny_printf(" def_handle=%d val_handle=%d properties=0x%02x " - "uuid=", - chr->chr.decl_handle, chr->chr.value_handle, - chr->chr.properties); + BLETINY_LOG(DEBUG, " def_handle=%d val_handle=%d properties=0x%02x " + "uuid=", chr->chr.decl_handle, chr->chr.value_handle, + chr->chr.properties); print_uuid(chr->chr.uuid128); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); SLIST_FOREACH(dsc, &chr->dscs, next) { cmd_print_dsc(dsc); @@ -95,10 +95,10 @@ cmd_print_svc(struct bletiny_svc *svc, int print_chrs) { struct bletiny_chr *chr; - bletiny_printf(" start=%d end=%d uuid=", svc->svc.start_handle, - svc->svc.end_handle); + BLETINY_LOG(DEBUG, " start=%d end=%d uuid=", svc->svc.start_handle, + svc->svc.end_handle); print_uuid(svc->svc.uuid128); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); if (print_chrs) { SLIST_FOREACH(chr, &svc->chrs, next) { @@ -184,7 +184,7 @@ cmd_adv(int argc, char **argv) if (argc > 1 && strcmp(argv[1], "stop") == 0) { rc = bletiny_adv_stop(); if (rc != 0) { - bletiny_printf("advertise stop fail: %d\n", rc); + BLETINY_LOG(DEBUG, "advertise stop fail: %d\n", rc); return rc; } @@ -193,13 +193,13 @@ cmd_adv(int argc, char **argv) conn = parse_arg_kv("conn", cmd_adv_conn_modes); if (conn == -1) { - bletiny_printf("invalid 'conn' parameter\n"); + BLETINY_LOG(DEBUG, "invalid 'conn' parameter\n"); return -1; } disc = parse_arg_kv("disc", cmd_adv_disc_modes); if (disc == -1) { - bletiny_printf("missing 'disc' parameter\n"); + BLETINY_LOG(DEBUG, "missing 'disc' parameter\n"); return -1; } @@ -234,7 +234,7 @@ cmd_adv(int argc, char **argv) rc = bletiny_adv_start(disc, conn, peer_addr, addr_type, ¶ms); if (rc != 0) { - bletiny_printf("advertise fail: %d\n", rc); + BLETINY_LOG(DEBUG, "advertise fail: %d\n", rc); return rc; } @@ -265,7 +265,7 @@ cmd_conn(int argc, char **argv) if (argc > 1 && strcmp(argv[1], "cancel") == 0) { rc = bletiny_conn_cancel(); if (rc != 0) { - bletiny_printf("connection cancel fail: %d\n", rc); + BLETINY_LOG(DEBUG, "connection cancel fail: %d\n", rc); return rc; } @@ -384,7 +384,7 @@ cmd_disc_chr(int argc, char **argv) return rc; } if (rc != 0) { - bletiny_printf("error discovering characteristics; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error discovering characteristics; rc=%d\n", rc); return rc; } @@ -406,7 +406,7 @@ cmd_disc_dsc(int argc, char **argv) rc = bletiny_disc_all_dscs(conn_handle, start_handle, end_handle); if (rc != 0) { - bletiny_printf("error discovering descriptors; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error discovering descriptors; rc=%d\n", rc); return rc; } @@ -435,7 +435,7 @@ cmd_disc_svc(int argc, char **argv) } if (rc != 0) { - bletiny_printf("error discovering services; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error discovering services; rc=%d\n", rc); return rc; } @@ -481,7 +481,7 @@ cmd_find_inc_svcs(int argc, char **argv) rc = bletiny_find_inc_svcs(conn_handle, start_handle, end_handle); if (rc != 0) { - bletiny_printf("error finding included services; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error finding included services; rc=%d\n", rc); return rc; } @@ -546,7 +546,7 @@ cmd_l2cap_update(int argc, char **argv) rc = bletiny_l2cap_update(conn_handle, ¶ms); if (rc != 0) { - bletiny_printf("error txing l2cap update; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error txing l2cap update; rc=%d\n", rc); return rc; } @@ -588,7 +588,7 @@ cmd_mtu(int argc, char **argv) rc = bletiny_exchange_mtu(conn_handle); if (rc != 0) { - bletiny_printf("error exchanging mtu; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error exchanging mtu; rc=%d\n", rc); return rc; } @@ -680,7 +680,7 @@ cmd_read(int argc, char **argv) } if (rc != 0) { - bletiny_printf("error reading characteristic; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error reading characteristic; rc=%d\n", rc); return rc; } @@ -742,7 +742,7 @@ cmd_scan(int argc, char **argv) rc = bletiny_scan(dur, disc, type, filt); if (rc != 0) { - bletiny_printf("error scanning; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error scanning; rc=%d\n", rc); return rc; } @@ -758,9 +758,9 @@ cmd_show_addr(int argc, char **argv) { bletiny_lock(); - bletiny_printf("myaddr="); + BLETINY_LOG(DEBUG, "myaddr="); print_addr(g_dev_addr); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); bletiny_unlock(); @@ -779,9 +779,9 @@ cmd_show_chr(int argc, char **argv) for (i = 0; i < bletiny_num_conns; i++) { conn = bletiny_conns + i; - bletiny_printf("CONNECTION: handle=%d addr=", conn->handle); + BLETINY_LOG(DEBUG, "CONNECTION: handle=%d addr=", conn->handle); print_addr(conn->addr); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); SLIST_FOREACH(svc, &conn->svcs, next) { cmd_print_svc(svc, 1); @@ -804,9 +804,9 @@ cmd_show_conn(int argc, char **argv) for (i = 0; i < bletiny_num_conns; i++) { conn = bletiny_conns + i; - bletiny_printf("handle=%d addr=", conn->handle); + BLETINY_LOG(DEBUG, "handle=%d addr=", conn->handle); print_addr(conn->addr); - bletiny_printf(" addr_type=%d\n", conn->addr_type); + BLETINY_LOG(DEBUG, " addr_type=%d\n", conn->addr_type); } bletiny_unlock(); @@ -826,9 +826,9 @@ cmd_show_svc(int argc, char **argv) for (i = 0; i < bletiny_num_conns; i++) { conn = bletiny_conns + i; - bletiny_printf("CONNECTION: handle=%d addr=", conn->handle); + BLETINY_LOG(DEBUG, "CONNECTION: handle=%d addr=", conn->handle); print_addr(conn->addr); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); SLIST_FOREACH(svc, &conn->svcs, next) { cmd_print_svc(svc, 0); @@ -1116,7 +1116,7 @@ cmd_set_adv_data(void) rc = bletiny_set_adv_data(&adv_fields); if (rc != 0) { - bletiny_printf("error setting advertisement data; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error setting advertisement data; rc=%d\n", rc); return rc; } @@ -1157,7 +1157,7 @@ cmd_set(int argc, char **argv) } if (!good) { - bletiny_printf("Error: no valid settings specified\n"); + BLETINY_LOG(DEBUG, "Error: no valid settings specified\n"); return -1; } @@ -1181,7 +1181,7 @@ cmd_term(int argc, char **argv) rc = bletiny_term_conn(conn_handle); if (rc != 0) { - bletiny_printf("error terminating connection; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error terminating connection; rc=%d\n", rc); return rc; } @@ -1238,7 +1238,7 @@ cmd_update(int argc, char **argv) rc = bletiny_update_conn(conn_handle, ¶ms); if (rc != 0) { - bletiny_printf("error updating connection; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error updating connection; rc=%d\n", rc); return rc; } @@ -1389,7 +1389,7 @@ cmd_write(int argc, char **argv) } if (rc != 0) { - bletiny_printf("error writing characteristic; rc=%d\n", rc); + BLETINY_LOG(DEBUG, "error writing characteristic; rc=%d\n", rc); return rc; } @@ -1431,7 +1431,7 @@ cmd_b_exec(int argc, char **argv) rc = cmd_exec(cmd_b_entries, argc, argv); if (rc != 0) { - bletiny_printf("error\n"); + BLETINY_LOG(DEBUG, "error\n"); goto done; } http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/c7827332/project/bletiny/src/main.c ---------------------------------------------------------------------- diff --git a/project/bletiny/src/main.c b/project/bletiny/src/main.c index a713b86..1c4503d 100755 --- a/project/bletiny/src/main.c +++ b/project/bletiny/src/main.c @@ -21,6 +21,7 @@ #include <stdio.h> #include <errno.h> #include "bsp/bsp.h" +#include "log/log.h" #include "os/os.h" #include "bsp/bsp.h" #include "hal/hal_gpio.h" @@ -47,8 +48,8 @@ #define HOST_TASK_PRIO (1) #define SHELL_TASK_PRIO (3) -#define SHELL_MAX_INPUT_LEN (112) -#define SHELL_TASK_STACK_SIZE (OS_STACK_ALIGN(160)) +#define SHELL_MAX_INPUT_LEN (64) +#define SHELL_TASK_STACK_SIZE (OS_STACK_ALIGN(216)) static bssnz_t os_stack_t shell_stack[SHELL_TASK_STACK_SIZE]; static struct os_mutex bletiny_mutex; @@ -66,7 +67,7 @@ uint8_t g_host_adv_len; static uint8_t bletiny_addr[6] = {0x03, 0x02, 0x01, 0x50, 0x13, 0x00}; /* Create a mbuf pool of BLE mbufs */ -#define MBUF_NUM_MBUFS (8) +#define MBUF_NUM_MBUFS (7) #define MBUF_BUF_SIZE OS_ALIGN(BLE_MBUF_PAYLOAD_SIZE, 4) #define MBUF_MEMBLOCK_SIZE (MBUF_BUF_SIZE + BLE_MBUF_MEMBLOCK_OVERHEAD) #define MBUF_MEMPOOL_SIZE OS_MEMPOOL_SIZE(MBUF_NUM_MBUFS, MBUF_MEMBLOCK_SIZE) @@ -77,7 +78,7 @@ struct os_mbuf_pool default_mbuf_pool; struct os_mempool default_mbuf_mpool; /* BLETINY variables */ -#define BLETINY_STACK_SIZE (OS_STACK_ALIGN(160)) +#define BLETINY_STACK_SIZE (OS_STACK_ALIGN(200)) #define BLETINY_TASK_PRIO (HOST_TASK_PRIO + 1) #define BLETINY_MAX_SVCS 1 @@ -88,6 +89,9 @@ struct os_eventq g_bletiny_evq; struct os_task bletiny_task; bssnz_t os_stack_t bletiny_stack[BLETINY_STACK_SIZE]; +static struct log_handler bletiny_log_console_handler; +struct log bletiny_log; + struct bletiny_conn ble_shell_conns[BLETINY_MAX_CONNS]; int bletiny_num_conns; @@ -144,8 +148,8 @@ static void bletiny_print_error(char *msg, uint16_t conn_handle, struct ble_gatt_error *error) { - bletiny_printf("%s: conn_handle=%d status=%d att_handle=%d\n", - msg, conn_handle, error->status, error->att_handle); + BLETINY_LOG(DEBUG, "%s: conn_handle=%d status=%d att_handle=%d\n", + msg, conn_handle, error->status, error->att_handle); } static void @@ -154,19 +158,19 @@ bletiny_print_bytes(uint8_t *bytes, int len) int i; for (i = 0; i < len; i++) { - bletiny_printf("%s0x%02x", i != 0 ? ":" : "", bytes[i]); + BLETINY_LOG(DEBUG, "%s0x%02x", i != 0 ? ":" : "", bytes[i]); } } static void bletiny_print_conn_desc(struct ble_gap_conn_desc *desc) { - bletiny_printf("handle=%d peer_addr_type=%d peer_addr=", - desc->conn_handle, desc->peer_addr_type); + BLETINY_LOG(DEBUG, "handle=%d peer_addr_type=%d peer_addr=", + desc->conn_handle, desc->peer_addr_type); bletiny_print_bytes(desc->peer_addr, 6); - bletiny_printf(" conn_itvl=%d conn_latency=%d supervision_timeout=%d", - desc->conn_itvl, desc->conn_latency, - desc->supervision_timeout); + BLETINY_LOG(DEBUG, " conn_itvl=%d conn_latency=%d supervision_timeout=%d", + desc->conn_itvl, desc->conn_latency, + desc->supervision_timeout); } static void @@ -178,126 +182,126 @@ bletiny_print_adv_fields(struct ble_hs_adv_fields *fields) int i; if (fields->flags_is_present) { - bletiny_printf(" flags=0x%02x\n", fields->flags); + BLETINY_LOG(DEBUG, " flags=0x%02x\n", fields->flags); } if (fields->uuids16 != NULL) { - bletiny_printf(" uuids16(%scomplete)=", - fields->uuids16_is_complete ? "" : "in"); + BLETINY_LOG(DEBUG, " uuids16(%scomplete)=", + fields->uuids16_is_complete ? "" : "in"); u8p = fields->uuids16; for (i = 0; i < fields->num_uuids16; i++) { memcpy(&u16, u8p + i * 2, 2); - bletiny_printf("0x%04x ", u16); + BLETINY_LOG(DEBUG, "0x%04x ", u16); } - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->uuids32 != NULL) { - bletiny_printf(" uuids32(%scomplete)=", - fields->uuids32_is_complete ? "" : "in"); + BLETINY_LOG(DEBUG, " uuids32(%scomplete)=", + fields->uuids32_is_complete ? "" : "in"); u8p = fields->uuids32; for (i = 0; i < fields->num_uuids32; i++) { memcpy(&u32, u8p + i * 4, 4); - bletiny_printf("0x%08x ", (unsigned)u32); + BLETINY_LOG(DEBUG, "0x%08x ", (unsigned)u32); } - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->uuids128 != NULL) { - bletiny_printf(" uuids128(%scomplete)=", - fields->uuids128_is_complete ? "" : "in"); + BLETINY_LOG(DEBUG, " uuids128(%scomplete)=", + fields->uuids128_is_complete ? "" : "in"); u8p = fields->uuids128; for (i = 0; i < fields->num_uuids128; i++) { print_uuid(u8p); - bletiny_printf(" "); + BLETINY_LOG(DEBUG, " "); u8p += 16; } - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->name != NULL) { - bletiny_printf(" name(%scomplete)=", - fields->name_is_complete ? "" : "in"); - bletiny_printf("%*s\n", fields->name_len, fields->name); + BLETINY_LOG(DEBUG, " name(%scomplete)=", + fields->name_is_complete ? "" : "in"); + BLETINY_LOG(DEBUG, "%*s\n", fields->name_len, fields->name); } if (fields->tx_pwr_lvl_is_present) { - bletiny_printf(" tx_pwr_lvl=%d\n", fields->tx_pwr_lvl); + BLETINY_LOG(DEBUG, " tx_pwr_lvl=%d\n", fields->tx_pwr_lvl); } if (fields->device_class != NULL) { - bletiny_printf(" device_class="); + BLETINY_LOG(DEBUG, " device_class="); bletiny_print_bytes(fields->device_class, BLE_HS_ADV_DEVICE_CLASS_LEN); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->slave_itvl_range != NULL) { - bletiny_printf(" slave_itvl_range="); + BLETINY_LOG(DEBUG, " slave_itvl_range="); bletiny_print_bytes(fields->slave_itvl_range, BLE_HS_ADV_SLAVE_ITVL_RANGE_LEN); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->svc_data_uuid16 != NULL) { - bletiny_printf(" svc_data_uuid16="); + BLETINY_LOG(DEBUG, " svc_data_uuid16="); bletiny_print_bytes(fields->svc_data_uuid16, fields->svc_data_uuid16_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->public_tgt_addr != NULL) { - bletiny_printf(" public_tgt_addr="); + BLETINY_LOG(DEBUG, " public_tgt_addr="); u8p = fields->public_tgt_addr; for (i = 0; i < fields->num_public_tgt_addrs; i++) { print_addr(u8p); u8p += BLE_HS_ADV_PUBLIC_TGT_ADDR_ENTRY_LEN; } - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->appearance_is_present) { - bletiny_printf(" appearance=0x%04x\n", fields->appearance); + BLETINY_LOG(DEBUG, " appearance=0x%04x\n", fields->appearance); } if (fields->adv_itvl_is_present) { - bletiny_printf(" adv_itvl=0x%04x\n", fields->adv_itvl); + BLETINY_LOG(DEBUG, " adv_itvl=0x%04x\n", fields->adv_itvl); } if (fields->le_addr != NULL) { - bletiny_printf(" le_addr="); + BLETINY_LOG(DEBUG, " le_addr="); bletiny_print_bytes(fields->le_addr, BLE_HS_ADV_LE_ADDR_LEN); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->le_role_is_present) { - bletiny_printf(" le_role=0x%02x\n", fields->le_role); + BLETINY_LOG(DEBUG, " le_role=0x%02x\n", fields->le_role); } if (fields->svc_data_uuid32 != NULL) { - bletiny_printf(" svc_data_uuid32="); + BLETINY_LOG(DEBUG, " svc_data_uuid32="); bletiny_print_bytes(fields->svc_data_uuid32, fields->svc_data_uuid32_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->svc_data_uuid128 != NULL) { - bletiny_printf(" svc_data_uuid128="); + BLETINY_LOG(DEBUG, " svc_data_uuid128="); bletiny_print_bytes(fields->svc_data_uuid128, fields->svc_data_uuid128_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->uri != NULL) { - bletiny_printf(" uri="); + BLETINY_LOG(DEBUG, " uri="); bletiny_print_bytes(fields->uri, fields->uri_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } if (fields->mfg_data != NULL) { - bletiny_printf(" mfg_data="); + BLETINY_LOG(DEBUG, " mfg_data="); bletiny_print_bytes(fields->mfg_data, fields->mfg_data_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } } @@ -440,8 +444,9 @@ bletiny_svc_add(uint16_t conn_handle, struct ble_gatt_service *gatt_svc) conn = bletiny_conn_find(conn_handle); if (conn == NULL) { - bletiny_printf("RECEIVED SERVICE FOR UNKNOWN CONNECTION; HANDLE=%d\n", - conn_handle); + BLETINY_LOG(DEBUG, + "RECEIVED SERVICE FOR UNKNOWN CONNECTION; HANDLE=%d\n", + conn_handle); return NULL; } @@ -453,7 +458,7 @@ bletiny_svc_add(uint16_t conn_handle, struct ble_gatt_service *gatt_svc) svc = os_memblock_get(&bletiny_svc_pool); if (svc == NULL) { - bletiny_printf("OOM WHILE DISCOVERING SERVICE\n"); + BLETINY_LOG(DEBUG, "OOM WHILE DISCOVERING SERVICE\n"); return NULL; } memset(svc, 0, sizeof *svc); @@ -524,15 +529,17 @@ bletiny_chr_add(uint16_t conn_handle, uint16_t svc_start_handle, conn = bletiny_conn_find(conn_handle); if (conn == NULL) { - bletiny_printf("RECEIVED SERVICE FOR UNKNOWN CONNECTION; HANDLE=%d\n", - conn_handle); + BLETINY_LOG(DEBUG, + "RECEIVED SERVICE FOR UNKNOWN CONNECTION; HANDLE=%d\n", + conn_handle); return NULL; } svc = bletiny_svc_find(conn, svc_start_handle, NULL); if (svc == NULL) { - bletiny_printf("CAN'T FIND SERVICE FOR DISCOVERED CHR; HANDLE=%d\n", - conn_handle); + BLETINY_LOG(DEBUG, + "CAN'T FIND SERVICE FOR DISCOVERED CHR; HANDLE=%d\n", + conn_handle); return NULL; } @@ -544,7 +551,7 @@ bletiny_chr_add(uint16_t conn_handle, uint16_t svc_start_handle, chr = os_memblock_get(&bletiny_chr_pool); if (chr == NULL) { - bletiny_printf("OOM WHILE DISCOVERING CHARACTERISTIC\n"); + BLETINY_LOG(DEBUG, "OOM WHILE DISCOVERING CHARACTERISTIC\n"); return NULL; } memset(chr, 0, sizeof *chr); @@ -614,22 +621,24 @@ bletiny_dsc_add(uint16_t conn_handle, uint16_t chr_def_handle, conn = bletiny_conn_find(conn_handle); if (conn == NULL) { - bletiny_printf("RECEIVED SERVICE FOR UNKNOWN CONNECTION; HANDLE=%d\n", - conn_handle); + BLETINY_LOG(DEBUG, + "RECEIVED SERVICE FOR UNKNOWN CONNECTION; HANDLE=%d\n", + conn_handle); return NULL; } svc = bletiny_svc_find_range(conn, chr_def_handle); if (svc == NULL) { - bletiny_printf("CAN'T FIND SERVICE FOR DISCOVERED DSC; HANDLE=%d\n", - conn_handle); + BLETINY_LOG(DEBUG, + "CAN'T FIND SERVICE FOR DISCOVERED DSC; HANDLE=%d\n", + conn_handle); return NULL; } chr = bletiny_chr_find(svc, chr_def_handle, NULL); if (chr == NULL) { - bletiny_printf("CAN'T FIND CHARACTERISTIC FOR DISCOVERED DSC; " - "HANDLE=%d\n", conn_handle); + BLETINY_LOG(DEBUG, "CAN'T FIND CHARACTERISTIC FOR DISCOVERED DSC; " + "HANDLE=%d\n", conn_handle); return NULL; } @@ -641,7 +650,7 @@ bletiny_dsc_add(uint16_t conn_handle, uint16_t chr_def_handle, dsc = os_memblock_get(&bletiny_dsc_pool); if (dsc == NULL) { - bletiny_printf("OOM WHILE DISCOVERING DESCRIPTOR\n"); + BLETINY_LOG(DEBUG, "OOM WHILE DISCOVERING DESCRIPTOR\n"); return NULL; } memset(dsc, 0, sizeof *dsc); @@ -689,8 +698,8 @@ bletiny_on_mtu(uint16_t conn_handle, struct ble_gatt_error *error, if (error != NULL) { bletiny_print_error("ERROR EXCHANGING MTU", conn_handle, error); } else { - bletiny_printf("mtu exchange complete: conn_handle=%d mtu=%d\n", - conn_handle, mtu); + BLETINY_LOG(DEBUG, "mtu exchange complete: conn_handle=%d mtu=%d\n", + conn_handle, mtu); } return 0; @@ -768,13 +777,13 @@ bletiny_on_read(uint16_t conn_handle, struct ble_gatt_error *error, bletiny_print_error("ERROR READING CHARACTERISTIC", conn_handle, error); } else if (attr != NULL) { - bletiny_printf("characteristic read; conn_handle=%d " - "attr_handle=%d len=%d value=", conn_handle, - attr->handle, attr->value_len); + BLETINY_LOG(DEBUG, "characteristic read; conn_handle=%d " + "attr_handle=%d len=%d value=", conn_handle, + attr->handle, attr->value_len); bletiny_print_bytes(attr->value, attr->value_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } else { - bletiny_printf("characteristic read complete\n"); + BLETINY_LOG(DEBUG, "characteristic read complete\n"); } return 0; @@ -791,15 +800,16 @@ bletiny_on_read_mult(uint16_t conn_handle, struct ble_gatt_error *error, bletiny_print_error("ERROR READING CHARACTERISTICS", conn_handle, error); } else { - bletiny_printf("multiple characteristic read complete; conn_handle=%d " - "attr_handles=", conn_handle); + BLETINY_LOG(DEBUG, + "multiple characteristic read complete; conn_handle=%d " + "attr_handles=", conn_handle); for (i = 0; i < num_attr_handles; i++) { - bletiny_printf("%s%d", i != 0 ? "," : "", attr_handles[i]); + BLETINY_LOG(DEBUG, "%s%d", i != 0 ? "," : "", attr_handles[i]); } - bletiny_printf(" len=%d value=", attr_data_len); + BLETINY_LOG(DEBUG, " len=%d value=", attr_data_len); bletiny_print_bytes(attr_data, attr_data_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } return 0; @@ -814,11 +824,11 @@ bletiny_on_write(uint16_t conn_handle, struct ble_gatt_error *error, bletiny_print_error("ERROR WRITING CHARACTERISTIC", conn_handle, error); } else { - bletiny_printf("characteristic write complete; conn_handle=%d " - "attr_handle=%d len=%d value=", conn_handle, - attr->handle, attr->value_len); + BLETINY_LOG(DEBUG, "characteristic write complete; conn_handle=%d " + "attr_handle=%d len=%d value=", conn_handle, + attr->handle, attr->value_len); bletiny_print_bytes(attr->value, attr->value_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } return 0; @@ -835,15 +845,15 @@ bletiny_on_write_reliable(uint16_t conn_handle, struct ble_gatt_error *error, bletiny_print_error("ERROR WRITING CHARACTERISTICS RELIABLY", conn_handle, error); } else { - bletiny_printf("characteristic write reliable complete; " - "conn_handle=%d", conn_handle); + BLETINY_LOG(DEBUG, "characteristic write reliable complete; " + "conn_handle=%d", conn_handle); for (i = 0; i < num_attrs; i++) { - bletiny_printf(" attr_handle=%d len=%d value=", attrs[i].handle, - attrs[i].value_len); + BLETINY_LOG(DEBUG, " attr_handle=%d len=%d value=", attrs[i].handle, + attrs[i].value_len); bletiny_print_bytes(attrs[i].value, attrs[i].value_len); } - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); } return 0; @@ -853,11 +863,11 @@ static int bletiny_on_notify(uint16_t conn_handle, uint16_t attr_handle, uint8_t *attr_val, uint16_t attr_len, void *arg) { - bletiny_printf("received notification from conn_handle=%d attr=%d " - "len=%d value=", conn_handle, attr_handle, attr_len); + BLETINY_LOG(DEBUG, "received notification from conn_handle=%d attr=%d " + "len=%d value=", conn_handle, attr_handle, attr_len); bletiny_print_bytes(attr_val, attr_len); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); return 0; } @@ -872,22 +882,22 @@ bletiny_on_connect(int event, int status, struct ble_gap_conn_ctxt *ctxt, switch (event) { case BLE_GAP_EVENT_CONN: - bletiny_printf("connection %s; status=%d ", - status == 0 ? "up" : "down", status); + BLETINY_LOG(DEBUG, "connection %s; status=%d ", + status == 0 ? "up" : "down", status); bletiny_print_conn_desc(ctxt->desc); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); if (status == 0) { bletiny_conn_add(ctxt->desc); } else { if (ctxt->desc->conn_handle == BLE_HS_CONN_HANDLE_NONE) { if (status == BLE_HS_HCI_ERR(BLE_ERR_UNK_CONN_ID)) { - bletiny_printf("connection procedure cancelled.\n"); + BLETINY_LOG(DEBUG, "connection procedure cancelled.\n"); } } else { conn_idx = bletiny_conn_find_idx(ctxt->desc->conn_handle); if (conn_idx == -1) { - bletiny_printf("UNKNOWN CONNECTION\n"); + BLETINY_LOG(DEBUG, "UNKNOWN CONNECTION\n"); } else { bletiny_conn_delete_idx(conn_idx); } @@ -899,13 +909,13 @@ bletiny_on_connect(int event, int status, struct ble_gap_conn_ctxt *ctxt, break; case BLE_GAP_EVENT_CONN_UPDATED: - bletiny_printf("connection updated; status=%d ", status); + BLETINY_LOG(DEBUG, "connection updated; status=%d ", status); bletiny_print_conn_desc(ctxt->desc); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); break; case BLE_GAP_EVENT_CONN_UPDATE_REQ: - bletiny_printf("connection update request; status=%d ", status); + BLETINY_LOG(DEBUG, "connection update request; status=%d ", status); *ctxt->self_params = *ctxt->peer_params; break; } @@ -918,13 +928,13 @@ bletiny_on_connect(int event, int status, struct ble_gap_conn_ctxt *ctxt, static void bletiny_on_l2cap_update(int status, void *arg) { - bletiny_printf("l2cap update complete; status=%d\n", status); + BLETINY_LOG(DEBUG, "l2cap update complete; status=%d\n", status); } static void bletiny_on_wl_set(int status, void *arg) { - bletiny_printf("white list set status=%d\n", status); + BLETINY_LOG(DEBUG, "white list set status=%d\n", status); } static void @@ -933,19 +943,19 @@ bletiny_on_scan(int event, int status, struct ble_gap_disc_desc *desc, { switch (event) { case BLE_GAP_EVENT_DISC_SUCCESS: - bletiny_printf("received advertisement; event_type=%d addr_type=%d " - "addr=", desc->event_type, desc->addr_type); + BLETINY_LOG(DEBUG, "received advertisement; event_type=%d addr_type=%d " + "addr=", desc->event_type, desc->addr_type); bletiny_print_bytes(desc->addr, 6); - bletiny_printf(" length_data=%d rssi=%d data=", desc->length_data, - desc->rssi); + BLETINY_LOG(DEBUG, " length_data=%d rssi=%d data=", desc->length_data, + desc->rssi); bletiny_print_bytes(desc->data, desc->length_data); - bletiny_printf(" fields:\n"); + BLETINY_LOG(DEBUG, " fields:\n"); bletiny_print_adv_fields(desc->fields); - bletiny_printf("\n"); + BLETINY_LOG(DEBUG, "\n"); break; case BLE_GAP_EVENT_DISC_FINISHED: - bletiny_printf("scanning finished; status=%d\n", status); + BLETINY_LOG(DEBUG, "scanning finished; status=%d\n", status); break; default: @@ -1337,6 +1347,10 @@ main(void) rc = os_msys_register(&default_mbuf_pool); assert(rc == 0); + log_init(); + log_console_handler_init(&bletiny_log_console_handler); + log_register("bletiny", &bletiny_log, &bletiny_log_console_handler); + os_task_init(&bletiny_task, "bletiny", bletiny_task_handler, NULL, BLETINY_TASK_PRIO, OS_WAIT_FOREVER, bletiny_stack, BLETINY_STACK_SIZE); http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/c7827332/project/bletiny/src/parse.c ---------------------------------------------------------------------- diff --git a/project/bletiny/src/parse.c b/project/bletiny/src/parse.c index 3c173f4..d1c1f95 100644 --- a/project/bletiny/src/parse.c +++ b/project/bletiny/src/parse.c @@ -33,27 +33,13 @@ static char *cmd_args[CMD_MAX_ARGS][2]; static int cmd_num_args; void -bletiny_printf(const char *fmt, ...) -{ - va_list args; - - if (!console_is_midline) { - console_printf("(BLETINY) "); - } - - va_start(args, fmt); - console_vprintf(fmt, args); - va_end(args); -} - -void print_addr(void *addr) { uint8_t *u8p; u8p = addr; - bletiny_printf("%02x:%02x:%02x:%02x:%02x:%02x", - u8p[5], u8p[4], u8p[3], u8p[2], u8p[1], u8p[0]); + BLETINY_LOG(DEBUG, "%02x:%02x:%02x:%02x:%02x:%02x", + u8p[5], u8p[4], u8p[3], u8p[2], u8p[1], u8p[0]); } void @@ -64,24 +50,26 @@ print_uuid(void *uuid128) uuid16 = ble_uuid_128_to_16(uuid128); if (uuid16 != 0) { - bletiny_printf("0x%04x", uuid16); + BLETINY_LOG(DEBUG, "0x%04x", uuid16); return; } u8p = uuid128; /* 00001101-0000-1000-8000-00805f9b34fb */ - bletiny_printf("%02x%02x%02x%02x-", u8p[15], u8p[14], u8p[13], u8p[12]); - bletiny_printf("%02x%02x-%02x%02x-", u8p[11], u8p[10], u8p[9], u8p[8]); - bletiny_printf("%02x%02x%02x%02x%02x%02x%02x%02x", - u8p[7], u8p[6], u8p[5], u8p[4], - u8p[3], u8p[2], u8p[1], u8p[0]); + BLETINY_LOG(DEBUG, "%02x%02x%02x%02x-", u8p[15], u8p[14], u8p[13], + u8p[12]); + BLETINY_LOG(DEBUG, "%02x%02x-%02x%02x-", u8p[11], u8p[10], u8p[9], u8p[8]); + BLETINY_LOG(DEBUG, "%02x%02x%02x%02x%02x%02x%02x%02x", + u8p[7], u8p[6], u8p[5], u8p[4], + u8p[3], u8p[2], u8p[1], u8p[0]); } int parse_err_too_few_args(char *cmd_name) { - bletiny_printf("Error: too few arguments for command \"%s\"\n", cmd_name); + BLETINY_LOG(DEBUG, "Error: too few arguments for command \"%s\"\n", + cmd_name); return -1; } @@ -427,12 +415,12 @@ parse_arg_all(int argc, char **argv) if (key != NULL && val != NULL) { if (strlen(key) == 0) { - bletiny_printf("Error: invalid argument: %s\n", argv[i]); + BLETINY_LOG(DEBUG, "Error: invalid argument: %s\n", argv[i]); return -1; } if (cmd_num_args >= CMD_MAX_ARGS) { - bletiny_printf("Error: too many arguments"); + BLETINY_LOG(DEBUG, "Error: too many arguments"); return -1; } http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/c7827332/project/bletiny/src/periph.c ---------------------------------------------------------------------- diff --git a/project/bletiny/src/periph.c b/project/bletiny/src/periph.c index 0df67a8..d0f97e5 100644 --- a/project/bletiny/src/periph.c +++ b/project/bletiny/src/periph.c @@ -306,26 +306,26 @@ periph_register_cb(uint8_t op, union ble_gatt_register_ctxt *ctxt, void *arg) case BLE_GATT_REGISTER_OP_SVC: uuid16 = ble_uuid_128_to_16(ctxt->svc_reg.svc->uuid128); assert(uuid16 != 0); - bletiny_printf("registered service 0x%04x with handle=%d\n", - uuid16, ctxt->svc_reg.handle); + BLETINY_LOG(DEBUG, "registered service 0x%04x with handle=%d\n", + uuid16, ctxt->svc_reg.handle); break; case BLE_GATT_REGISTER_OP_CHR: uuid16 = ble_uuid_128_to_16(ctxt->chr_reg.chr->uuid128); assert(uuid16 != 0); - bletiny_printf("registering characteristic 0x%04x with def_handle=%d " - "val_handle=%d\n", - uuid16, ctxt->chr_reg.def_handle, - ctxt->chr_reg.val_handle); + BLETINY_LOG(DEBUG, "registering characteristic 0x%04x with " + "def_handle=%d val_handle=%d\n", + uuid16, ctxt->chr_reg.def_handle, + ctxt->chr_reg.val_handle); break; case BLE_GATT_REGISTER_OP_DSC: uuid16 = ble_uuid_128_to_16(ctxt->dsc_reg.dsc->uuid128); assert(uuid16 != 0); - bletiny_printf("registering descriptor 0x%04x with handle=%d " - "chr_handle=%d\n", - uuid16, ctxt->dsc_reg.dsc_handle, - ctxt->dsc_reg.chr_def_handle); + BLETINY_LOG(DEBUG, "registering descriptor 0x%04x with handle=%d " + "chr_handle=%d\n", + uuid16, ctxt->dsc_reg.dsc_handle, + ctxt->dsc_reg.chr_def_handle); break; default: