Page 1
Hardware Setup The RAK13003 is an IO expansion module that can be mounted to the IO slot of the WisBlock Baseboard. It offers 16 bidirectional I/O ports by using MCP23017 IC from Microchip. The configuration of this module is via the I2C interface, and it supports both standard and fast I2C modes.
Assembling and Disassembling of WisBlock Modules Assembling Procedure The RAK13003 module can be mounted on the IO slot of the WisBlock Base board, as shown in Figure 2. Also, always secure the connection of the WisBlock module by using the compatible screws.
Page 3
RAK13003 in RAK11200 WisBlock Core Guide RAK13003 in RAK11300 WisBlock Core Guide RAK13003 in RAK4631 WisBlock Core Guide Arduino Setup Shown in Figure 6 is the illustration on how to use the RAK13003 IO Expansion Module to power ON LEDs using digitalWrite function.
Page 4
Documentation Center Figure 6: RAK13003 as Output to LEDs 1. First, you need to select the RAK4631 WisBlock Core. Figure 7: Selecting RAK4631 as WisBlock Core 2. Next, copy the following sample code into your Arduino IDE.
Page 5
Documentation Center @file RAK13003_GPIO_Expander_IO_MCP32.ino @author rakwireless.com @brief Use IIC to expand 16 GPIO. Configure PA input PB output, or PA output PB input.Serial port print GPIO status. @version 0.1 @date 2021-2-24 @copyright Copyright (c) 2021 #include <Wire.h> #include <Adafruit_MCP23017.h> //click here to get the library: http://librarymanager/All#Adafru #define PAIN_PBOUT //PB is set as output here and PA as input.
Page 6
If you experience any error in compiling the example sketch, check the updated code for the RAK4631 WisBlock Core Module that can be found on the RAK13003 WisBlock Example Code Repository 3. Install the required library, as shown in Figure 8.
Page 7
Documentation Center Figure 8: Installing the Library 4. Choose Version 1.3.0 of the library, as shown in Figure 9 Figure 9: Selecting Version 1.3.0 5. Select the correct port and upload your code, as shown in Figure 10 and Figure 11.
Page 8
Documentation Center Figure 10: Selecting the correct Serial Port Figure 11: Uploading code 6. When you have successfully uploaded the example sketch, you can see that the LEDs are powered ON. You can also switch PB as INPUT and PA as OUTPUT by changing this line of code shown in Figure 12.
Page 9
RAK13003 in RAK11200 WisBlock Core Guide Arduino Setup Shown in Figure 13 is the illustration on how to use the RAK13003 IO Expansion Module to power ON LEDs using digitalWrite function. Figure 13: RAK13003 as Output to LEDs 1. First, you need to select the RAK11200 WisBlock Core.
Page 10
Documentation Center Figure 14: Selecting RAK11200 as WisBlock Core 2. Next, copy the following sample code into your Arduino IDE.
Page 11
Documentation Center @file RAK13003_GPIO_Expander_IO_MCP32.ino @author rakwireless.com @brief Use IIC to expand 16 GPIO. Configure PA input PB output, or PA output PB input.Serial port print GPIO status. @version 0.1 @date 2021-2-24 @copyright Copyright (c) 2021 #include <Wire.h> #include <Adafruit_MCP23017.h> //click here to get the library: http://librarymanager/All#Adafru #define PAIN_PBOUT //PB is set as output here and PA as input.
Page 12
If you experience any error in compiling the example sketch, check the updated code for the RAK11200 WisBlock Core Module that can be found on the RAK13003 WisBlock Example Code Repository 3. Install the required library, as shown in Figure 15.
Page 13
Documentation Center Figure 15: Installing the Library 4. Choose Version 1.3.0 of the library, as shown in Figure 16 Figure 16: Selecting Version 1.3.0 5. Select the correct port and upload your code, as shown in Figure 17 and Figure 18.
Page 14
Documentation Center Figure 17: Selecting the correct Serial Port Figure 18: Uploading code NOTE: RAK11200 requires the BOOT0 pin to be configured properly before uploading. If not done properly, uploading the source code to RAK11200 will fail. Check the full details on the RAK11200 Quick Start Guide.
Page 15
You can use to send or read states. mcp.digitalWrite(pin_no,state) mcp.digitalRead(pin_no) RAK13003 in RAK11300 WisBlock Core Guide Arduino Setup 1. First, you need to select the RAK11300 WisBlock Core as shown in Figure 20. Figure 20: Selecting RAK11300 as WisBlock Core...
Page 16
Documentation Center @file RAK13003_GPIO_Expander_IO_MCP32.ino @author rakwireless.com @brief Use IIC to expand 16 GPIO. Configure PA input PB output, or PA output PB input.Serial port print GPIO status. @version 0.1 @date 2021-2-24 @copyright Copyright (c) 2021 #include <Wire.h> #include <Adafruit_MCP23017.h> //click here to get the library: http://librarymanager/All#Adafru #define PAIN_PBOUT //PB is set as output here and PA as input.
Page 17
If you experience any error in compiling the example sketch, check the updated code for the RAK11300 WisBlock Core Module that can be found on the RAK13003 WisBlock Example Code Repository 3. Install the required library, as shown in Figure 21.
Page 18
Documentation Center Figure 21: Installing the Library 4. Choose Version 1.3.0 of the library, as shown in Figure 22 Figure 22: Selecting Version 1.3.0 5. Select the correct port and upload your code, as shown in Figure 23 and Figure 24.
Page 19
Documentation Center Figure 23: Selecting the correct Serial Port Figure 24: Uploading code 6. When you have successfully uploaded the example sketch, you can see that the LEDs are powered ON. You can also switch PB as INPUT and PA as OUTPUT by changing this line of code shown in Figure 25.
Page 20
Documentation Center Figure 25: Switching between PA and PB NOTE You can use to send or read states. mcp.digitalWrite(pin_no,state) mcp.digitalRead(pin_no) Last Updated: 11/4/2021, 5:44:19 AM...
Need help?
Do you have a question about the RAK13003 and is the answer not in the manual?
Questions and answers