I've always wanted to extend my WiFi signal to reach the back corners of my house and yard, but buying an expensive commercial extender seemed wasteful. When I learned it's possible to build your own solar powered extender for less than $20, I knew I had to try it!

After some research and experimentation, I've found a simple way to build an effective solar powered WiFi extender using cheap components. In this guide, I'll walk through the full process so you can build your own.

Overview of Building a Solar Powered WiFi Extender

The basic components needed are:

The total cost of these components purchased new is around $20. I'll provide links to affordable options for each part later in this guide.

The process involves:

  1. Configuring the Raspberry Pi and WiFi adapter to relay signals.
  2. Connecting the solar panel to charge the battery pack.
  3. Mounting the hardware safely in a weatherproof housing outside.

Once set up, the WiFi extender will run automatically using the power from the solar panel!

Hardware Needed for a DIY Solar WiFi Extender

Let's go through each of the components you'll need and affordable options to get started.

Raspberry Pi

The Raspberry Pi is a small single board computer that runs Linux. It has WiFi capabilities built-in and can run the software we need for a WiFi extender.

Any Raspberry Pi model should work, but I recommend the Raspberry Pi 3 B+. It's one of the cheaper models at around $35 but has good WiFi performance for an extender.

USB WiFi Adapter

The Raspberry Pi will connect to your existing WiFi network through its built-in WiFi.

To relay the signal further, we'll need a USB WiFi adapter. This will connect to the Pi and rebroadcast the network.

The *TP-Link Nano TL-WN725N is a good, cheap option that works well. It costs less than $10.

Solar Panel & Battery Pack

To power the WiFi extender off-grid, we'll need:

I used a 10 Watt solar panel paired with a 10,000 mAh battery pack. This combo costs around $30 and provides ample power.

Cables & Housing

You'll also need:

I used a $5 plastic junction box and some spare micro USB cables.

Total Cost: Around $20!

As you can see, the total cost of components is around $20 if you shop for bargains and reuse some supplies.

Now let's move on to the fun part - building and configuring the extender!

Setting Up the Raspberry Pi as a WiFi Extender

With all the hardware ready, we can now set up the Raspberry Pi to run as a WiFi extender.

Flashing the Pi

First, install the Raspberry Pi OS on a micro SD card for the Pi.

I recommend the Lite version since we don't need a full desktop environment. Download the Raspberry Pi Imager to flash the OS easily.

With the OS installed, connect a monitor, keyboard, mouse, and power to boot up the Pi.

Connecting to WiFi & Enabling Internet Sharing

Next, we'll connect the Pi to our existing WiFi network and enable internet sharing.

  1. Click the WiFi icon in the top right and connect to your existing network.
  2. Open the Raspberry Pi configuration tool.
  3. Go to the Interfaces tab.
  4. Enable the Internet Sharing Daemon.

This will allow devices connected to the Pi to access the internet through its WiFi adapter.

Configuring the USB WiFi Adapter

Now connect the USB WiFi adapter to the Pi.

We'll configure it as a new access point to relay the network.

  1. Scan for the adapter with lsusb. It should show up as a Realtek or Ralink device.
  2. Find the device name with ls /dev/ | grep wlan. It will look like wlan0 or wlan1.
  3. Edit the hostapd config file: sudo nano /etc/hostapd/hostapd.conf
  4. Set the ssid and wpa passphrase for your new extended network.
  5. Save and exit.

That configures the USB adapter in access point mode!

Setting Up Routing & Bridging

The last step is routing traffic between the Pi's built-in WiFi and your new USB WiFi network.

  1. Edit sudo nano /etc/sysctl.conf and remove the # before net.ipv4.ip_forward=1 to enable routing.
  2. Reboot the Pi to apply this.
  3. Install the bridge-utils package: sudo apt install bridge-utils
  4. Create the bridge connection: sudo brctl addbr br0
  5. Add the WiFi interfaces:

sudo brctl addif br0 wlan0
sudo brctl addif br0 eth0

That creates a bridge between the networks and enables routing!

Once rebooted, your WiFi extender should now be working! Connect devices to your new extended network.

Powering the Extender with Solar

Now that the software is set up, we just need to get it powered outdoors with solar energy.

Connecting the Battery

First, connect the battery pack to the Pi's micro USB port.

Make sure to use a switching regulator or buck converter to step down to 5V for the Pi.

Wiring up the Solar Panel

Next, connect the solar panel to your battery pack's charging port using tip connectors.

Add some diodes in line to prevent reverse current flow at night.

A blocking diode on the panel side and Schottky diode on the battery side work well.

Mounting it in the Enclosure

Finally, mount all the hardware securely in your outdoor junction box.

Use cable glands to pass wires through the box cleanly.

Silicone sealant around cables and lids helps prevent moisture ingress.

Place the entire assembly outside with good solar exposure.

Your solar powered WiFi extender will now run automatically!

Optimizing the Range and Performance

To maximize the range and performance of your DIY WiFi extender:

With some tweaking using the iwconfig tool, I was able to get 150-200 feet of extra WiFi range from my simple setup!

Closing Thoughts

Building your own solar powered WiFi extender is a fun and affordable DIY project using a Raspberry Pi.

With just $20 in components, I was able to significantly improve my home's WiFi coverage. Plus, it runs entirely off renewable solar energy!

The steps outlined in this guide should provide everything you need to build your own. Let me know in the comments if you have any other tips or questions!