{"id":4791,"date":"2026-04-01T08:50:11","date_gmt":"2026-04-01T15:50:11","guid":{"rendered":"https:\/\/www.donluc.com\/?p=4791"},"modified":"2026-04-01T08:50:11","modified_gmt":"2026-04-01T15:50:11","slug":"project-12-robotics-joystick-mk35","status":"publish","type":"post","link":"https:\/\/www.donluc.com\/?p=4791","title":{"rendered":"Project #12: Robotics &#8211; Joystick &#8211; Mk35"},"content":{"rendered":"<div style=\"width: 1200px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-4791-1\" width=\"1200\" height=\"675\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01W.mp4?_=1\" \/><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01W.mp4\">https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01W.mp4<\/a><\/video><\/div>\n<p>&#8212;&#8212;<\/p>\n<p>#DonLucElectronics #DonLuc #Robotics #Joystick #L298N #MotorDC #SparkFunRedBoard #Project #Fritzing #Programming #Electronics #Microcontrollers #Consultant<\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01a.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01a.jpg\" alt=\"Joystick\" width=\"720\" height=\"721\" class=\"alignnone size-full wp-image-4793\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01a.jpg 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01a-300x300.jpg 300w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01a-150x150.jpg 150w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01b.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01b.jpg\" alt=\"Joystick\" width=\"720\" height=\"480\" class=\"alignnone size-full wp-image-4794\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01b.jpg 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01b-300x200.jpg 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01c.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01c.jpg\" alt=\"Joystick\" width=\"720\" height=\"480\" class=\"alignnone size-full wp-image-4795\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01c.jpg 720w, https:\/\/www.donluc.com\/wp-content\/uploads\/2026\/04\/DL2603Mk01c-300x200.jpg 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>&#8212;&#8212;<\/p>\n<p><strong>Thumb Joystick<\/strong><\/p>\n<p>The classic &#8216;PS2-style&#8217; analog joystick. Features smooth dual-axis control (two 10k pots) and a satisfying integrated push-button click.<\/p>\n<p><strong>SparkFun Thumb Joystick Breakout<\/strong><\/p>\n<p>Stop struggling with weird pin spacing. This breakout board routes the Thumb Joystick connections to a standard 0.1&#8243; header for easy breadboarding.<\/p>\n<p><strong>DL2603Mk01<\/strong><\/p>\n<p>1 x SparkFun RedBoard Qwiic<br \/>\n1 x Thumb Joystick<br \/>\n1 x SparkFun Thumb Joystick Breakout<br \/>\n1 x L298N DC Motor Driver Module<br \/>\n2 x Motor DC<br \/>\n1 x Power Switch<br \/>\n1 x 18650 Battery Holder (11 Volts)<br \/>\n3 x 18650 Battery<br \/>\n1 x Micro USB Cable<\/p>\n<p><strong>DL2603Mk01p<\/strong><\/p>\n<p>DL2603Mk01p.ino<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/****** Don Luc Electronics \u00a9 ******\r\nSoftware Version Information\r\nProject #12: Robotics - Joystick - Mk35\r\n12-35\r\nDL2603Mk01p.ino\r\nDL2603Mk01\r\n1 x SparkFun RedBoard Qwiic\r\n1 x Thumb Joystick\r\n1 x SparkFun Thumb Joystick Breakout\r\n1 x L298N DC Motor Driver Module\r\n2 x Motor DC\r\n1 x Power Switch\r\n1 x 18650 Battery Holder (11 Volts)\r\n3 x 18650 Battery\r\n1 x Micro USB Cable\r\n*\/\r\n\r\n\/\/ Include the Library Code\r\n\r\n\/\/ Joystick\r\n\/\/ Vertical\r\nconst int VERT = A0;\r\nint vertical;\r\n\/\/ Horizontal\r\nconst int HORIZ = A1;\r\nint horizontal;\r\n\/\/ Sel\r\nconst int SEL = 7;\r\nint select;\r\n\r\n\/\/ Motor DC 1 \r\nint motor1pin1 = 2;\r\nint motor1pin2 = 3;\r\n\r\n\/\/ Motor DC 2\r\nint motor2pin1 = 4;\r\nint motor2pin2 = 5;\r\n\r\n\/\/ Software Version Information\r\nString sver = &quot;12-35&quot;;\r\n\r\nvoid loop() {\r\n\r\n  \/\/ is Joystick\r\n  isJoystick();\r\n\r\n}\r\n<\/pre>\n<p><strong>getJoystick.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ Joystick\r\n\/\/ is Joystick\r\nvoid isJoystick(){\r\n\r\n  \/\/ Vertical\r\n  vertical = analogRead(VERT);\r\n\r\n  \/\/ Moving Forward\r\n  if (vertical &lt; 20) {\r\n      \r\n    \/\/ Moving Forward\r\n    digitalWrite(motor1pin1, HIGH);\r\n    digitalWrite(motor1pin2, LOW);\r\n    digitalWrite(motor2pin1, HIGH); \r\n    digitalWrite(motor2pin2, LOW);    \r\n    \r\n  }\r\n  \r\n  \/\/ Moving Backwards\r\n  if (vertical &gt; 500) {\r\n    \r\n    \/\/ Moving Backwards\r\n    digitalWrite(motor1pin1, LOW);\r\n    digitalWrite(motor1pin2, HIGH);\r\n    digitalWrite(motor2pin1, LOW); \r\n    digitalWrite(motor2pin2, HIGH);\r\n  \r\n  }\r\n\r\n  \/\/ Horizontal\r\n  horizontal = analogRead(HORIZ);\r\n\r\n  \/\/ Moving Right\r\n  if (horizontal &lt; 25){\r\n\r\n    \/\/ Moving Right\r\n    digitalWrite(motor1pin1, LOW);\r\n    digitalWrite(motor1pin2, HIGH);\r\n    digitalWrite(motor2pin1, LOW); \r\n    digitalWrite(motor2pin2, LOW);\r\n\r\n  }\r\n\r\n\/\/ Moving Left\r\n  if (horizontal &gt; 500 ){\r\n\r\n    \/\/ Moving Left\r\n    digitalWrite(motor1pin1, LOW);\r\n    digitalWrite(motor1pin2, LOW);\r\n    digitalWrite(motor2pin1, LOW); \r\n    digitalWrite(motor2pin2, HIGH);\r\n\r\n  }\r\n\r\n  \/\/ LOW (0) if pressed\r\n  select = digitalRead(SEL);\r\n\r\n  \/\/ Select\r\n  if (select == LOW) {\r\n      \r\n    \/\/ Stop\r\n    digitalWrite(motor1pin1, LOW);\r\n    digitalWrite(motor1pin2, LOW);\r\n    digitalWrite(motor2pin1, LOW); \r\n    digitalWrite(motor2pin2, LOW);\r\n\r\n  }\r\n\r\n}\r\n<\/pre>\n<p><strong>setup.ino<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"arduino\" data-enlighter-title=\"\">\r\n\/\/ Setup\r\nvoid setup()\r\n{\r\n \r\n  \/\/ Motor DC 1\r\n  pinMode(motor1pin1, OUTPUT);\r\n  pinMode(motor1pin2, OUTPUT);\r\n\r\n  \/\/ Motor DC 2\r\n  pinMode(motor2pin1, OUTPUT);\r\n  pinMode(motor2pin2, OUTPUT);\r\n\r\n  \/\/ SEL Input\r\n  pinMode(SEL, INPUT_PULLUP);\r\n\r\n}\r\n<\/pre>\n<p>&#8212;&#8212;<\/p>\n<p><strong>People can contact us:<\/strong> https:\/\/www.donluc.com\/?page_id=1927<\/p>\n<p><strong>Consultant, R&#038;D, Electronics, IoT, Teacher and Instructor<\/strong><\/p>\n<ul>\n<li>Programming Language<\/li>\n<li>Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi, Arm, Silicon Labs, Espressif, Etc&#8230;)<\/li>\n<li>IoT<\/li>\n<li>Wireless (Radio Frequency, Bluetooth, WiFi, Etc&#8230;)<\/li>\n<li>Robotics<\/li>\n<li>Automation<\/li>\n<li>Camera and Video Capture Receiver Stationary, Wheel\/Tank , Underwater and UAV Vehicle<\/li>\n<li>Unmanned Vehicles Terrestrial,  Marine and UAV<\/li>\n<li>Machine Learning<\/li>\n<li>Artificial Intelligence (AI)<\/li>\n<li>RTOS<\/li>\n<li>Sensors, eHealth Sensors, Biosensor, and Biometric<\/li>\n<li>Research &#038; Development (R &#038; D)<\/li>\n<li>Consulting<\/li>\n<\/ul>\n<p><strong>Follow Us<\/strong><\/p>\n<p><strong>Luc Paquin \u2013 Curriculum Vitae &#8211; 2026<\/strong><br \/>\nhttps:\/\/www.donluc.com\/luc\/LucPaquinCVEng2026Mk01.pdf<br \/>\nhttps:\/\/www.donluc.com\/luc\/<\/p>\n<p><strong>Web:<\/strong> https:\/\/www.donluc.com\/<br \/>\n<strong>Web:<\/strong> https:\/\/www.jlpconsultants.com\/<br \/>\n<strong>Facebook:<\/strong> https:\/\/www.facebook.com\/neosteam.labs.9\/<br \/>\n<strong>YouTube:<\/strong> https:\/\/www.youtube.com\/@thesass2063<br \/>\n<strong>DFRobot:<\/strong> https:\/\/learn.dfrobot.com\/user-10186.html<br \/>\n<strong>Elecrow:<\/strong> https:\/\/www.elecrow.com\/share\/sharepj\/center\/no\/760816d385ebb1edc0732fd873bfbf13<br \/>\n<strong>TikTok:<\/strong> https:\/\/www.tiktok.com\/@luc.paquin8<br \/>\n<strong>Hackster:<\/strong> https:\/\/www.hackster.io\/luc-paquin<br \/>\n<strong>LinkedIn:<\/strong> https:\/\/www.linkedin.com\/in\/jlucpaquin\/<\/p>\n<p><strong>Don Luc<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8212;&#8212; #DonLucElectronics #DonLuc #Robotics #Joystick #L298N #MotorDC #SparkFunRedBoard #Project #Fritzing #Programming #Electronics #Microcontrollers #Consultant &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; Thumb Joystick The classic &#8216;PS2-style&#8217; analog joystick. Features smooth dual-axis control (two 10k pots) and a satisfying integrated push-button click. SparkFun Thumb Joystick Breakout Stop struggling with weird pin spacing. This breakout board routes the Thumb Joystick &#8230; <a title=\"Project #12: Robotics &#8211; Joystick &#8211; Mk35\" class=\"read-more\" href=\"https:\/\/www.donluc.com\/?p=4791\" aria-label=\"Read more about Project #12: Robotics &#8211; Joystick &#8211; Mk35\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[94,50,49,38,59,115,5,287,58,10,43,416],"tags":[6,92,102,4,19,85,278,24,9,27,95,109,33,34,108],"class_list":["post-4791","post","type-post","status-publish","format-standard","hentry","category-robotics-projerts","category-arduino","category-consultant","category-digitalelectronics","category-fritzing","category-e-mentor","category-microcontrollers","category-program","category-arduino-programming","category-projects","category-sparkfun","category-unit","tag-arduino","tag-battery","tag-components","tag-consultant","tag-electronics","tag-fritzing","tag-joystick","tag-microcontroller","tag-programming","tag-projects-2","tag-robotic","tag-sparkfun","tag-technology","tag-video-blog","tag-vlog"],"_links":{"self":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/4791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4791"}],"version-history":[{"count":1,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/4791\/revisions"}],"predecessor-version":[{"id":4796,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/4791\/revisions\/4796"}],"wp:attachment":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}