Reference firmware for PixArt's PMW3901MB sensor and evaluation board. "Hello World" and "Library" contain the exact same files. Please import just one of the two into your mBed compiler as a new program and not as a library.
You are viewing an older revision! See the latest version
Guide for nRF52 DK Platform
This Wiki page provides a detailed guide on how to setup and operate PixArt's PAT9125EL sensor with the Nordic nRF52 (recommended) as well as any other microcontroller.
Setup for the Nordic nRF52:¶
Hardware¶
- 1.) PC with Windows Operating System
- 2.) Nordic nRF52 Microcontroller
- 3.) PMW3901MB Evaluation Board
- 4.) USB Cable (USB-A Male to Micro-USB Male)
- 5.) Jumper Cables
- NOTE: PC not included in image.
Connection¶
Please refer to the image and notes below for pinout details.
- VDDIO on the PMW3901MB evaluation board connects to any VDD pin (provides 3.3V) on the Nordic nRF52 microcontroller.
- GND on the PMW3901MB evaluation board connects to any GND pin on the Nordic nRF52 microcontroller.
- NC = No connection.
- NOTE: You will need an external power source to power the 1.8V - 2.1V rail for VDD on the PMW3901MB evaluation board. This is because the Nordic nRF52 microcontroller cannot provide an analog output in this range.
Importing Code¶
With the sensor connected to the microcontroller, we can now import code into the microcontroller to start talking to the sensor. For the firmware code, please visit this product's components page here:
https://os.mbed.com/components/PMW3901MB-Far-Field-Optical-Motion-Track/
- 1.) Login/create an mBed account.
- 2.) Import the reference firmware into mBed's online compiler using the "Import program" button. You can find this in the link above.
- 3.) When importing the program, make sure you import it as a program and not a library.
- 4.) Make sure the selected platform is the Nordic nRF52-DK.
- 5.) Make sure your Nordic nRF52 microcontroller is plugged into your PC. It should show up as a separate drive similar to the (C:) drive. Then, you can compile the program and save the HEX file into your microcontroller.
- NOTE: If you suspect your code did not import properly, please try unplugging the device, plugging it back in, and then re-compiling and saving the code into the device.
Functional Test¶
- 1.) You will need a terminal emulator program. The one used in this guide will be Tera Term. If you do not already have it, you can find it at this link:
https://en.osdn.jp/projects/ttssh2/releases/
- 2.) Open Tera Term and go to File > New Connection or use the hotkey "Alt + N". Select "Serial" and choose the COM port corresponding to your microcontroller. Then click on "OK".
- 3.) Go to Setup > Serial Port and set the baud rate to 115200. Then click on "OK".
- 4.) Go to Setup > Terminal and change "Receive" from "CR" to "LF". Then click on "OK".
- 5.) With the hardware wired up properly, the firmware loaded into the microcontroller, and the terminal emulator set up, we should now be able to see the sensor working. If you move your finger in front of the sensor (remember the working distance is 8mm to infinity), you should see outputs on the terminal:
- "deltaX" and "deltaY" show the number of counts detected per report.
- "X-axis Counts" and "Y-axis Counts" show the total number of counts recorded throughout runtime.
Thank you for choosing PixArt! If you have any questions, feel free to contact us at: sales_us@pixart.com.