Page 1
Overview Description RAK11200 is a WisBlock Core module for RAK WisBlock based on Espressif ESP32-WROVER. It is a powerful, generic WiFi-BLE MCU module that targets a wide variety of applications. There are two CPU cores that can be individually controlled and the CPU clock frequency is adjustable from 80 MHz to 240 MHz. The low-power deep- sleep current consumption of the ESP32-WROVER is about 10 uA.
WARNING Different from other ESP32 boards, the RAK11200 needs to be put manually into download mode. If you do not force the RAK11200 into download mode, you cannot upload your sketch from Arduino IDE (or PlatformIO) to the board. To force the RAK11200 into download mode, you need to connect the pin BOOT0 on the WisBlock Base RAK5005-O to GND and push the reset button.
An internal FIFO buffer of 64-byte. I2C Interface The RAK11200 module provides two I2C bus interfaces. The module allows you to access directly the registers to control I2C interfaces, which adds more flexibility to the design of the final product. Depending on your configuration, it can serve as an I2C master mode.
Page 4
Documentation Center Pin number WisBlock Function Pin name Pin number ESP32 VBAT VBAT VBAT VBAT 1, 15, 38 1, 15, 38 USB_DP USB_DP USB_DN USB_DN GPIO34 UART0_TX GPIO1 UART0_RX GPIO3 LED1 GPIO12 LED2 GPIO2 I2C1_SDA GPIO4 I2C1_SCL GPIO5 AIN0 GPIO36 AIN1 GPIO39 BOOT...
Page 5
Documentation Center Pin number WisBlock Function Pin name Pin number ESP32 SPI_CS GPIO32 SPI_CLK GPIO33 SPI_MISO GPIO35 SPI_MOSI GPIO25 GPIO14 GPIO27 GPIO26 GPIO23 UART1_TX GPIO21 UART1_RX GPIO19 I2C2_SDA GPIO15 I2C2_SCL GPIO18 GPIO13 GPIO22 1, 15, 38 1, 15, 38 RF Specifications BLE Radio Receiver Parameter...
Documentation Center Transmitter Parameter Conditions Unit RF transmit power Gain control step RF power control range Drift rate kHz/50us Drift WiFi Radio Parameter Condition Unit Operating frequency range 2412 2484 TX power 11b mode 17.5 18.5 TX power 11n MCS7 Sensitivity 11b, 1 Mbps Electrical Characteristics...
Page 8
Figure 8: RAK11200 Schematic Diagram RAK11200 is a WisBlock Core module for RAK WisBlock based on Espressif ESP32-WROVER. It is a powerful, generic WiFi-BLE MCU module that targets a wide variety of applications. There are two CPU cores that can be individually controlled and the CPU clock frequency is adjustable from 80 MHz to 240 MHz.
Page 9
PlatformIO Installation Introduction WisBlock is an amazing product built by RAK company for the IoT industry. It can build circuits like building blocks quickly to realize your idea, and through high-speed connectors and fasteners interconnection, it can directly compose reliable industrial products.
The RAK5005-O board offers several GPIO's on solder pads or the WisBlock Sensor or WisBlock IO modules. These GPIO's are named IO1 to IO6 and SW1. These GPIO's are connected to GPIO's of the RAK11200 module. The GPIO assignments are defined in the RAK11200 variant.h file of the Arduino BSP.
WB_LED2 Software Setup Getting started with RAK11200 is simple and straightforward. The first thing you need is to set up your software development environment. We have made detailed tutorials on how to set up Arduino™ IDE and the PlatformIO extension to be ready to use the WisBlock 11200.
Page 12
Documentation Center 2. In the Preferences window, look for Additional Boards Manager URLs and click the icon on the right side. Figure 3: Arduino Preferences 3. Copy https://raw.githubusercontent.com/RAKwireless/RAKwireless-Arduino-BSP- and paste it into the new window. Index/main/package_rakwireless_index.json If there is already an URL from another manufacturer in that field, paste the above URL into a new line. Then press the OK button.
Documentation Center Figure 5: Arduino Boards Manager 5. Type RAK in the search bar. The RAKwireless WisBlock Core modules will be shown in the window. Figure 6: Arduino Tools Boards Manager 6. Select RAKwireless ESP32 Boards and click on Install button.
Page 14
Documentation Center Figure 7: Arduino Verify/Compile 2. After compiling successfully, you can see some information in the output message area, and the state is "Done compiling.": Figure 8: Arduino Done compiling Now, you can connect your WisBlock hardware with your PC, and upload the code into it. Uploading to WisBlock Make sure that your WisBlock hardware has been connected with your PC correctly, and your PC has recognized WisBlock hardware successfully.
Page 15
Partition Scheme:"Default 4MB with spiffs(1.2MB APP/1.5MB SPIFFS)" Core Debug Level:"No" 2. After uploading successfully, push the reset button. Then you can see some information, as shown in Figure 11 in the output message area. That means you've uploaded the code into RAK11200 successfully.
Page 16
Documentation Center Figure 11: Arduino Done uploading NOTE In case of upload error, the Upload Speed must be reduced. Library Management on Arduino In the Arduino IDE, the Library Manager and the libraries installed are available for every Arduino sketch. Reserved GPIO Pins It is not recommended to use the reserved GPIO pins.
Page 17
OTA stands for Over-The-Air. This feature allows uploading a new program to RAK11200 using WiFi instead of requiring the user to connect the RAK11200 to a computer via USB to perform the update. See the detailed instructions on the link below.
Page 18
The delay() for blinking builtin LED is not used because RAK11200 ESP32-WROVER pauses your program during the delay() routine. If the next OTA request is generated while the program is paused waiting for the delay() to pass, the OTA request will be lost.
Page 19
Documentation Center To achieve maximum power saving during deep sleep, it is necessary to switch off Bluetooth and WiFi before calling esp_deep_sleep_start(). #include <esp_wifi.h> #include <esp_bt.h> esp_wifi_stop(); esp_bt_controller_disable(); esp_deep_sleep_start(); ESP32 Wiki Content Arduino core for ESP32 Wiki content Installation of BSP in PlatformIO Install PlatformIO Download and install the Visual Studio Code which is a great and open source tool.
Page 20
3. You can see there are several items, just click "Espressif 32" item and then "Install". Figure 16: Espressif Framework 4. Before running the first RAK11200 project on the PlatformIO, you need to ensure that the framework- arduinoespressif32 is installed. Then import a minimal project named arduino-blink. On PIO Home, click on...
Page 21
Add WisBlock Core RAK11200 to the Platform 1. Clone WisBlock repository git clone https://github.com/RAKWireless/WisBlock.git 2. Copy the file wiscore_rak11200.json located on folder <cloned_dir>\WisBlock\PlatformIO\RAK11200 to espressif32 platform folder. The platform folder path is similar to the following: Windows: %userprofile%.platformio\platforms\espressif32\boards Linux (Ubuntu): $HOME/.platformio/platforms/espressif32/boards...
Page 22
Documentation Center Add WisBlock Core RAK11200 to the Framework Copy the folder WisCore_RAK11200_Board located on <cloned_dir>\WisBlock\PlatformIO\RAK11200 to the variants folder inside the espressif32 package folder. The espressif32 package folder path is similar to the following: Windows: %userprofile%.platformio\packages\framework-arduinoespressif32\variants Linux (Ubuntu): $HOME/.platformio/packages/framework-arduinoespressif32/variants Mac OS: /Users/{Your_User_id}/.platformio/packages/framework-arduinoespressif32...