<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ankush Sharma</title>
    <description>The latest articles on DEV Community by Ankush Sharma (@ankushksh).</description>
    <link>https://dev.to/ankushksh</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1475530%2F73c7f7f8-3ed9-4d70-96ef-a0895897c263.jpeg</url>
      <title>DEV Community: Ankush Sharma</title>
      <link>https://dev.to/ankushksh</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ankushksh"/>
    <language>en</language>
    <item>
      <title>Your Own Wireless Android Auto Adapter with Raspberry Pi</title>
      <dc:creator>Ankush Sharma</dc:creator>
      <pubDate>Sat, 16 May 2026 04:51:13 +0000</pubDate>
      <link>https://dev.to/ankushksh/your-own-wireless-android-auto-adapter-with-raspberry-pi-1gmc</link>
      <guid>https://dev.to/ankushksh/your-own-wireless-android-auto-adapter-with-raspberry-pi-1gmc</guid>
      <description>&lt;p&gt;Most modern cars support Android Auto, but many still require a USB cable. If you’ve ever wished for a wireless connection, you don’t need to buy an expensive adapter. Thanks to open-source collaboration, you can build your own wireless Android Auto dongle using a Raspberry Pi.&lt;/p&gt;




&lt;h2&gt;
  
  
  Project Lineage
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Original Author&lt;/strong&gt;: &lt;a&gt;nisargjhaveri&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Creator of the &lt;strong&gt;WirelessAndroidAutoDongle&lt;/strong&gt; project. He designed the buildroot system that generates SD card images for Raspberry Pi boards and established the foundation for DIY wireless Android Auto adapters.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Fork Author&lt;/strong&gt;: &lt;a&gt;ankush-ksharma&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Forked the repo into &lt;strong&gt;WirelessAndroidAuto&lt;/strong&gt;, preserving the same features and hardware support while making it easier for others to experiment and contribute.&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/ankush-ksharma" rel="noopener noreferrer"&gt;
        ankush-ksharma
      &lt;/a&gt; / &lt;a href="https://github.com/ankush-ksharma/WirelessAndroidAuto" rel="noopener noreferrer"&gt;
        WirelessAndroidAuto
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Use Wireless Android Auto with a car that supports only wired Android Auto using a Raspberry Pi.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Wireless Android Auto Dongle&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;DIY Wireless Android Auto adapter to use with a car that supports only wired Android Auto using a Raspberry Pi.&lt;/p&gt;
&lt;p&gt;This repository consists of the buildroot setup to generate an sd card image to create your own Wireless Android Auto adapter.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Features&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Native Wireless Android Auto connection to the phone, no extra app needed on the phone.&lt;/li&gt;
&lt;li&gt;Passes through all Android Auto traffic without any modifications to ensure seamless and safe experience.&lt;/li&gt;
&lt;li&gt;Fast bootup, connection under 30 seconds.&lt;/li&gt;
&lt;li&gt;Supports multiple boards (Currently multiple Raspberry Pi boards).&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Supported Hardware&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;This is currently tested and built for the following Raspberry Pi boards supporting USB OTG.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Raspberry Pi Zero W&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Raspberry Pi Zero 2 W&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Raspberry Pi 3 A+&lt;/strong&gt; &lt;em&gt;(Raspberry Pi 3 B+ is not supported)&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Raspberry Pi 4&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In theory, this can be extended to more hardware in future with these basic requirements.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The board should support USB…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/ankush-ksharma/WirelessAndroidAuto" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This fork is a good example of how open-source projects evolve and spread through community-driven efforts.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Is WirelessAndroidAuto?
&lt;/h2&gt;

&lt;p&gt;The project is a DIY wireless Android Auto dongle that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creates a native wireless connection between your phone and car.&lt;/li&gt;
&lt;li&gt;Passes through all Android Auto traffic without modification.&lt;/li&gt;
&lt;li&gt;Boots up quickly, usually connecting in under 30 seconds.&lt;/li&gt;
&lt;li&gt;Supports multiple Raspberry Pi boards.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s essentially a plug-and-play solution for anyone tired of cables dangling in their car.&lt;/p&gt;




&lt;h2&gt;
  
  
  Supported Hardware
&lt;/h2&gt;

