{"id":873,"date":"2011-01-01T11:02:57","date_gmt":"2011-01-01T18:02:57","guid":{"rendered":"http:\/\/mcclanahoochie.com\/blog\/?post_type=portfolio&#038;p=873"},"modified":"2023-06-10T10:29:10","modified_gmt":"2023-06-10T17:29:10","slug":"pic-digital-speedometer","status":"publish","type":"post","link":"https:\/\/mcclanahoochie.com\/blog\/2011\/01\/pic-digital-speedometer\/","title":{"rendered":"PIC Digital Speedometer"},"content":{"rendered":"<h3>June 2008<\/h3>\n<p><a href=\"http:\/\/www.youtube.com\/watch?v=UYnWSjvXJPY\"><img data-recalc-dims=\"1\" decoding=\"async\" data-attachment-id=\"1219\" data-permalink=\"https:\/\/mcclanahoochie.com\/blog\/2011\/01\/pic-digital-speedometer\/digitalspeedo\/#main\" data-orig-file=\"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/01\/digitalspeedo.jpg?fit=200%2C124&amp;ssl=1\" data-orig-size=\"200,124\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"digitalspeedo\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/01\/digitalspeedo.jpg?fit=200%2C124&amp;ssl=1\" class=\"alignnone size-full wp-image-1219\" title=\"digitalspeedo\" src=\"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/01\/digitalspeedo.jpg?resize=200%2C124\" alt=\"\" width=\"200\" height=\"124\" \/><\/a><\/p>\n<p>I used a PIC microcontroller in a circuit to measure my car&#8217;s MPH.\u00a0It measures the frequency of pulses from the\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/Wheel_speed_sensor\">Vehicle Speed Sensor<\/a>,\u00a0and converts it to miles-per-hour.<\/p>\n<p>A summer project involving programming a PIC micro controller to measure my Honda Civic&#8217;s MPH. The circuit I made measures the frequency of the pulses coming from the Vehicle Speed Sensor wire in my car, and calculates my speed based on that, and displays it. The speed displayed is a little jumpy, but the average of the numbers you see measure the speed well.<\/p>\n<p>For a 2002 Honda Civic:<br \/>\nThe Vehicle Speed Sensor wire is a white\/green wire attached via the Connector-A (of A,B,C,E connectors) to the ECU, The ECU is behind the glove box.<br \/>\nThe VSS wire sends 8208 pules every mile.<\/p>\n<p>A frequency meter using a Programmable Interrupt Controller (PIC) was built, referencing this site:\u00a0<a dir=\"ltr\" title=\"http:\/\/freenet-homepage.de\/dl4yhf\/freq_counter\/freq_counter.html\" href=\"http:\/\/freenet-homepage.de\/dl4yhf\/freq_counter\/freq_counter.html\" target=\"_blank\" rel=\"nofollow noopener\">http:\/\/freenet-homepage.de\/dl4yhf\/freq_counter\/freq_counter.html<\/a><br \/>\nThe assembly code was modified to multiply the frequency measured by a scalar number less than one (which varies depending on the pulses per mile).<\/p>\n<p>My Digital Speedometer <a href=\"http:\/\/www.youtube.com\/watch?v=UYnWSjvXJPY\">Video<br \/>\n<\/a><br \/>\nPIC frequency counter <a href=\"http:\/\/www.qsl.net\/dl4yhf\/freq_counter\/freq_counter.html\">circuit<br \/>\n<\/a><br \/>\nPIC frequency counter <a href=\"http:\/\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/01\/counter.asm_.txt\" target=\"_blank\" rel=\"noopener\">code<\/a> (see &#8216;CvtAndDisplayFreq&#8217; section)<\/p>\n<p>Related: Arduino Fuel Consumption Gauge &#8211; <a href=\"http:\/\/mcclanahoochie.com\/blog\/portfolio\/mpguino\/\" target=\"_blank\" rel=\"noopener\">MPGuino<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>June 2008 I used a PIC microcontroller in a circuit to measure my car&#8217;s MPH.\u00a0It measures the frequency of pulses from the\u00a0Vehicle Speed Sensor,\u00a0and converts it to miles-per-hour. A summer project involving programming a PIC micro controller to measure my Honda Civic&#8217;s MPH. The circuit I made measures the frequency of the pulses coming from &#8230; <a title=\"PIC Digital Speedometer\" class=\"read-more\" href=\"https:\/\/mcclanahoochie.com\/blog\/2011\/01\/pic-digital-speedometer\/\" aria-label=\"Read more about PIC Digital Speedometer\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1],"tags":[33,83,101,29,142],"class_list":["post-873","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-car","tag-circuit","tag-programming","tag-projects","tag-speedometer"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pZdXI-e5","jetpack-related-posts":[{"id":877,"url":"https:\/\/mcclanahoochie.com\/blog\/2011\/01\/mpguino\/","url_meta":{"origin":873,"position":0},"title":"MPGuino (Arduino for Car MPG)","author":"mcclanahoochie","date":"January 1, 2011","format":false,"excerpt":"August 2009 This is an\u00a0Arduino microcontroller that I wired into my car's ECU and programmed to calculate the instantaneous\/average miles per gallon of my 2002 Honda Civic. The circuit reads pulses from the Vehicle Speed Sensor and Fuel Injector wires. It\u00a0is wired into my car via a USB cable. It's\u2026","rel":"","context":"In \"arduino\"","block_context":{"text":"arduino","link":"https:\/\/mcclanahoochie.com\/blog\/tag\/arduino\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/01\/mpguino.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2514,"url":"https:\/\/mcclanahoochie.com\/blog\/2012\/12\/music-visualization-with-an-arduino\/","url_meta":{"origin":873,"position":1},"title":"Music Visualization with an Arduino","author":"mcclanahoochie","date":"December 13, 2012","format":false,"excerpt":"Audio Frequency Spectrum Analyzer &\u00a0Spectrogram As a followup to a previous post on Music Visualization with Processing (and a good excuse to play with my Arduino), I decided to convert my Processing music visualizer into hardware. The project is not finished yet, but I wanted to post a quick update\u2026","rel":"","context":"In \"arduino\"","block_context":{"text":"arduino","link":"https:\/\/mcclanahoochie.com\/blog\/tag\/arduino\/"},"img":{"alt_text":"_DSC2334","src":"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2012\/12\/DSC2334-229x300.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":430,"url":"https:\/\/mcclanahoochie.com\/blog\/2010\/08\/idle-fuel-consumption-ac-vs-no-ac\/","url_meta":{"origin":873,"position":2},"title":"Idle Fuel Consumption | A\/C On vs. A\/C Off","author":"mcclanahoochie","date":"August 7, 2010","format":false,"excerpt":"I was curious about how much gas was actually\u00a0saved when idling my car with the A\/C off, so I gathered some fuel\u00a0efficiency\u00a0numbers using the\u00a0MPGuino I made for my 2002 Honda Civic. The MPGuino can display the instant Gallons Per Hour (GPH) consumed, and this measurement was used for these tests.\u2026","rel":"","context":"In \"arduino\"","block_context":{"text":"arduino","link":"https:\/\/mcclanahoochie.com\/blog\/tag\/arduino\/"},"img":{"alt_text":"","src":"https:\/\/spreadsheets.google.com\/oimg?key=0Akacmsp16SQtdFJDOEFnOXBVTTZwc055QXdlRmxrakE&oid=2&zx=dlz9ilw717ri","width":350,"height":200,"srcset":"https:\/\/spreadsheets.google.com\/oimg?key=0Akacmsp16SQtdFJDOEFnOXBVTTZwc055QXdlRmxrakE&oid=2&zx=dlz9ilw717ri 1x, https:\/\/spreadsheets.google.com\/oimg?key=0Akacmsp16SQtdFJDOEFnOXBVTTZwc055QXdlRmxrakE&oid=2&zx=dlz9ilw717ri 1.5x, https:\/\/spreadsheets.google.com\/oimg?key=0Akacmsp16SQtdFJDOEFnOXBVTTZwc055QXdlRmxrakE&oid=2&zx=dlz9ilw717ri 2x"},"classes":[]},{"id":884,"url":"https:\/\/mcclanahoochie.com\/blog\/2011\/01\/sprime\/","url_meta":{"origin":873,"position":3},"title":"SPRIME","author":"mcclanahoochie","date":"January 1, 2011","format":false,"excerpt":"April 2010 Simple Powerline Remote Interactive Monitor and Enforcer SPRIME\u00a0 is an outlet that allows\u00a0you to monitor power consumption and control power usage remotely, using a\u00a0computer or even an Android phone. SPRIME is an open-source smart-grid technology. \u00a0 \u00a0 SPRIME GT-RNOC\u00a0poster: \u00a0 SPRIME\u00a0pictures: \u00a0 \u00a0 Awards SPRIME has made it\u2026","rel":"","context":"In \"arduino\"","block_context":{"text":"arduino","link":"https:\/\/mcclanahoochie.com\/blog\/tag\/arduino\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/01\/sprime-icon.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1896,"url":"https:\/\/mcclanahoochie.com\/blog\/2011\/11\/gpu-tv-l1-optical-flow-with-libjacket\/","url_meta":{"origin":873,"position":4},"title":"GPU TV-L1 Optical Flow with ArrayFire","author":"mcclanahoochie","date":"November 6, 2011","format":false,"excerpt":"Update 1: LibJacket has been renamed to\u00a0\u00a0ArrayFire. Update 2: Huang Chao-Hui was nice enough to port the LibJacket code mentioned here to ArrayFire - see his work here. As one of my\u00a0Computer Vision\u00a0class\u00a0projects, I decided to implement optical flow, because I wanted to learn more about optical flow, and also\u2026","rel":"","context":"In \"arrayfire\"","block_context":{"text":"arrayfire","link":"https:\/\/mcclanahoochie.com\/blog\/tag\/arrayfire\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/11\/jkt-oflow-tvl1-1024x626.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/11\/jkt-oflow-tvl1-1024x626.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/11\/jkt-oflow-tvl1-1024x626.png?resize=525%2C300 1.5x"},"classes":[]},{"id":1201,"url":"https:\/\/mcclanahoochie.com\/blog\/2011\/05\/ai-learning-portfolio\/","url_meta":{"origin":873,"position":5},"title":"AI Learning Portfolio","author":"mcclanahoochie","date":"May 4, 2011","format":false,"excerpt":"As a final assignment\/write-up for my CS6601 Artificial Intelligence class at Georgia Tech, this\u00a0learning portfolio was made to summarize what I had learned throughout the course... CS 6601 Learning Portfolio This page constitutes my learning portfolio for CS 6601, Artificial Intelligence, taken in Spring 2011. In it, I discuss what\u2026","rel":"","context":"In \"ai\"","block_context":{"text":"ai","link":"https:\/\/mcclanahoochie.com\/blog\/tag\/ai\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mcclanahoochie.com\/blog\/wp-content\/uploads\/2011\/05\/Chris2-d%2B_copy_-1.jpg?resize=350%2C200","width":350,"height":200},"classes":[]}],"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/posts\/873","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/comments?post=873"}],"version-history":[{"count":0,"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/posts\/873\/revisions"}],"wp:attachment":[{"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/media?parent=873"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/categories?post=873"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mcclanahoochie.com\/blog\/wp-json\/wp\/v2\/tags?post=873"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}