Repairing A Router Plagued By Capacitors

[psgarcha]’s modem/router comes straight from his internet provider, is on 24/7, and is built with the cheapest components imaginable. Eventually, this will be a problem and for [psgarcha], this problem manifested itself sooner than expected. Fortunately, there was a soldering iron handy.

The problems began with a boot loop – starting the router up, watching the blinking LEDs, and watching these lights follow the same pattern forever. Initially thinking this would be a problem with the firmware, [psgarcha] did the only thing he could do – take it apart. Inside, he found some bulging capacitors. Unsheathing his iron and replacing the obviously faulty components, [psgarcha] plugged the router in and had everything work. Great. Until those caps failed again a few months later.

There was obviously something wrong with the circuit, or wrong with the environment. Figuring it was hot out anyway, [psgarcha] replaced those caps again and added a fan and a small heatsink to the largest chip on the board. This should solve any overheating problems, but the real testing must be done in summer (or putting the router in a well-insulated enclosure). It’s an easy fix, a good reminder of exactly how often caps fail, and a great example of reducing the electronic cruft building up in landfills.

Bridging Networks With The Flip Of A Switch

The TP-Link TL-WR703n is the WRT54G for the modern era – extremely hackable, cheap, and available just about everywhere. Loaded up with OpenWRT, it’s capable of bridging networks: turning Ethernet into WiFi and vice versa. This requires reconfiguring the router, and after doing this enough times, [Martin] was looking for a better solution. The SOC inside the WR703n has two exposed GPIO pins, allowing [Martin] to choose between WiFi access point or client and between bridged or NAT/DHCP.

According to the OpenWRT wiki, there are a few GPIOs available, and after connecting these pins to a DIP switch, [Martin] could access these switches through the firmware. The hard part of this build is building the script to change the settings when the system boots. This script looks at the state of the GPIOs and changes the WiFi into client or access point mode and tries not to muck about with the DHCP somewhere off in the cloud. Yes, we just used cloud in its proper context.

The only other hardware to complete this build was a simple USB to serial converter that should be shoved into the corner of everyone’s workbench. Not bad for an extremely minimal soldering and configuration required for a something that’s extremely useful.

Hackaday Links: November 2, 2014

Russians blowing up capacitors! As we all know, electronics only work because of blue smoke. [kreosan] is releasing this blue smoke from a few hundred caps. Fun times, even if they are a large number of inert tube shields in their collection of caps.

[mayhugh1] over on the home model engine machinist forum has built an 18 cylinder radial engine. It’s based on the Hodgson 9-cylinder radial engine that has been around for a while. The crank case is machined from a 5″ diameter rod of aluminum. There’s a Picassa album of the engine being constructed as well.

[Richard] wanted a Minecraft server, but not just any Minecraft server; this one demanded a custom case. A grass block was the inspiration, acrylic the medium, and a quad-core Mini-ITX the guts of the project.

Halloween was last Friday, and as always the tip line filled up with costume builds. [Leif] built a Ghostbusters costume complete with Muon trap, [Jeff] printed out some steampunk post-apocolyptic goggles, and [Green Gentleman] made a death-a-corn, although we’re struggling to figure out why the last one isn’t called an acorn-‘o-lantern.

[Matthias Wandel], a.k.a. the woodgears.ca dude,  is well-known in certain circles for being a wizard of wood. One of the first projects that put him on the map was a pantorouter – a router to cut mortises and tenons. He’s going back to his roots and building a bigger version. This version uses models of routers that are available outside North America, and in the latest video [Matthias] has it dialed in very well.

The Open Source Remote Control was an entry for The Hackaday Prize that didn’t make the final cut. It’s now an indiegogo project, and has some really cool tech we can’t wait to see in mainstream RC transmitters.

Another Internet of Things Board (But This One Has Lisp))

Using routers as dev boards has been a long and cherished tradition in the circles we frequent, and finally design houses in China are taking notice. There have been a few ‘Internet of Things’ boards in recent months that have taken the SoC found in low-end routers, packaged the on a board with USB, some GPIOs, and a fair bit of memory and called it a dev board. The ZERO Plus is not an exception to this trend, but it does include a very interesting feature when it comes to the development environment: this one uses Lisp as its native language.

The Zero Plus is pretty much what you would expect from a router SoC being transplanted to an Internet of Things board: it uses the Ralink RT5350 SoC, giving it 802.11b/g/n, has 32MB of RAM, 8 or 16 M of Flash, I2C, I2S, SPI, USB, two UARTs, and 14 GPIOs. There is support for a webcam, temperature and humidity sensor, displays, and Arduino via a breakout board that appears to contain a standard, DIP-sized ATMega328,

All of that could be found in dozens of other boards, though. What really sets this one apart is the Lisp development environment. Programming the Zero is exactly as elegant as you would expect, with a ‘toggle a LED according to what time it is’ program looking something like this:

(define LED_On (lambda ()(dev.gpio 11 “out” 1)))
(define LED_Off (lambda ()(dev.gpio 11 “out” 0)))
(define CurrentTime? (lambda ()
      (int (time.strftime “%H” (time.localtime (time.time))))))