&lt;p&gt;Tested on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Raspberry Pi Zero W
&lt;/li&gt;
&lt;li&gt;Raspberry Pi Zero 2 W
&lt;/li&gt;
&lt;li&gt;Raspberry Pi 3 A+ (note: 3 B+ not supported)
&lt;/li&gt;
&lt;li&gt;Raspberry Pi 4
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Requirements:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;USB OTG support
&lt;/li&gt;
&lt;li&gt;Wi-Fi and Bluetooth (external modules also work)
&lt;/li&gt;
&lt;li&gt;Operates on car-provided power
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Setup Guide
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Download the pre-built SD card image from the releases page.
&lt;/li&gt;
&lt;li&gt;Flash the image to your SD card.
&lt;/li&gt;
&lt;li&gt;Insert the card into your Raspberry Pi and connect it to your car’s USB port.
&lt;/li&gt;
&lt;li&gt;Pair your phone via Bluetooth (&lt;code&gt;AndroidAuto-Dongle-*&lt;/code&gt;).
&lt;/li&gt;
&lt;li&gt;From then on, your phone will connect automatically via Wi-Fi.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Advanced users can also build their own image using the provided &lt;code&gt;BUILDING.md&lt;/code&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Configurations
&lt;/h2&gt;

&lt;p&gt;After flashing, the SD card mounts as a &lt;strong&gt;WirelessAA drive&lt;/strong&gt;. Edit the &lt;code&gt;aawgd.conf&lt;/code&gt; file to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set your country code
&lt;/li&gt;
&lt;li&gt;Enable SSH for debugging
&lt;/li&gt;
&lt;li&gt;Adjust Wi-Fi password and other preferences
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Troubleshooting
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Phone stuck at “Looking for Android Auto”&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Check your USB cable (it must be data-capable) and ensure you’re using the correct OTG port.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Need logs?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Enable SSH, connect via Wi-Fi, and inspect &lt;code&gt;/var/log/messages&lt;/code&gt;.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Contributing and Support
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Report issues or improvements via GitHub Issues.
&lt;/li&gt;
&lt;li&gt;Submit pull requests to enhance compatibility.
&lt;/li&gt;
&lt;li&gt;Consider sponsoring the project to support ongoing development.
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Limitations
&lt;/h2&gt;

&lt;p&gt;Currently tested on a limited set of cars and head units. Compatibility may vary, so community feedback is important.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;Commercial wireless Android Auto adapters exist, but they can be expensive and limited in compatibility. This project empowers makers and car enthusiasts to build their own solution, learn along the way, and customize it to their needs.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This project is a great example of open-source collaboration:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a&gt;nisargjhaveri&lt;/a&gt;&lt;/strong&gt; built the foundation.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a&gt;ankush-ksharma&lt;/a&gt;&lt;/strong&gt; forked it to keep the momentum alive.
&lt;/li&gt;
&lt;li&gt;The community continues to test, contribute, and improve.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re into DIY car tech, this is a project worth trying.&lt;/p&gt;

</description>
      <category>raspberrypi</category>
      <category>androidauto</category>
    </item>
    <item>
      <title>Your Own Wireless Android Auto Adapter with Raspberry Pi</title>
      <dc:creator>Ankush Sharma</dc:creator>
      <pubDate>Sat, 16 May 2026 04:51:13 +0000</pubDate>
      <link>https://dev.to/ankushksh/your-own-wireless-android-auto-adapter-with-raspberry-pi-5bo2</link>
      <guid>https://dev.to/ankushksh/your-own-wireless-android-auto-adapter-with-raspberry-pi-5bo2</guid>
      <description>&lt;p&gt;Most modern cars support Android Auto, but many still require a USB cable. If you’ve ever wished for a wireless connection, you don’t need to buy an expensive adapter. Thanks to open-source collaboration, you can build your own wireless Android Auto dongle using a Raspberry Pi.&lt;/p&gt;




&lt;h2&gt;
  
  
  Project Lineage
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Original Author&lt;/strong&gt;: &lt;a&gt;nisargjhaveri&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Creator of the &lt;strong&gt;WirelessAndroidAutoDongle&lt;/strong&gt; project. He designed the buildroot system that generates SD card images for Raspberry Pi boards and established the foundation for DIY wireless Android Auto adapters.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Fork Author&lt;/strong&gt;: &lt;a&gt;ankush-ksharma&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Forked the repo into &lt;strong&gt;WirelessAndroidAuto&lt;/strong&gt;, preserving the same features and hardware support while making it easier for others to experiment and contribute.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This fork is a good example of how open-source projects evolve and spread through community-driven efforts.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Is WirelessAndroidAuto?
&lt;/h2&gt;

&lt;p&gt;The project is a DIY wireless Android Auto dongle that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creates a native wireless connection between your phone and car.&lt;/li&gt;
&lt;li&gt;Passes through all Android Auto traffic without modification.&lt;/li&gt;
&lt;li&gt;Boots up quickly, usually connecting in under 30 seconds.&lt;/li&gt;
&lt;li&gt;Supports multiple Raspberry Pi boards.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s essentially a plug-and-play solution for anyone tired of cables dangling in their car.&lt;/p&gt;




