Difference between revisions of "MPR121 Proximity Capacitive Touch Sensor Controller"

From Stm32World Wiki
Jump to navigation Jump to search
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[Category:Components]][[Category:I²C]][[Category:Work in progress]]{{metadesc|MPR121 Proximity Capacitive Touch Controller}}
 
[[Category:Components]][[Category:I²C]][[Category:Work in progress]]{{metadesc|MPR121 Proximity Capacitive Touch Controller}}
[[File:Touch Keyboard - top.jpg|250px|thumb|Keypad Matrix]]
+
[[File:MPR121 Keypad rev. b.jpg|250px|thumb|Keypad Matrix]]
 
The MPR121 is a [[I²C]] device which can be used to implement touch keys.  It can also function as a [[GPIO]] extender and can be used to drive [[LED]]s.
 
The MPR121 is a [[I²C]] device which can be used to implement touch keys.  It can also function as a [[GPIO]] extender and can be used to drive [[LED]]s.
  
Line 11: Line 11:
 
==== Revision a ====
 
==== Revision a ====
 
<div class="res-img">
 
<div class="res-img">
[[File:MPR121 Keypad.svg|1600px]]
+
[[File:MPR121 Keypad.svg|2400px]]
 
</div>
 
</div>
  
 
==== Revision b ====
 
==== Revision b ====
  
[[#Revision a|Rev. a]] was a bit of a rush job and I managed to get one thing fundamentally wrong.  For some bizarre reason, the [[MPR121]] can supply 17 mA on the LED pins but it can only sink about 1.5 mA, so LED's should not be active low on these pins but active high.
+
[[#Revision a|Rev. a]] was a bit of a rush job and I managed to get one thing fundamentally wrong.  For some bizarre reason, the [[MPR121]] can supply 17 mA on the LED pins but it can only sink about 1.5 mA, so LED's should not be active low on these pins but active high. Also, by rearranging the rows and columns, the actual routing got quite a lot neater.
 
 
 
<div class="res-img">
 
<div class="res-img">
[[File:MPR121 Keypad rev. b schematics.svg|1800px]]
+
[[File:MPR121 Keypad rev. b schematics.svg|2400px]]
 
</div>
 
</div>
  
Line 28: Line 27:
 
File:Touch Keyboard - bot.jpg
 
File:Touch Keyboard - bot.jpg
 
File:Touch Keyboard - detail.jpg
 
File:Touch Keyboard - detail.jpg
 +
File:4 pcs MPR121 keypad.jpg
 +
File:MPR121 components.jpg
 +
File:MPR121 Keypad rev. b - bot.jpg
 +
File:MPR121 Keypad rev. b.jpg
 +
File:MPR121 rev. b hooked up.jpg
 
</gallery>
 
</gallery>
  

Revision as of 08:11, 20 June 2023

Keypad Matrix

The MPR121 is a I²C device which can be used to implement touch keys. It can also function as a GPIO extender and can be used to drive LEDs.

Test Board

In order to try out the MPR121 I created a quick keypad.

Schematics

Revision a

MPR121 Keypad.svg

Revision b

Rev. a was a bit of a rush job and I managed to get one thing fundamentally wrong. For some bizarre reason, the MPR121 can supply 17 mA on the LED pins but it can only sink about 1.5 mA, so LED's should not be active low on these pins but active high. Also, by rearranging the rows and columns, the actual routing got quite a lot neater.

MPR121 Keypad rev. b schematics.svg

Galery

Miscellaneous Links