MICROMIS BASE V1
QUICK START GUIDE
Made by: DEVICE PROTOTYPE
A top-down view of the Micromis Base V1 development board, showcasing its components and connectors. The board is black with green and white circuit elements. Key labels visible include NETLIGHT, POWER, BOOT, and EN.
WELCOME
The Micromis Base V1 developer board is a modern tool for engineers and programmers to create advanced electronic projects. The main feature of the board is the use of the ESP32 chip, which is one of the most popular chips for creating projects using wireless networks (Wi-Fi and Bluetooth). This makes the board ideal for creating Internet of Things (IoT) devices and other applications requiring a wireless connection. Using Micromis is facilitated by a built-in USB-UART converter, which allows the device to be programmed using a USB-C cable. A USB socket built into the device also allows powering the device's components and additional components connected to the platform.
The platform is equipped with a Quectel M65 modem, which enables connectivity to cellular networks and data transmission over GSM networks. The modem has an integrated antenna connector, so it can be easily connected to an external antenna for better connection quality.
The device also has an addressable LED, which can be software-controlled and used to visualize the device's status or to create lighting effects. In addition, it has been equipped with the MPU6050 chip, which can measure acceleration and rotation in three axes, allowing the creation of motion-sensing designs.
The board has also been equipped with the LM75 temperature sensor, which allows the measurement of ambient temperature with an accuracy of 0.5 degrees Celsius. This is useful for applications that require temperature measurement, such as air-conditioning systems and measuring devices.
The Micromis Base V1 also features female goldpin leads, which allow the connection of external peripherals and Micromis overlays to expand the capabilities of the board itself.
The platform is also equipped with a number of protections, including overvoltage, short-circuit, over-temperature and over-current protection from the USB port, making it a suitable tool for electronics beginners.
HAVE FUN WHILE USING THE MICROMIS BASE V1!
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: QUICK START
Using the Micromis Base V1 platform is extremely easy! To get started with your board, you need to follow the few steps below:
- Unpack your Micromis Base V1 board from the packaging
- Insert an active nanoSIM card into the SIM card slot
- Connect the GSM antenna to the U.FL connector
- Connect one side of the USB Type C cable to the Micromis Base V1 board and the other to the computer
- Install the environment on your computer in which you will program the board
- Install drivers for CP2102 chip from www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
- Install data packages for ESP32 chips
- Select the "ESP32 Dev Module" board
- Upload your first program to the Micromis Base V1 board
If you have previously used boards with an embedded ESP32 chip in your development environment, you probably won't need to do any additional configuration, and the Micromis Base V1 board will work as soon as you connect it to your computer.
If you don't yet have a programming environment with which you will program the Micromis Base V1 board, or you don't know how to install data packages for boards with ESP32 chips, then on the following pages we will discuss the two most popular environments and how to get the Micromis Base V1 board operable with them.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: USING WITH ARDUINO IDE
Arduino IDE is the most popular environment used mainly for hobby purposes. Due to the ability to import additional boards and the extremely large community of users of this IDE, many owners of boards with the ESP32 chip have decided to use this environment.
If you do not have the Arduino IDE environment installed then you need to download it from the link below and install it on your computer, preferably download version 2.0 or later: https://www.arduino.cc/en/software
After installing the Arduino IDE environment, you need to click: File -> Preferences and in the "Additional boards manager URLs" field enter the following link, this is a link to the official package from the manufacturer of the ESP32 chip: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
A screenshot of the Arduino IDE preferences window shows the "Additional boards manager URLs" field where the provided link should be entered. A dialog box with "CANCEL" and "OK" buttons is shown.
After pasting the board manager link, you need to click on the "OK" button to exit the environment preferences. Now you need to click in turn: Tools -> Board -> Boards Manager and in the board manager type "esp32" into the search engine, after a while you should see the package "esp32 by Espressif Systems", at the bottom of the box you need to click "Install", the latest version of ESP32 chip-equipped board packages will automatically install. If you don't see tile packages after adding the package link to the "Additional boards manager URLs" field and typing the phrase "esp32" in the tile manager search engine, it's a good idea to restart the whole environment.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: USING WITH VISUAL STUDIO CODE
The second most popular environment for programming boards equipped with ESP32 chips is Visual Studio Code with the PlatformIO IDE extension. The PlatformIO extension allows us to work comfortably with a huge number of development boards and standalone chips, which we can program in many frameworks. To use the capabilities of this environment, you must first download and install Visual Studio Code from the link: https://code.visualstudio.com/
In addition, you should download and install Python 3.8.5 or later from the link: https://www.python.org/downloads/
Once you have installed the Visual Studio Code environment and Python, click on View -> Extension in Visual Studio Code, an extension browser window should open on the left. In the extension browser you need to type "PlatformIO IDE", when you click on the item with the name "PlatformIO IDE" a window will open with the details of the extension, now you just need to click "Install" and the extension will appear download and install itself.
After installing the extension, we need to click on the PlatformIO icon located on the toolbar on the left, and then click on the home icon on the bottom bar, which will bring up the extension's home page. Once you are in the extension's home page, you need to click on "Boards" and type "ESP32 Dev Module" in the tile search box. The board you are interested in will itself appear below the search box. When you create a project, all you have to do is copy the ID of the specific board and paste it into the project, or when generating the project, select the board you will program as "ESP32 Dev Module".
A table-like interface shows board details: Name (ESP32 Dev Module), Platform (Espressif 32), Frameworks (Arduino, Espressif IoT Development Framework), MCU (ESP32), FRQ (240 Mhz), ROM (4 MB), RAM (320 KB), Extra (ID: esp32dev Connectivity: wifi, bluetooth, ethernet, can). Another entry shows Onehorse ESP32 Dev Module with similar specs.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: PIN FUNCTION
A diagram illustrates the pinout of the Micromis Base V1 board. Key pin groups are labeled: INPUT ONLY, RTC WAKEUP, ADC, TOUCH, SPI MOSI, SPI CS, I2C SCL, I2C SDA, SPI MISO, SPI CLK, MAIN UART TX, MAIN UART RX, 3V3, 5V, GND, BOOT, EN. Specific GPIO numbers are also indicated.
- ADC: Inputs for the Analog-to-Digital Converter (ADC). The ADC has 12-bit resolution, reading analog values from 0 to 4095 corresponding to voltage ranges from 0V to 3.3V. Do not connect voltages higher than 3.3V.
- RTC WAKEUP: The ESP32 chip supports waking up from an external source via an ultra-saving RTC chip using pins labeled RTC WAKEUP.
- TOUCH: The ESP32 has 10 internal capacitive touch sensors that detect changes in electrical charges on surfaces. These can be used to create simple touch pads or wake up the chip.
- I2C: The ESP32 has two I2C channels. Pins can be set as SDA or SCL. The board routes these to pins 21 (SDA) and 22 (SCL).
- SPI: Used for communication with external components. The board assigns pins 23 (MOSI), 19 (MISO), 18 (CLK), and 5 (CS) to the SPI interface.
- INPUT ONLY: Pins marked INPUT ONLY are for reading analog or digital signals and cannot control external components.
- MAIN UART: Pins for UART communication, connected to the ESP32's main UART. Can be used for programming, bypassing the onboard CP2102 chip. Not recommended for other purposes.
- 3V3: 3.3V power output for external components. Current capacity is 350mA. For more demanding components, use an external power source.
- 5V: 5V power connector for external components. Current capacity is 250mA. Can also power the board if not using USB.
- GND: Board pins for ground potential output.
- BOOT: Controls the ESP32's operating mode, allowing it to enter programming mode. Connected to the BOOT button.
- EN: Resets the ESP32 chip. Connected to the EN button.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: IMPORTANT COMPONENTS ON BOARD
An image of the Micromis Base V1 board is shown with numbered markers pointing to key components:
- ESP32-WROOM-32D microcontroller: The main processing unit for Wi-Fi and Bluetooth connectivity.
- Quectel M65 GSM modem: Enables cellular network communication.
- NanoSIM card slot: For inserting a SIM card for GSM connectivity.
- USB Type-C connector: For power and programming.
- MPU6050 accelerometer and gyroscope: Measures acceleration and spatial orientation.
- LM75 temperature sensor: Measures ambient temperature.
- WS2812C addressable LED: An RGB LED for visual feedback.
- CP2102 programming chip: Facilitates USB-to-UART communication for programming.
- Integrated GSM antenna array: For GSM signal reception.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: BLOCK DIAGRAM OF KEY COMPONENTS
The block diagram illustrates the system architecture of the Micromis Base V1. Key components and their interconnections are shown:
- MCU (ESP32-WROOM-32D WiFi/Bluetooth): Connected via I2C to MPU6050 IMU Sensor and LM75 Temperature Sensor. It communicates via MAIN DTR UART 2 with the MODEM (Quectel M65 GSM). It also receives PWR KEY signal.
- MPU6050 IMU Sensor (0x68 ADDRESS): Receives 3V3 power and communicates with the MCU via I2C.
- LM75 Temperature Sensor (0x48 ADDRESS): Receives 3V3 power and communicates with the MCU via I2C.
- WS2812C ADDRESSABLE LED: Receives 3V3 power and communicates with the MCU via I2C (indicated as IO32).
- NANO SIM CARD CONNECTOR: Provides DATA and POWER to the MODEM.
- MODEM (Quectel M65 GSM): Receives POWER and DATA from the SIM Card Connector. It communicates with the MCU via UART 1 (MAIN DTR) and receives a PWR KEY signal. It outputs ANTENNA SIGNAL to the U.FL ANTENNA INTERFACE.
- CP2102 USB-UART CONVERTER: Receives 5V from the USB-C CONNECTOR and provides 3V3 power. It communicates via DATA with the MODEM and provides UART communication to the MCU.
- USB-C CONNECTOR: Provides 5V power to the CP2102 converter.
- U.FL ANTENNA INTERFACE: Receives ANTENNA SIGNAL from the MODEM.
MICROMIS BASE V1: USING BUILT-IN COMPONENTS - GSM MODEM
An image of the Micromis Base V1 board highlights the Quectel M65 GSM modem with a red circle.
The Micromis Base V1 development board has a built-in Quectel M65 modem for GSM network communication, which allows the device to connect to the Internet without Wi-Fi and send SMS messages.
For proper operation of the modem, an active nanoSIM size card and an antenna with a U.FL connector suitable for operation in the frequency band from 800MHz to 1900 MHz are needed. Depending on needs, a SIM card that only allows mobile data exchange can be used; a SIM card with SMS and phone call support is not required.
The UART protocol by which the modem communicates with the ESP32 is permanently connected to pins 16 (RX2 ESP32) and 17 (TX2 ESP32), which are the default port for the UART2 protocol on the ESP32 chip.
For easy management of the modem's operation, the PWR_KEY and MAIN_DTR pins can be controlled. The modem's PWR_KEY pin allows the modem to be turned on and off; applying a high state to ESP32 pin 27 for one second toggles the modem's state. Applying a high state for 20 ms on pin 26 of the ESP32 activates the MAIN_DTR pin, which allows the modem to wake up when power saving is activated.
The board's built-in NETLIGHT LED indicates the modem's operation: blinking signifies it is working, while being off means it is inactive.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: USING BUILT-IN COMPONENTS - MPU6050 IMU
An image of the Micromis Base V1 board highlights the MPU6050 chip with a red circle.
On the Micromis Base V1 development board is the MPU6050 chip, which can read acceleration and spatial orientation – a combination of a gyroscope and accelerometer.
The MPU6050 communicates with the ESP32 using the I2C protocol, which is also brought out on the Micromis device pins – pins 22 (SCL) and 21 (SDA). To communicate with the IMU, its address is needed. For the chip embedded in the Micromis Base V1 board, the address is fixed at 0x68.
The chip allows for operation in different measurement ranges:
- Accelerometer: ±2 g, ±4 g, ±8 g, ±16 g
- Gyroscope: ±250 °/s, ±500 °/s, ±1000 °/s, ±2000 °/s
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: USING BUILT-IN COMPONENTS - LM75 TEMP SENSOR
An image of the Micromis Base V1 board highlights the LM75 temperature sensor with a red circle.
In addition to the MPU6050 chip, an LM75 temperature sensor is mounted on the Micromis Base V1 development board, which allows reading ambient temperatures from -55 °C to +125 °C.
The LM75 sensor communicates with the ESP32 using the I2C protocol, which is also brought out on the pins of the Micromis device – pins 22 (SCL) and 21 (SDA). To communicate with the LM75, its address is needed. For the chip embedded in the Micromis Base V1 board, the address is fixed at 0x48.
The LM75 temperature sensor allows control over its state, enabling it to be turned off at any time. A significant advantage is its low standard current consumption during operation (250µA) and when programmed off (4µA).
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: USING BUILT-IN COMPONENTS - WS2812C LED
An image of the Micromis Base V1 board highlights the WS2812C addressable LED with a red circle.
The Micromis Base V1 development board is also equipped with an addressable RGB LED to emit light signals. The mounted diode includes the WS2812C chip, which controls the diode and allows the user to select the color and color saturation for the diode's light. Due to the use of RGB technology, there are more than 16 million combinations available to achieve satisfying lighting effects.
The addressable LED is permanently connected to pin 32 of the ESP32 chip and can be controlled using most libraries responsible for controlling addressable LEDs.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: BOARD DIMENSIONS
The Micromis Base V1 platform, due to its compact size, can be used in a wide range of custom projects that require a control platform to be small in size while maintaining low power consumption, high performance, and multiplatform communication via Wi-Fi, Bluetooth, or GSM.
Two views of the board are shown with dimensions: A top view indicates a width of 75mm. A side view indicates a height of 10mm. The overall height of the board with connectors is also indicated as 46mm.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: SAMPLE PROGRAMS - MODEM PRESENTATION
Using the Micromis Base V1 board is very easy due to its partial compatibility with other popular solutions on the market, allowing the use of programs for ESP32 itself, Quectel M65 modem, addressable diodes, IMU MPU6050, and LM75 temperature sensor. The DevicePrototype team has developed dedicated software for each additional component, enabling users to check component functionality via the Arduino IDE environment.
The first program is "Modem presentation," a simple program to test the built-in modem's operation. After uploading the program and running the Serial Monitor, system commands can be entered to control the modem, such as sending SMS messages, searching available networks, configuring the modem, or connecting to the network. It is crucial to complete the variables at the beginning of the program before uploading to ensure proper network connection and SMS functionality.
A useful feature of this program is the ability to send AT commands to the modem. If an unsupported command is sent, the program automatically forwards it to the modem, aiding advanced users in building command schemes for their own programs. The list of AT commands with explanations is available in the board's resource packet, compiled by the modem manufacturer.
Example output shows network search results: AVAILABLE NETWORKS WITH DETAILS: (2, Orange, Orange, 26003), (1, Plus, PLUS, 26001), (1, P4, Play, 26006), (1, T-Mobile.pl, TM PL, 26002),, (0-4), (0-2). It also shows user-sent and modem-sent data related to AT+COPS=? commands.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: SAMPLE PROGRAMS - LED PRESENTATION
The second program is "LED presentation," a short script to check the operation of the built-in LED on the Micromis Base V1 board. After uploading and running the Serial Monitor, commands can be sent to turn off the LED, set any RGB color, or select predefined colors like red, green, blue, pink, yellow, or purple.
Novice users can build their own scripts to utilize the addressable LED based on the commands provided in the program code.
Commands include:
- GREEN: Sets the diode color to green.
- BLUE: Sets the diode color to blue.
- PINK: Sets the diode color to pink.
- YELLOW: Sets the diode color to yellow.
- PURPLE: Sets the diode color to purple.
Example output shows commands like "DATA SENT BY USER: RED" followed by "COLOR SET TO: 255,0,0", and similar for BLUE, YELLOW, CLEAR, and PURPLE.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: SAMPLE PROGRAMS - IMU PRESENTATION
The third program is "IMU Presentation," a simple script to check how the IMU sensor embedded in the Micromis Base V1 board reads data. After uploading the program and running the Serial Plotter, real-time data from the IMU sensor can be viewed.
When the Serial Plotter is run, data sent by the board can be conveniently viewed. Every movement or interaction with the board is recorded and shown in graphs. Users can deselect individual measurement ranges to focus on specific data channels.
A graph displays real-time sensor data, with lines representing AccelerometerX, AccelerometerY, AccelerometerZ, GyroscopeX, GyroscopeY, and GyroscopeZ. The graph shows fluctuations in these values over time, indicating movement and orientation changes.
Made by: DEVICE PROTOTYPE
MICROMIS BASE V1: READY TO USE PROJECTS
To facilitate the use of Micromis Base V1 tiles, a knowledge base has been created to provide access to inspiring projects. The content on the website is constantly updated, allowing users to easily check sample applications of the products.
Explore the knowledge base at: https://deviceprototype.com/hobby/knowledge-center/
Made by: DEVICE PROTOTYPE