&lt;h2&gt;
  
  
  Supported Hardware
&lt;/h2&gt;

&lt;p&gt;Tested on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Raspberry Pi Zero W
&lt;/li&gt;
&lt;li&gt;Raspberry Pi Zero 2 W
&lt;/li&gt;
&lt;li&gt;Raspberry Pi 3 A+ (note: 3 B+ not supported)
&lt;/li&gt;
&lt;li&gt;Raspberry Pi 4
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Requirements:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;USB OTG support
&lt;/li&gt;
&lt;li&gt;Wi-Fi and Bluetooth (external modules also work)
&lt;/li&gt;
&lt;li&gt;Operates on car-provided power
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Setup Guide
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Download the pre-built SD card image from the releases page.
&lt;/li&gt;
&lt;li&gt;Flash the image to your SD card.
&lt;/li&gt;
&lt;li&gt;Insert the card into your Raspberry Pi and connect it to your car’s USB port.
&lt;/li&gt;
&lt;li&gt;Pair your phone via Bluetooth (&lt;code&gt;AndroidAuto-Dongle-*&lt;/code&gt;).
&lt;/li&gt;
&lt;li&gt;From then on, your phone will connect automatically via Wi-Fi.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Advanced users can also build their own image using the provided &lt;code&gt;BUILDING.md&lt;/code&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Configurations
&lt;/h2&gt;

&lt;p&gt;After flashing, the SD card mounts as a &lt;strong&gt;WirelessAA drive&lt;/strong&gt;. Edit the &lt;code&gt;aawgd.conf&lt;/code&gt; file to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set your country code
&lt;/li&gt;
&lt;li&gt;Enable SSH for debugging
&lt;/li&gt;
&lt;li&gt;Adjust Wi-Fi password and other preferences
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Troubleshooting
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Phone stuck at “Looking for Android Auto”&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Check your USB cable (it must be data-capable) and ensure you’re using the correct OTG port.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Need logs?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Enable SSH, connect via Wi-Fi, and inspect &lt;code&gt;/var/log/messages&lt;/code&gt;.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Contributing and Support
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Report issues or improvements via GitHub Issues.
&lt;/li&gt;
&lt;li&gt;Submit pull requests to enhance compatibility.
&lt;/li&gt;
&lt;li&gt;Consider sponsoring the project to support ongoing development.
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Limitations
&lt;/h2&gt;

&lt;p&gt;Currently tested on a limited set of cars and head units. Compatibility may vary, so community feedback is important.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;Commercial wireless Android Auto adapters exist, but they can be expensive and limited in compatibility. This project empowers makers and car enthusiasts to build their own solution, learn along the way, and customize it to their needs.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This project is a great example of open-source collaboration:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a&gt;nisargjhaveri&lt;/a&gt;&lt;/strong&gt; built the foundation.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a&gt;ankush-ksharma&lt;/a&gt;&lt;/strong&gt; forked it to keep the momentum alive.
&lt;/li&gt;
&lt;li&gt;The community continues to test, contribute, and improve.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re into DIY car tech, this is a project worth trying.&lt;/p&gt;

</description>
      <category>raspberrypi</category>
      <category>androidauto</category>
    </item>
    <item>
      <title>Your Own Wireless Android Auto Adapter with Raspberry Pi</title>
      <dc:creator>Ankush Sharma</dc:creator>
      <pubDate>Sat, 16 May 2026 04:51:12 +0000</pubDate>
      <link>https://dev.to/ankushksh/your-own-wireless-android-auto-adapter-with-raspberry-pi-di</link>
      <guid>https://dev.to/ankushksh/your-own-wireless-android-auto-adapter-with-raspberry-pi-di</guid>
      <description>&lt;p&gt;Most modern cars support Android Auto, but many still require a USB cable. If you’ve ever wished for a wireless connection, you don’t need to buy an expensive adapter. Thanks to open-source collaboration, you can build your own wireless Android Auto dongle using a Raspberry Pi.&lt;/p&gt;




&lt;h2&gt;
  
  
  Project Lineage
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Original Author&lt;/strong&gt;: &lt;a&gt;nisargjhaveri&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Creator of the &lt;strong&gt;WirelessAndroidAutoDongle&lt;/strong&gt; project. He designed the buildroot system that generates SD card images for Raspberry Pi boards and established the foundation for DIY wireless Android Auto adapters.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Fork Author&lt;/strong&gt;: &lt;a&gt;ankush-ksharma&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Forked the repo into &lt;strong&gt;WirelessAndroidAuto&lt;/strong&gt;, preserving the same features and hardware support while making it easier for others to experiment and contribute.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This fork is a good example of how open-source projects evolve and spread through community-driven efforts.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Is WirelessAndroidAuto?
&lt;/h2&gt;

