Initial Release of Program for PAT9125 OTS on L476RG Platform

Dependencies:   mbed

Fork of PAT9125_OTS_L476RG by PixArt

This section highlights the setup and operating guide to integrating PAT9125EL with the Nucleo L476RG.



  • 1. PC with Windows Operating System
  • 2. Nucleo L476RG Dev Kit Board from ST
  • 3. PAT9125EL Arduino Enabled Board
  • 4. USB Cable (one end with miniUSB)


Please connect the board as show below.


Supplying Power

Connect the one end of the USB to the PC USB and the other to the Nucleo L476RG miniUSB as shown in the figure below.


I am assuming that you already know and are able to download the code at this point. Once programmed with the latest compiled .bin file, the LED should turn Green, as illustrated below.


Next, we will test to see if the sensor (PAT9125EL) is indeed functional, and able to display the rotational displacement, on the on-board LCD Display.

While you rotate the Rotational Shaft clockwise, you should see an increment in the digital count for "SHAFT" on the LCD Display, also showing "Up" as you rotate the shaft in the clockwise direction.

While you rotate the Rotational Shaft counter-clockwise, you should see decrease in the digital counts under "SHAFT"on the LCD Display, also showing "Down" as you rotate the shaft in the counter-clockwise direction.

While you push the shaft inward, you should see an increment in digital counts under SPRING. While pushed inward, it will show as "Pre" for Press on the LCD Display.

Conversely, once you release the shaft, the LCD Display should show "Rel" for "Release".

To RESET the digital count, press on the button on the bottom left side of the board. This should reset the digital count on "SHAFT" and "SPRING" to "+0000".

Have fun with this and should you have any questions, please do not hesitate to contact us.


RevisionDateWhoCommit message
22:5496743b160b 2018-02-21 pixus_mbed Publish Test default tip
21:01862e43f169 2018-02-12 pixus_mbed Initial Release of PAT9125 Library
20:14b735f15930 2018-02-01 pixus_mbed Merge pixart_lcm to pat9125_mbed.
19:73d1740ecc6b 2017-11-01 pixus_mbed Remove while(1) loop when sensor initialized fail.
18:27c8c623f5d4 2017-10-31 pixus_mbed Remove unused definition.
17:2ba047d55615 2017-10-31 pixus_mbed LCM & Serial port work at the same time.
16:7bea34dc0356 2017-10-20 pixus_mbed Use pixart_lcm and pat9125_mbed libraires.
15:089f1d28d152 2017-10-20 pixus_mbed 1. Separate LCD and UART mode.; 2. Configure BTN with default pull-up.; 3. NULL handle.
14:b6d9f03435ab 2017-10-20 pixus_mbed Merge KL46Z Branch_nRF51
13:1efc192be0f5 2017-10-20 pixus_mbed Call serialEvent() in pat9125_mbed::task(). Branch_nRF51
12:fa2d203f9ddf 2017-10-20 Added tag K64F for changeset 29053223499c Branch_nRF51
11:29053223499c 2017-10-20 pixus_mbed For FRDM-K64F Branch_nRF51 K64F
10:ccb7b47e31c3 2017-10-20 Added tag L476RG for changeset 53b4b362cbb8
9:53b4b362cbb8 2017-10-20 pixus_mbed For NUCLEO-L476RG L476RG
8:d629249764a1 2017-10-18 Added tag KL46Z for changeset 1cd61816c013
7:33b11ca05eec 2017-10-18 Removed tag FRDM-KL64Z
6:aa24e257deab 2017-10-18 Added tag nRF51 for changeset 61318505e528
5:61318505e528 2017-10-18 pixus_mbed Support UART command mode. nRF51
4:1cd61816c013 2017-10-18 pixus_mbed Support UART command mode. Branch_nRF51 KL46Z
3:cd3762bea4b1 2017-10-17 Added tag FRDM-KL64Z for changeset 4fb710ae08dd
2:4fb710ae08dd 2017-10-17 pixus_mbed For FRDM-KL64Z. Branch_nRF51
1:73967d37f487 2017-10-17 pixus_mbed No default sda and scl pins for pat9125_i2c. ; Always configure sda/scl pins from caller.
0:411244c71423 2017-10-03 pixus_mbed 1st version : OTS, LCM and Serial output are work.