Morse Micro IoT SDK  2.9.7
mmagic.h
1/*
2 * Copyright 2023-2024 Morse Micro
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6#pragma once
7
8#include <stdint.h>
9#include <stddef.h>
10#include <stdbool.h>
11
12#include "core/autogen/mmagic_core_types.h"
13#include "mmwlan.h"
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
224#define CONTROL_STREAM 0
225
227#define MMAGIC_SYS_MAX_APP_VERSION_LENGTH (31)
228
238typedef bool (*mmagic_set_deep_sleep_mode_cb_t)(enum mmagic_deep_sleep_mode mode, void *cb_arg);
239
250{
256 void (*tx_cb)(const char *buf, size_t len, void *cb_arg);
263};
264
272struct mmagic_cli *mmagic_cli_init(const struct mmagic_cli_init_args *args);
273
281void mmagic_cli_rx(struct mmagic_cli *ctx, const char *buf, size_t len);
282
293{
298};
299
309struct mmagic_m2m_agent *mmagic_m2m_agent_init(const struct mmagic_m2m_agent_init_args *args);
310
313#ifdef __cplusplus
314}
315#endif
bool(* mmagic_set_deep_sleep_mode_cb_t)(enum mmagic_deep_sleep_mode mode, void *cb_arg)
Typedef for callback function that is invoked by MMAGIC to request a change in deep sleep mode.
Definition: mmagic.h:238
#define MMAGIC_SYS_MAX_APP_VERSION_LENGTH
Maximum length of the app_version string (excluding null terminator).
Definition: mmagic.h:227
struct mmagic_m2m_agent * mmagic_m2m_agent_init(const struct mmagic_m2m_agent_init_args *args)
Initialize the M2M agent.
struct mmagic_cli * mmagic_cli_init(const struct mmagic_cli_init_args *args)
Initialize and enable the CLI.
void mmagic_cli_rx(struct mmagic_cli *ctx, const char *buf, size_t len)
This function is used to pass received characters to the MMAGIC CLI.
mmagic_deep_sleep_mode
Deep sleep modes for the agent MCU.
char buf[1408]
Statically allocated buffer for HTTP GET request, just under 1 packet size.
Definition: sslclient.c:177
CLI initialization arguments structure.
Definition: mmagic.h:250
void * tx_cb_arg
Opaque arg to pass to tx_cb.
Definition: mmagic.h:254
const struct mmwlan_regulatory_db * reg_db
Reference to the regulatory database, used to initialize wlan.
Definition: mmagic.h:262
char app_version[MMAGIC_SYS_MAX_APP_VERSION_LENGTH+1]
Application version string.
Definition: mmagic.h:252
void * set_deep_sleep_mode_cb_arg
Opaque arg to pass to set_deep_sleep_mode_cb.
Definition: mmagic.h:258
void(* tx_cb)(const char *buf, size_t len, void *cb_arg)
Transmit callback.
Definition: mmagic.h:256
mmagic_set_deep_sleep_mode_cb_t set_deep_sleep_mode_cb
Set deep sleep mode callback.
Definition: mmagic.h:260
M2M initialization args.
Definition: mmagic.h:293
const struct mmwlan_regulatory_db * reg_db
Reference to the regulatory database, used to initialize wlan.
Definition: mmagic.h:297
char app_version[MMAGIC_SYS_MAX_APP_VERSION_LENGTH+1]
Application version string.
Definition: mmagic.h:295
Regulatory database data structure.
Definition: mmwlan.h:288