&lt;p&gt;The project is a DIY wireless Android Auto dongle that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creates a native wireless connection between your phone and car.&lt;/li&gt;
&lt;li&gt;Passes through all Android Auto traffic without modification.&lt;/li&gt;
&lt;li&gt;Boots up quickly, usually connecting in under 30 seconds.&lt;/li&gt;
&lt;li&gt;Supports multiple Raspberry Pi boards.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s essentially a plug-and-play solution for anyone tired of cables dangling in their car.&lt;/p&gt;




&lt;h2&gt;
  
  
  Supported Hardware
&lt;/h2&gt;

&lt;p&gt;Tested on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Raspberry Pi Zero W
&lt;/li&gt;
&lt;li&gt;Raspberry Pi Zero 2 W
&lt;/li&gt;
&lt;li&gt;Raspberry Pi 3 A+ (note: 3 B+ not supported)
&lt;/li&gt;
&lt;li&gt;Raspberry Pi 4
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Requirements:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;USB OTG support
&lt;/li&gt;
&lt;li&gt;Wi-Fi and Bluetooth (external modules also work)
&lt;/li&gt;
&lt;li&gt;Operates on car-provided power
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Setup Guide
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Download the pre-built SD card image from the releases page.
&lt;/li&gt;
&lt;li&gt;Flash the image to your SD card.
&lt;/li&gt;
&lt;li&gt;Insert the card into your Raspberry Pi and connect it to your car’s USB port.
&lt;/li&gt;
&lt;li&gt;Pair your phone via Bluetooth (&lt;code&gt;AndroidAuto-Dongle-*&lt;/code&gt;).
&lt;/li&gt;
&lt;li&gt;From then on, your phone will connect automatically via Wi-Fi.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Advanced users can also build their own image using the provided &lt;code&gt;BUILDING.md&lt;/code&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Configurations
&lt;/h2&gt;

&lt;p&gt;After flashing, the SD card mounts as a &lt;strong&gt;WirelessAA drive&lt;/strong&gt;. Edit the &lt;code&gt;aawgd.conf&lt;/code&gt; file to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set your country code
&lt;/li&gt;
&lt;li&gt;Enable SSH for debugging
&lt;/li&gt;
&lt;li&gt;Adjust Wi-Fi password and other preferences
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Troubleshooting
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Phone stuck at “Looking for Android Auto”&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Check your USB cable (it must be data-capable) and ensure you’re using the correct OTG port.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Need logs?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Enable SSH, connect via Wi-Fi, and inspect &lt;code&gt;/var/log/messages&lt;/code&gt;.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Contributing and Support
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Report issues or improvements via GitHub Issues.
&lt;/li&gt;
&lt;li&gt;Submit pull requests to enhance compatibility.
&lt;/li&gt;
&lt;li&gt;Consider sponsoring the project to support ongoing development.
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Limitations
&lt;/h2&gt;

&lt;p&gt;Currently tested on a limited set of cars and head units. Compatibility may vary, so community feedback is important.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;Commercial wireless Android Auto adapters exist, but they can be expensive and limited in compatibility. This project empowers makers and car enthusiasts to build their own solution, learn along the way, and customize it to their needs.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This project is a great example of open-source collaboration:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a&gt;nisargjhaveri&lt;/a&gt;&lt;/strong&gt; built the foundation.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a&gt;ankush-ksharma&lt;/a&gt;&lt;/strong&gt; forked it to keep the momentum alive.
&lt;/li&gt;
&lt;li&gt;The community continues to test, contribute, and improve.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re into DIY car tech, this is a project worth trying.&lt;/p&gt;

</description>
      <category>raspberrypi</category>
      <category>androidauto</category>
    </item>
    <item>
      <title>Building a Smart Weather Station with Raspberry Pi Zero W</title>
      <dc:creator>Ankush Sharma</dc:creator>
      <pubDate>Sat, 16 May 2026 04:45:09 +0000</pubDate>
      <link>https://dev.to/ankushksh/building-a-smart-weather-station-with-raspberry-pi-zero-w-491b</link>
      <guid>https://dev.to/ankushksh/building-a-smart-weather-station-with-raspberry-pi-zero-w-491b</guid>
      <description>&lt;p&gt;So I've been wanting to do something with my Raspberry Pi Zero W that's been sitting in my drawer for months, and I finally got around to it last week. The idea was simple: build a little weather station that shows temperature and humidity on a tiny OLED screen. Sounds easy, right? Well, turns out there were a few gotchas along the way, but that's what made it fun.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;The setup is pretty straightforward - a DHT22 sensor (those blue ones you see everywhere) hooked up to a Pi Zero W, with a small 128x64 OLED display. The sensor reads temperature and humidity, the OLED shows the current readings along with some stats, and everything gets logged to CSV files for later analysis. Oh, and I added a web dashboard because why not.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4gezjz73pbopzdwib9j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4gezjz73pbopzdwib9j.png" alt="Project Overview" width="800" height="606"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Hardware Shopping List
