<!-- DEBUG pwg_get_contents: calling wp_remote_get fullurl = http://gallery.dmmedia.org/ws.php?method=pwg.images.getInfo&format=php&image_id=436 -->
<!-- DEBUG a:2:{s:4:"stat";s:2:"ok";s:6:"result";a:34:{s:2:"id";i:436;s:4:"file";s:12:"IMG_3929.JPG";s:14:"date_available";s:19:"2014-11-19 09:27:52";s:13:"date_creation";s:19:"2014-09-28 14:53:13";s:4:"name";s:8:"IMG 3929";s:7:"comment";s:0:"";s:6:"author";N;s:3:"hit";i:8768;s:8:"filesize";i:504;s:5:"width";i:1024;s:6:"height";i:768;s:3:"coi";N;s:18:"representative_ext";N;s:20:"date_metadata_update";s:10:"2017-06-25";s:12:"rating_score";N;s:5:"level";s:1:"0";s:6:"md5sum";N;s:8:"added_by";s:1:"1";s:8:"rotation";s:1:"0";s:8:"latitude";N;s:9:"longitude";N;s:12:"lastmodified";s:19:"2021-11-10 13:23:29";s:9:"is_gvideo";s:1:"0";s:8:"page_url";s:53:"https://gallery.dmmedia.org/picture.php?/436-img_3929";s:11:"element_url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-309520bc.JPG";s:12:"download_url";s:61:"https://gallery.dmmedia.org/action.php?id=436&part=e&download";s:11:"derivatives";a:11:{s:6:"square";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-sq.JPG";s:5:"width";i:120;s:6:"height";i:120;}s:5:"thumb";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-th.JPG";s:5:"width";i:144;s:6:"height";i:108;}s:6:"2small";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-2s.JPG";s:5:"width";i:240;s:6:"height";i:180;}s:6:"xsmall";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-xs.JPG";s:5:"width";i:432;s:6:"height";i:324;}s:5:"small";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-sm.JPG";s:5:"width";i:576;s:6:"height";i:432;}s:6:"medium";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-me.JPG";s:5:"width";i:792;s:6:"height";i:594;}s:5:"large";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-309520bc-la.JPG";s:5:"width";i:1008;s:6:"height";i:756;}s:6:"xlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-309520bc.JPG";s:5:"width";i:1024;s:6:"height";i:768;}s:7:"xxlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-309520bc.JPG";s:5:"width";i:1024;s:6:"height";i:768;}s:7:"3xlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-309520bc.JPG";s:5:"width";i:1024;s:6:"height";i:768;}s:7:"4xlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-309520bc.JPG";s:5:"width";i:1024;s:6:"height";i:768;}}s:8:"name_raw";s:8:"IMG 3929";s:11:"comment_raw";N;s:5:"rates";a:3:{s:5:"score";N;s:5:"count";i:0;s:7:"average";N;}s:10:"categories";a:1:{i:0;a:7:{s:2:"id";i:63;s:4:"name";s:15:"TTP229 touchpad";s:9:"permalink";s:27:"electronics/ttp229_touchpad";s:9:"uppercats";s:5:"59,63";s:11:"global_rank";s:5:"34.20";s:3:"url";s:75:"https://gallery.dmmedia.org/index.php?/category/electronics/ttp229_touchpad";s:8:"page_url";s:90:"https://gallery.dmmedia.org/picture.php?/436-img_3929/category/electronics/ttp229_touchpad";}}s:4:"tags";a:0:{}s:15:"comments_paging";a:4:{s:4:"page";i:0;s:8:"per_page";s:2:"10";s:5:"count";i:0;s:11:"total_count";i:0;}s:8:"comments";a:0:{}}} -->
<!-- DEBUG pwg_get_contents: calling wp_remote_get fullurl = http://gallery.dmmedia.org/ws.php?method=pwg.images.getInfo&format=php&image_id=437 -->
<!-- DEBUG a:2:{s:4:"stat";s:2:"ok";s:6:"result";a:34:{s:2:"id";i:437;s:4:"file";s:12:"IMG_3930.JPG";s:14:"date_available";s:19:"2014-11-19 09:27:52";s:13:"date_creation";s:19:"2014-09-28 14:53:48";s:4:"name";s:8:"IMG 3930";s:7:"comment";s:0:"";s:6:"author";N;s:3:"hit";i:8390;s:8:"filesize";i:269;s:5:"width";i:475;s:6:"height";i:1024;s:3:"coi";N;s:18:"representative_ext";N;s:20:"date_metadata_update";s:10:"2017-06-25";s:12:"rating_score";N;s:5:"level";s:1:"0";s:6:"md5sum";N;s:8:"added_by";s:1:"1";s:8:"rotation";s:1:"0";s:8:"latitude";N;s:9:"longitude";N;s:12:"lastmodified";s:19:"2021-11-10 13:23:29";s:9:"is_gvideo";s:1:"0";s:8:"page_url";s:53:"https://gallery.dmmedia.org/picture.php?/437-img_3930";s:11:"element_url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-b62c62dc.JPG";s:12:"download_url";s:61:"https://gallery.dmmedia.org/action.php?id=437&part=e&download";s:11:"derivatives";a:11:{s:6:"square";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-sq.JPG";s:5:"width";i:120;s:6:"height";i:120;}s:5:"thumb";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-th.JPG";s:5:"width";i:66;s:6:"height";i:144;}s:6:"2small";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-2s.JPG";s:5:"width";i:111;s:6:"height";i:240;}s:6:"xsmall";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-xs.JPG";s:5:"width";i:150;s:6:"height";i:324;}s:5:"small";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-sm.JPG";s:5:"width";i:200;s:6:"height";i:432;}s:6:"medium";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-me.JPG";s:5:"width";i:275;s:6:"height";i:594;}s:5:"large";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-la.JPG";s:5:"width";i:350;s:6:"height";i:756;}s:6:"xlarge";a:3:{s:3:"url";s:84:"https://gallery.dmmedia.org/_data/i/upload/2014/11/19/20141119092752-b62c62dc-xl.JPG";s:5:"width";i:425;s:6:"height";i:918;}s:7:"xxlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-b62c62dc.JPG";s:5:"width";i:475;s:6:"height";i:1024;}s:7:"3xlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-b62c62dc.JPG";s:5:"width";i:475;s:6:"height";i:1024;}s:7:"4xlarge";a:3:{s:3:"url";s:73:"https://gallery.dmmedia.org/upload/2014/11/19/20141119092752-b62c62dc.JPG";s:5:"width";i:475;s:6:"height";i:1024;}}s:8:"name_raw";s:8:"IMG 3930";s:11:"comment_raw";N;s:5:"rates";a:3:{s:5:"score";N;s:5:"count";i:0;s:7:"average";N;}s:10:"categories";a:1:{i:0;a:7:{s:2:"id";i:63;s:4:"name";s:15:"TTP229 touchpad";s:9:"permalink";s:27:"electronics/ttp229_touchpad";s:9:"uppercats";s:5:"59,63";s:11:"global_rank";s:5:"34.20";s:3:"url";s:75:"https://gallery.dmmedia.org/index.php?/category/electronics/ttp229_touchpad";s:8:"page_url";s:90:"https://gallery.dmmedia.org/picture.php?/437-img_3930/category/electronics/ttp229_touchpad";}}s:4:"tags";a:0:{}s:15:"comments_paging";a:4:{s:4:"page";i:0;s:8:"per_page";s:2:"10";s:5:"count";i:0;s:11:"total_count";i:0;}s:8:"comments";a:0:{}}} -->
{"id":30,"date":"2014-11-19T10:47:43","date_gmt":"2014-11-19T07:47:43","guid":{"rendered":"http:\/\/blog.dmmedia.org\/en\/?p=30"},"modified":"2017-06-25T20:15:12","modified_gmt":"2017-06-25T17:15:12","slug":"connecting-ttp229-based-16-key-touchpad-to-microcontroller","status":"publish","type":"post","link":"https:\/\/blog.dmmedia.org\/en\/connecting-ttp229-based-16-key-touchpad-to-microcontroller\/","title":{"rendered":"Connecting TTP229 based 16 key touchpad to microcontroller"},"content":{"rendered":"<p>Recently I have received the TTP229 based 16 key touchpad, ordered from eBay.<\/p>\n<div id=\"Photo-436-xs\" class=\"PiwigoPress_photoblog\"><!-- PiwigoPress Started --><div class=\"PWGP_shortcode img-shadow\"><img decoding=\"async\" class=\"PWGP_photo\" src=\"https:\/\/gallery.dmmedia.org\/_data\/i\/upload\/2014\/11\/19\/20141119092752-309520bc-xs.JPG\" alt=\"\"\/>\n\n      <\/div><\/div><!-- PiwigoPress Ended -->\n<p>Unfortunately no datasheet was provided with this module, nor could I find one from the internet.<br \/>\nSearching for TTP229 chip datasheet also brought unsatisfying results, since there is no datasheet available for exact chip revision used on module. However datasheets for alternative revisions were avaialble and I have found chip comparison table in some chinese blog.<\/p>\n<div id=\"Photo-437-xs\" class=\"PiwigoPress_photoblog\" style=\"margin-right:20px;\"><!-- PiwigoPress Started --><div class=\"PWGP_shortcode img-shadow alignleft textmarginright\"><img decoding=\"async\" class=\"PWGP_photo\" src=\"https:\/\/gallery.dmmedia.org\/_data\/i\/upload\/2014\/11\/19\/20141119092752-b62c62dc-xs.JPG\" alt=\"\"\/>\n\n      <\/div><\/div><!-- PiwigoPress Ended -->\n<p>With this information, I have traced, how chip is connected on the board and how it is configured. By default only 1 group of first 8 buttons works. However, if you solder pinheaders into the holes on the board, you can configure it differently with installing and removing jumpers.<\/p>\n<p>With only 2 additional jumpers installed, all 16 buttons started to work and default active low mode changed into active high. I have written a simple Arduino sketch available at my GitHub repository <a href=\"https:\/\/github.com\/dmmedia\/TTP229B_16keypad\">https:\/\/github.com\/dmmedia\/TTP229B_16keypad<\/a> to demonstrate how the thing is working. And if you connect via SerialMonitor, you can see the button press and release events sent by the touchpad module and received by Arduino.<\/p>\n<p>My next plans are to rewrite Arduino sketch into a library and start using these modules in my different experiments and projects. Modules are slim and pinheaders can be replaced by solder joints and wires where needed. Keypads can be covered with own design films or laminated paper. And the price for these modules is very low, which makes it worth to just purchase them, than making yourself.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently I have received the TTP229 based 16 key touchpad, ordered from eBay. Unfortunately no datasheet was provided with this module, nor could I find one from the internet. Searching for TTP229 chip datasheet also brought unsatisfying results, since there is no datasheet available for exact chip revision used on module. However datasheets for alternative [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,2],"tags":[14,16,15,13],"class_list":["post-30","post","type-post","status-publish","format-standard","hentry","category-hardware","category-programming","tag-arduino","tag-keypad","tag-touchpad","tag-ttp229"],"_links":{"self":[{"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/posts\/30","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/comments?post=30"}],"version-history":[{"count":7,"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/posts\/30\/revisions"}],"predecessor-version":[{"id":93,"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/posts\/30\/revisions\/93"}],"wp:attachment":[{"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/media?parent=30"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/categories?post=30"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.dmmedia.org\/en\/wp-json\/wp\/v2\/tags?post=30"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}