AT command firmware for MultiTech Dot devices.

Fork of mDot_AT_firmware by MultiTech

Dot Library Not Included!

Because these example programs can be used for both mDot and xDot devices, the LoRa stack is not included. The libmDot library should be imported if building for mDot devices. The libxDot library should be imported if building for xDot devices. Check the commit messages of the Dot library version used to find the correct mbed-os version to use with it. The mbed-os version must match the version used in that version of Dot library or it will likely cause it to fail to compile or have unexpected problems while running.

Dot Library Version 3 Updates

Dot Library versions 3.x.x require a channel plan to be injected into the stack. The Dot-Examples and Dot-AT-Firmware do this by defining a macro called "CHANNEL_PLAN" that controls the channel plan that will be used in the examples. Available channel plans will be in the Dot Library repository in the plans folder.

Revision 20 and earlier of Dot-Examples and revision 15 and earlier of Dot-AT-Firmware should be used with Dot Library versions prior to 3.0.0.

Fota Library

Th Fota Library must be added to compile for mDot 3.1.0 with Fota support. Latest dev libraries and 3.2.0 release will include Fota with libmDot/libxDot.

AT Firmware Description

This AT Firmware is what ships on mDot and xDot devices. It provides an AT command interface for using the mDot or xDot for LoRa communication.

AT command documentation can be found on Multitech.com.

The firmware changelog can be found here. The library changelog can be found here.

Dot Libraries

Dot Library Limitations

The commit messages in libmDot-mbed5 and libmDot-dev-mbed5 specify the version of the Dot library the commit contains and the version of mbed-os it was compiled against. We recommend building your application with the version of mbed-os specified in the commit message of the version of the Dot library you're using. This will ensure that you don't run into any runtime issues caused by differences in the mbed-os versions.

Stable and development libraries are available for both mDot and xDot platforms. The library chosen must match the target platform. Compiling for the mDot platform with the xDot library or vice versa will not succeed.

mDot Library

Development library for mDot.

libmDot-dev

Stable library for mDot.

libmDot

xDot Library

Development library for xDot.

libxDot-dev

Stable library for xDot.

libxDot

Revision:
6:e27eaad36a0c
Parent:
5:59f60bedc6df
Child:
7:3c97f3048373
--- a/wakeup.h	Tue Aug 18 16:31:53 2015 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-#ifndef __WAKEUP_H__
-#define __WAKEUP_H__
-
-#include <inttypes.h>
-
-uint32_t RTC_ReadBackupRegister(uint32_t RTC_BKP_DR);
-
-void RTC_WriteBackupRegister(uint32_t RTC_BKP_DR, uint32_t Data);
-
-static RTC_HandleTypeDef RtcHandle;
-
-uint32_t wakeup_init(uint32_t seconds);
-
-void wakeup_clear(void);
-
-
-#ifndef TM_WATCHDOG_H
-#define TM_WATCHDOG_H 110
-/**
- *  * @addtogroup TM_STM32F4xx_Libraries
- *   * @{
- *    */
-
-/**
- *  * @defgroup TM_WATCHDOG
- *   * @brief    Independent Watchdog timer for STM32F4xx - http://stm32f4-discovery.com/2014/07/library-20-independent-watchdog-timer-on-stm32f4xx/
- *    * @{
- *     *
- *      * \par Changelog
- *       *
- *       @verbatim
- *        Version 1.1
- *          - March 10, 2015
- *            - Support for STD/HAL drivers
- *             Version 1.0
- *               - First release
- *               @endverbatim
- *                *
- *                 * \par Dependencies
- *                  *
- *                  @verbatim
- *                   - STM32F4xx
- *                    - defines.h
- *                    @endverbatim
- *                     */
-
-/**
- *  * @defgroup TM_WATCHDOG_Typedefs
- *   * @brief    Library Typedefs
- *    * @{
- *     */
-
-/**
- *  * @brief Watchdog timeout settings
- *   */
-typedef enum {
-    TM_WATCHDOG_Timeout_5ms,    /*!< System reset called every 5ms */
-    TM_WATCHDOG_Timeout_10ms,   /*!< System reset called every 10ms */
-    TM_WATCHDOG_Timeout_15ms,   /*!< System reset called every 15ms */
-    TM_WATCHDOG_Timeout_30ms,   /*!< System reset called every 30ms */
-    TM_WATCHDOG_Timeout_60ms,   /*!< System reset called every 60ms */
-    TM_WATCHDOG_Timeout_120ms,  /*!< System reset called every 120ms */
-    TM_WATCHDOG_Timeout_250ms,  /*!< System reset called every 250ms */
-    TM_WATCHDOG_Timeout_500ms,  /*!< System reset called every 500ms */
-    TM_WATCHDOG_Timeout_1s,     /*!< System reset called every 1s */
-    TM_WATCHDOG_Timeout_2s,     /*!< System reset called every 2s */
-    TM_WATCHDOG_Timeout_4s      /*!< System reset called every 4s */
-} TM_WATCHDOG_Timeout_t;
-
-/**
- *  * @}
- *   */
-
-/**
- *  * @defgroup TM_WATCHDOG_Functions
- *   * @brief    Library Functions
- *    * @{
- *     */
-
-/**
- *  * @brief  Initialize Watchdog timer
- *   * @note   After you initialize it, you can't disable it unless reset occur.
- *    * @param  timeout. Timeout value when watchdog reset happen if not reset by user.
- *     *            This parameter can be a value of @ref TM_WATCHDOG_Timeout_t enumeration
- *      * @retval Value if system was reset because of watchdog timer
- *       *            - 1: Reset happen because of watchdog
- *        *            - 0: Otherwise
- *         *
- *          */
-uint8_t TM_WATCHDOG_Init(uint16_t reloa);
-
-/**
- *  * @brief  Reset Watchdog timer
- *   * @note   This function have to be called periodically to reset watchdog timer, or your system will reset
- *    * @param  None
- *     * @retval None
- *      */
-void TM_WATCHDOG_Reset(void);
-
-/**
- *  * @}
- *   */
-
-/**
- *  * @}
- *   */
-
-/**
- *  * @}
- *   */
-
-#endif
-
-#endif // __WAKEUP_H__