&lt;/h2&gt;

&lt;p&gt;Here's what you'll need if you want to build this yourself:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Raspberry Pi Zero W&lt;/strong&gt; - The tiny one with WiFi built-in&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DHT22 sensor&lt;/strong&gt; - About INR 200-300 online. There's also a DHT11 version but the 22 is more accurate&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SSD1306 OLED display&lt;/strong&gt; - 128x64 pixels, I2C version. Got mine for around INR 300&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Jumper wires&lt;/strong&gt; - Female-to-female works best, ewhile buying I did not get these so I had to buy them saperately&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MicroSD card&lt;/strong&gt; - 8GB minimum, but I used a 16GB I had lying around&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Total cost if you already have the Pi? Maybe $15-20. Not bad.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Wiring Part
&lt;/h2&gt;

&lt;p&gt;I'm not gonna lie, I always get nervous about wiring stuff wrong and frying components. But this one's pretty forgiving:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For the DHT22:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Red wire (VCC) → Pin 1 (3.3V)&lt;/li&gt;
&lt;li&gt;Yellow wire (Data) → Pin 7 (GPIO4)&lt;/li&gt;
&lt;li&gt;Black wire (Ground) → Pin 6 (Ground)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For the OLED:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;VCC → Pin 1 (3.3V)&lt;/li&gt;
&lt;li&gt;GND → Pin 6 (Ground)
&lt;/li&gt;
&lt;li&gt;SCL → Pin 5 (GPIO3)&lt;/li&gt;
&lt;li&gt;SDA → Pin 3 (GPIO2)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pro tip: Double-check your pin numbers before powering on. I mixed up GPIO numbering with physical pin numbers once and spent an hour debugging. Not my proudest moment.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Software Side
&lt;/h2&gt;

&lt;p&gt;This is where it got interesting. I started with the basic idea of reading the sensor and updating the display, but quickly realized the DHT22 is... let's say "temperamental." Sometimes it takes 2-5 seconds to respond, sometimes it just doesn't feel like working.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Threading Challenge
&lt;/h3&gt;

&lt;p&gt;My first version was single-threaded and it showed. The clock on the OLED would freeze every time the sensor was being read. Super annoying. So I split things into two threads:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Sensor thread&lt;/strong&gt; - Runs in the background, reads the DHT22 every 10 seconds, logs to CSV&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Display thread&lt;/strong&gt; - Updates the OLED every second with the latest data&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This way the clock stays smooth and the sensor can take its sweet time without blocking everything.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dealing with Sensor Noise
&lt;/h3&gt;

&lt;p&gt;The DHT22 can be noisy. Like, really noisy. One reading says 24°C, the next says 26°C, then back to 24°C. After some research, I implemented exponential moving average (EMA) filtering:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;_ema&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;self&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;previous&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;alpha&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="sh"&gt;"""&lt;/span&gt;&lt;span class="s"&gt;
    Smooth out sensor noise using exponential moving average.
    &lt;/span&gt;&lt;span class="sh"&gt;"""&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;previous&lt;/span&gt; &lt;span class="ow"&gt;is&lt;/span&gt; &lt;span class="bp"&gt;None&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;alpha&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;alpha&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;previous&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Set alpha to 0.2 and boom - smooth, stable readings. Much better.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features That Made It In
&lt;/h2&gt;

&lt;p&gt;Once I had the basic setup working, I kept adding stuff:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Daily Statistics
&lt;/h3&gt;

&lt;p&gt;The display shows min/max temperature and humidity for the day. Resets at midnight automatically.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Comfort Metrics
&lt;/h3&gt;

&lt;p&gt;Because reading "23°C, 65%" doesn't tell you much, I added:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Heat Index&lt;/strong&gt; - What it actually feels like&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dew Point&lt;/strong&gt; - For the weather nerds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Comfort Zone&lt;/strong&gt; - Labels like "Comfortable", "Muggy", "Dry", etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Data Logging
&lt;/h3&gt;

&lt;p&gt;Every reading gets saved to a CSV file named by date (like &lt;code&gt;2026-05-16.csv&lt;/code&gt;). This means I can go back and see trends over weeks or months.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Web Dashboard
&lt;/h3&gt;

