Saturday, April 30, 2016

Wireless headless Raspberry Pi Zero with APC220 radios

As a bit of a weekend project and as a way to (finally) use the really cool APC220 Radio Communication modules that I bought ages ago I've put together a wireless and "headless" setup for my Raspberry Pi Zero. This allows me to have a remote-controllable Pi Zero placed anywhere within 1 km (line of sight) without wires! I'm hoping to use this as a robot backpack initially, probably for the Jumping Sumo.

I won't go into technical detail as the build was simply connecting the power and TX/RX from the Pi UART to the APC220 module (I've used protoboard to make a "hat") and telling the Pi to use ttyAMA0 for the console in /boot/cmdline.txt.

If you have any specific how-to questions, let me know in the comments. In the meantime enjoy the photos :)

The top of the hat
The bottom of the hat and Pi header
At the local end I am using an USB-TTL adapter and Putty to connect to the Pi.

Saturday, February 6, 2016

It's all in the (domain) name

After taking a crash course in CNAME entries and CloudFlare's free SSL I've moved dnstwister to a shiny new domain:

Using CloudFlare has restored 99% of the performance-helping caching that the old Google App Engine site had - the only negative from the migration.

The DNS entries are still propagating at the time of posting so if you have any issues you can still use the old domain.

Wednesday, February 3, 2016

DNSTwister is now on Heroku

Well, the title says it all. I've moved dnstwister to Heroku.

It didn't take a lot of work and the benefits are huge - the killer for me was the ability to control exactly how much the application scaled up cost-wise. The costing for hobbyist use on Google App Engine was, in my opinion, completely unmanageable. You couldn't limit the performance of your app under load, the only option was to just pay more and more until you covered the quota exhaustion. With Heroku if I get a surge in interest it'll just get a bit slower, and I can choose to scale up at that point as necessary.

I also like deploying through pushing a branch to GitHub and the whole admin dashboard interface is really slick.

Bookmarked report links will automatically redirect from the old domain so you shouldn't feel a thing and the performance is right on par with Google App Engine.


Wednesday, December 16, 2015

DNS Twister updated

DNS Twister has been updated to fix a number of small bugs, add a few features (it's significantly faster) and - for the sake of your eyes - there's been the addition of a bit of css.

Go have a play!

Sunday, November 8, 2015

Side project time: DNS Twister

Recently I came across a really awesome Python tool called dnstwist. In the author's words, dnstwist is a "Domain name permutation engine for detecting typo squatting, phishing and corporate espionage".

At its core dnstwist creates permutations of domain names and checks to see if they are registered. It also does a ton of other cool things like GeoIP mapping to resolved IP addresses.

As I am sure there are people who would like to use dnstwist but don't have Python installed, I have (after a weekend's re-familiarisation with Google App Engine) created DNS Twister!

It may look rough as **** but it works, presenting the core dnstwist functionality via a web application.

The source code is on GitHub of course.

Sunday, October 25, 2015

Docking/charging system overview

As a follow-up to yesterday's post, here's another of my excellent terrible Visio diagrams, showing how the different bits of software will work together on the RPi:

Click to see in all it's glory

The SumoProxy component is effectively complete and the Web Interface component allows viewing the FPV camera but doesn't offer any control. SumoPy and the docking code "work", but not yet in the manner shown.

Saturday, October 24, 2015

Sumo-charge update

Thanks to a super-long-weekend my Parrot Jumping Sumo wireless charging project has been making good progress.

The current design has the Raspberry Pi "proxy" the Jumping Sumo, teeing off the data passing between the controller (iPad/phone/etc) and the Sumo.

There is a basic web interface where the user can view the FPV video, and (soon) enable the automated docking sequence. The web interface runs off a flask web server which can parse the video data and will inject controls back into the stream.

I expect I'll switch to web-only control once I've proved the web interface can perform on the Raspberry Pi.

SumoPy and SumoProxy
Two components of this project are available separately via these repositories if you want a play: SumoPy, SumoProxy.