(define Night?
      (lambda ()
            (and
                  (> ( CurrentTime? ) 16) (< ( CurrentTime? ) 23)
            )
      )
)
(if (Night?) (LED_On) (LED_Off)

Dev boards built around somewhat more esoteric programming language isn’t anything new; The Espruino brings Javascript to ARM microcontrollers, and the MicroPython project is an astonishing undertaking and successful Kickstarter that brings the BASIC for the 21st century to the embedded world. Lisp, though… I don’t think anyone expected that. It’s a great way to differentiate your product, though.

Playing Doom (Poorly) on a VoCore

Last May brought the unastonishing news that companies were taking the Systems on Chip found in $20 wireless routers and making dev boards out of them. The first of these is the VoCore, an Indiegogo campaign for a 360MHz CPU with 8MB of Flash and 32MB or RAM packaged in a square inch PCB for the Internet of Things. Now that the Indiegogo rewards are heading out to workbenches the world over, it was only a matter of time before someone got Doom to run on one of them.

After fixing some design flaws in the first run of VoCores, [Pyrofer] did the usual things you would do with a tiny system running Linux – webcams for streaming video, USB sound cards to play internet radio, and the normal stuff OpenWrt does.

His curiosity satiated, [Pyrofer] turned to more esoteric builds. WIth a color LCD from Sparkfun, he got an NES emulator running. This is all through hardware SPI, mind you. Simple 2D graphics are cool enough, but the standard graphical test for all low powered computers is, of course, Doom.

The game runs, but just barely. Still, [Pyrofer] is happy with the VoCore and with a little more work with the SPI and bringing a framebuffer to his tiny system, he might have a neat portable Doom machine on his hands.

Anonabox: How To Fail Horribly at Kickstarter

Late last week, Anonabox hit Kickstarter, glomming on to concerns over security, privacy, and censorship. The project was picked up on the usual tech blogs, lauding this project as the pinnacle of the Open Source, Open Hardware movement and a great investment for the privacy-minded technocrat in a post-Snowden world.

Then, the creator of Anonabox did an AMA on reddit. It was quickly discovered that the entire project was an off the shelf router found on AliExpress with reflashed firmware. The router sells for $20 in quantity one, and the Anonabox Kickstarter is giving them away with a minimum $51 pledge. The new firmware is basically a standard OpenWrt installation with a few changes to the config files. The project claims to solve the problem of hardware backdoors, but ships with a backdoor root password (the password is ‘developer!’), open WiFi, and ssh open by default. The Anonabox also claims to be a plug and play solution to security and privacy on the Internet, meaning if this project ever ships, there will be a lot of people who won’t change the default configuration. That’s rather hilarious in its implications.

According to the Kickstarter campaign, the Anonabox has gone through four years of development and four generations of hardware. [August] even has a great graphic demonstrating that each successive generation has reduced the size in half and doubled the system resources:

Unscaled
Image taken from Kickstarter campaign

Anyone with the slightest eye for detail will quickly realize that components, like Ethernet jacks, SD cards, and CF cards are always the same size. I wonder what this graphic would look like if all the boards were scaled so they were in proportion to each other?

Rescaled
Image rescaled so all boards are proportional to each other

Oh. That’s not fishy at all.

As with most Kickstarters that have seen this much negative attention, the project was suspended just a few hours ago, but not before gathering more than $600,000 in pledges at its peak.

suspended

Although the Anonabox failed, there is a market for a Tor-enabled router, and luckily we have one on hackaday.io. It’s so great that some of the copy for the Kickstarter campaign was lifted directly from this project. With a wealth of market research available, we can only hope that [CaptainStouf] runs his own campaign for the UnJailPi.

The Arduino Yun Shield

YUN

A few years ago, the most common method to put an Arduino project on the web was to add a small router loaded up with OpenWrt, wire up a serial connection, and use this router as a bridge to the Internet. This odd arrangement was possibly because the existing Arduino Ethernet and WiFi shields were too expensive or not capable enough, but either way the Arduino crew took notice and released the Arduino Yun: an Arduino with an SoC running Linux with an Ethernet port. It’s pretty much the same thing as an Arduino wired up to a router, with the added bonus of having tons of libraries available.

Since the Yun is basically a SoC grafted onto an Arduino, we’re surprised we haven’t seen something like this before. It’s an Arduino shield that adds a Linux SoC, WiFi, Ethernet, and USB Host to any Arduino board from the Uno, to the Duemilanove and Mega. It is basically identical to the Arduino Yun, and like the Yun it’s completely open for anyone to remix, share, and reuse.

The Yun shield found on the Dragino website features a small SoC running OpenWrt, separated from the rest of the Arduino board with a serial connection. The Linux side of the stack features a 400MHz AR9331 (the same processor as the Yun), 16 MB of Flash, and 64 MB of RAM for running a built-in web server and sending all the sensor data an Arduino can gather up to the cloud (Yun, by the way, means cloud).

All the hardware files are available on the Yun shield repo, with the Dragino HE module being the most difficult part to source.