&lt;p&gt;Built a simple Flask app that serves a web dashboard. You can check the current readings from your phone while you're in another room. Added some charts using Chart.js to visualize the historical data.&lt;/p&gt;

&lt;p&gt;Access it at &lt;code&gt;http://&amp;lt;your-pi-ip&amp;gt;:5050&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The OLED Display
&lt;/h2&gt;

&lt;p&gt;The little OLED screen cycles through different pages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Page 1:&lt;/strong&gt; Current temp, humidity, and time&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 2:&lt;/strong&gt; Daily min/max stats
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 3:&lt;/strong&gt; Comfort metrics&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 4:&lt;/strong&gt; Sensor health status&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 5:&lt;/strong&gt; Custom notes (yes, you can add text notes through the web interface)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It auto-rotates every 8 seconds, or you can configure it to stay on one page.&lt;/p&gt;

&lt;h3&gt;
  
  
  Preventing Burn-in
&lt;/h3&gt;

&lt;p&gt;Fun fact: OLED screens can get burn-in if you display the same thing forever. So I added a subtle pixel shift every 5 minutes. The whole display moves by 1 pixel in a random direction. Barely noticeable but helps extend the screen's life.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lessons Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The DHT22 is slow&lt;/strong&gt; - Budget 2-5 seconds per reading. Plan your code accordingly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;I2C can be finicky&lt;/strong&gt; - Make sure I2C is enabled in raspi-config. Run &lt;code&gt;i2cdetect -y 1&lt;/code&gt; to verify your devices show up.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Threading is your friend&lt;/strong&gt; - For anything real-time with sensors, separate your concerns.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Error handling matters&lt;/strong&gt; - Sensors fail. Network drops. Files get corrupted. Add retries and fallbacks.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Start simple&lt;/strong&gt; - I tried to do everything at once initially and got overwhelmed. Build it piece by piece.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Results
&lt;/h2&gt;

&lt;p&gt;It's been running for about a week now and I'm pretty happy with it. The display looks clean, the data is logging consistently, and I can check the web dashboard from anywhere in my house.&lt;/p&gt;

&lt;p&gt;Some random observations from the data:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;My room gets surprisingly humid at night (70%+)&lt;/li&gt;
&lt;li&gt;Temperature swing is about 3-4°C throughout the day&lt;/li&gt;
&lt;li&gt;That "stuffy" feeling in the afternoon? Heat index was reading 28°C when actual temp was 25°C&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;I'm thinking about adding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Push notifications when temperature goes outside a certain range&lt;/li&gt;
&lt;li&gt;Integration with Home Assistant&lt;/li&gt;
&lt;li&gt;Maybe a second sensor for another room to compare&lt;/li&gt;
&lt;li&gt;Cloud sync to Google Sheets or something&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But honestly, it does what I need for now.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code &amp;amp; Resources
&lt;/h2&gt;

&lt;p&gt;The full code is available on GitHub: &lt;strong&gt;&lt;a href="https://github.com/ankush-ksharma/Temp_Humidty_Raspi" rel="noopener noreferrer"&gt;https://github.com/ankush-ksharma/Temp_Humidty_Raspi&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Feel free to clone it, modify it, break it, fix it - whatever works for you. The README has detailed setup instructions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Dependencies:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;adafruit-circuitpython-dht&lt;/code&gt; - For DHT22&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;adafruit-circuitpython-ssd1306&lt;/code&gt; - For OLED&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Flask&lt;/code&gt; - For web interface&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Pillow&lt;/code&gt; - For drawing on the OLED&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This was a fun weekend project that turned into something actually useful. The Pi Zero W is surprisingly capable for these kinds of tasks, and seeing the data visualized on the little OLED is oddly satisfying.&lt;/p&gt;

&lt;p&gt;If you're looking for a beginner-friendly IoT project, this is a solid one to start with. The components are cheap, the wiring is simple, and there's enough complexity to keep it interesting without being overwhelming.&lt;/p&gt;

&lt;p&gt;Plus, you end up with something practical. Win-win.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Questions? Suggestions? Found a bug?&lt;/strong&gt; Drop a comment or open an issue on the repo. I'm always curious to see how others modify these kinds of projects.&lt;/p&gt;

</description>
      <category>raspberrypi</category>
      <category>dht22</category>
    </item>
    <item>
      <title>Building a Smart Weather Station with Raspberry Pi Zero W</title>
      <dc:creator>Ankush Sharma</dc:creator>
      <pubDate>Sat, 16 May 2026 04:45:09 +0000</pubDate>
      <link>https://dev.to/ankushksh/building-a-smart-weather-station-with-raspberry-pi-zero-w-2p85</link>
      <guid>https://dev.to/ankushksh/building-a-smart-weather-station-with-raspberry-pi-zero-w-2p85</guid>
      <description>&lt;p&gt;So I've been wanting to do something with my Raspberry Pi Zero W that's been sitting in my drawer for months, and I finally got around to it last week. The idea was simple: build a little weather station that shows temperature and humidity on a tiny OLED screen. Sounds easy, right? Well, turns out there were a few gotchas along the way, but that's what made it fun.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;The setup is pretty straightforward - a DHT22 sensor (those blue ones you see everywhere) hooked up to a Pi Zero W, with a small 128x64 OLED display. The sensor reads temperature and humidity, the OLED shows the current readings along with some stats, and everything gets logged to CSV files for later analysis. Oh, and I added a web dashboard because why not.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4gezjz73pbopzdwib9j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4gezjz73pbopzdwib9j.png" alt="Project Overview" width="800" height="606"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Hardware Shopping List
&lt;/h2&gt;

&lt;p&gt;Here's what you'll need if you want to build this yourself:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Raspberry Pi Zero W&lt;/strong&gt; - The tiny one with WiFi built-in&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DHT22 sensor&lt;/strong&gt; - About INR 200-300 online. There's also a DHT11 version but the 22 is more accurate&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SSD1306 OLED display&lt;/strong&gt; - 128x64 pixels, I2C version. Got mine for around INR 300&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Jumper wires&lt;/strong&gt; - Female-to-female works best, ewhile buying I did not get these so I had to buy them saperately&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MicroSD card&lt;/strong&gt; - 8GB minimum, but I used a 16GB I had lying around&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Total cost if you already have the Pi? Maybe $15-20. Not bad.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Wiring Part
&lt;/h2&gt;

&lt;p&gt;I'm not gonna lie, I always get nervous about wiring stuff wrong and frying components. But this one's pretty forgiving:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For the DHT22:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Red wire (VCC) → Pin 1 (3.3V)&lt;/li&gt;
&lt;li&gt;Yellow wire (Data) → Pin 7 (GPIO4)&lt;/li&gt;
&lt;li&gt;Black wire (Ground) → Pin 6 (Ground)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For the OLED:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;VCC → Pin 1 (3.3V)&lt;/li&gt;
&lt;li&gt;GND → Pin 6 (Ground)
&lt;/li&gt;
&lt;li&gt;SCL → Pin 5 (GPIO3)&lt;/li&gt;
&lt;li&gt;SDA → Pin 3 (GPIO2)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pro tip: Double-check your pin numbers before powering on. I mixed up GPIO numbering with physical pin numbers once and spent an hour debugging. Not my proudest moment.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Software Side
&lt;/h2&gt;

&lt;p&gt;This is where it got interesting. I started with the basic idea of reading the sensor and updating the display, but quickly realized the DHT22 is... let's say "temperamental." Sometimes it takes 2-5 seconds to respond, sometimes it just doesn't feel like working.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Threading Challenge
&lt;/h3&gt;

&lt;p&gt;My first version was single-threaded and it showed. The clock on the OLED would freeze every time the sensor was being read. Super annoying. So I split things into two threads:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Sensor thread&lt;/strong&gt; - Runs in the background, reads the DHT22 every 10 seconds, logs to CSV&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Display thread&lt;/strong&gt; - Updates the OLED every second with the latest data&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This way the clock stays smooth and the sensor can take its sweet time without blocking everything.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dealing with Sensor Noise
&lt;/h3&gt;

&lt;p&gt;The DHT22 can be noisy. Like, really noisy. One reading says 24°C, the next says 26°C, then back to 24°C. After some research, I implemented exponential moving average (EMA) filtering:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;_ema&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;self&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;previous&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;alpha&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="sh"&gt;"""&lt;/span&gt;&lt;span class="s"&gt;
    Smooth out sensor noise using exponential moving average.
    &lt;/span&gt;&lt;span class="sh"&gt;"""&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;previous&lt;/span&gt; &lt;span class="ow"&gt;is&lt;/span&gt; &lt;span class="bp"&gt;None&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;alpha&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;alpha&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;previous&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Set alpha to 0.2 and boom - smooth, stable readings. Much better.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features That Made It In
&lt;/h2&gt;

&lt;p&gt;Once I had the basic setup working, I kept adding stuff:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Daily Statistics
&lt;/h3&gt;

&lt;p&gt;The display shows min/max temperature and humidity for the day. Resets at midnight automatically.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Comfort Metrics
&lt;/h3&gt;

&lt;p&gt;Because reading "23°C, 65%" doesn't tell you much, I added:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Heat Index&lt;/strong&gt; - What it actually feels like&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dew Point&lt;/strong&gt; - For the weather nerds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Comfort Zone&lt;/strong&gt; - Labels like "Comfortable", "Muggy", "Dry", etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Data Logging
&lt;/h3&gt;

&lt;p&gt;Every reading gets saved to a CSV file named by date (like &lt;code&gt;2026-05-16.csv&lt;/code&gt;). This means I can go back and see trends over weeks or months.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Web Dashboard
&lt;/h3&gt;

&lt;p&gt;Built a simple Flask app that serves a web dashboard. You can check the current readings from your phone while you're in another room. Added some charts using Chart.js to visualize the historical data.&lt;/p&gt;

&lt;p&gt;Access it at &lt;code&gt;http://&amp;lt;your-pi-ip&amp;gt;:5050&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The OLED Display
&lt;/h2&gt;

&lt;p&gt;The little OLED screen cycles through different pages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Page 1:&lt;/strong&gt; Current temp, humidity, and time&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 2:&lt;/strong&gt; Daily min/max stats
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 3:&lt;/strong&gt; Comfort metrics&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 4:&lt;/strong&gt; Sensor health status&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Page 5:&lt;/strong&gt; Custom notes (yes, you can add text notes through the web interface)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It auto-rotates every 8 seconds, or you can configure it to stay on one page.&lt;/p&gt;

&lt;h3&gt;
  
  
  Preventing Burn-in
&lt;/h3&gt;

&lt;p&gt;Fun fact: OLED screens can get burn-in if you display the same thing forever. So I added a subtle pixel shift every 5 minutes. The whole display moves by 1 pixel in a random direction. Barely noticeable but helps extend the screen's life.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lessons Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The DHT22 is slow&lt;/strong&gt; - Budget 2-5 seconds per reading. Plan your code accordingly.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;I2C can be finicky&lt;/strong&gt; - Make sure I2C is enabled in raspi-config. Run &lt;code&gt;i2cdetect -y 1&lt;/code&gt; to verify your devices show up.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Threading is your friend&lt;/strong&gt; - For anything real-time with sensors, separate your concerns.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Error handling matters&lt;/strong&gt; - Sensors fail. Network drops. Files get corrupted. Add retries and fallbacks.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Start simple&lt;/strong&gt; - I tried to do everything at once initially and got overwhelmed. Build it piece by piece.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Results
&lt;/h2&gt;

&lt;p&gt;It's been running for about a week now and I'm pretty happy with it. The display looks clean, the data is logging consistently, and I can check the web dashboard from anywhere in my house.&lt;/p&gt;

&lt;p&gt;Some random observations from the data:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;My room gets surprisingly humid at night (70%+)&lt;/li&gt;
&lt;li&gt;Temperature swing is about 3-4°C throughout the day&lt;/li&gt;
&lt;li&gt;That "stuffy" feeling in the afternoon? Heat index was reading 28°C when actual temp was 25°C&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;I'm thinking about adding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Push notifications when temperature goes outside a certain range&lt;/li&gt;
&lt;li&gt;Integration with Home Assistant&lt;/li&gt;
&lt;li&gt;Maybe a second sensor for another room to compare&lt;/li&gt;
&lt;li&gt;Cloud sync to Google Sheets or something&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But honestly, it does what I need for now.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code &amp;amp; Resources
&lt;/h2&gt;

&lt;p&gt;The full code is available on GitHub: &lt;strong&gt;&lt;a href="https://github.com/ankush-ksharma/Temp_Humidty_Raspi" rel="noopener noreferrer"&gt;https://github.com/ankush-ksharma/Temp_Humidty_Raspi&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Feel free to clone it, modify it, break it, fix it - whatever works for you. The README has detailed setup instructions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Dependencies:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;adafruit-circuitpython-dht&lt;/code&gt; - For DHT22&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;adafruit-circuitpython-ssd1306&lt;/code&gt; - For OLED&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Flask&lt;/code&gt; - For web interface&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Pillow&lt;/code&gt; - For drawing on the OLED&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This was a fun weekend project that turned into something actually useful. The Pi Zero W is surprisingly capable for these kinds of tasks, and seeing the data visualized on the little OLED is oddly satisfying.&lt;/p&gt;

&lt;p&gt;If you're looking for a beginner-friendly IoT project, this is a solid one to start with. The components are cheap, the wiring is simple, and there's enough complexity to keep it interesting without being overwhelming.&lt;/p&gt;

&lt;p&gt;Plus, you end up with something practical. Win-win.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Questions? Suggestions? Found a bug?&lt;/strong&gt; Drop a comment or open an issue on the repo. I'm always curious to see how others modify these kinds of projects.&lt;/p&gt;

</description>
      <category>raspberrypi</category>
      <category>dht22</category>
    </item>
  </channel>
</rss>
