Putting That Airplane On The Map – Live And With Python

Mankind’s fascination with airplanes is unbroken. Whether you’re outside with your camera, getting an actual glimpse of the aircraft, or sitting at home with your RTL-SDR dongle and have a look at them from a distance, tracking them is a fun pastime activity. Provided, of course, that you are living close by an airport or in an area with high enough air traffic. If not, well there’s always real-time tracking online to fall back to, and as [geomatics] will show you, you can build your own live flight tracking system with a few lines of Python.

As it’s usually the case with Python, a lot of functionality is implemented and readily available from external modules, which lets you focus on the actual application without having to worry too much about the details. Similarly, plenty of data can be requested from all sorts of publicly accessible APIs nowadays. If you are looking for a simple-enough example to get into both subjects with a real-world application, [geomatics]’ flight tracker uses cartopy to create a map using Open Street Map data, and retrieves the flight information from ADS-B Exchange‘s public API.

We have seen ADS-B Exchange mentioned a few times before, for example with this ESP8266 based plane spotter and its successor. And if you’re more curious about the air traffic in your direct surroundings, it’s probably time for a DVB USB dongle.

Raspberry Pi On The Go Powers Car System

Most new cars have GPS, rear cameras, and all the other wonders an on-board system can bring. But what if you have an old car? [Fabrice Aneche] has a 2011 vehicle, and wanted a rearview camera. He started with a touch screen, a Raspberry Pi 3, and a camera. But you know how these projects take on a life of their own. So far, the project has two entries in his blog.

It wasn’t long before he couldn’t resist the urge to add a GPS. But that’s no fun without maps. Plus you need turn-by-turn directions. [Fabrice] did a lot of the user interface using Qt5 and QML. He started out running it with X11 but that was slow. It turns out though that Qt5 can drive the Pi’s video directly without using X11, so that’s what he wound up doing. The code that isn’t in QML — mainly dealing with the GPS location — is written in Go, while the code for MOCS (My Own Car System) is on GitHub.

Continue reading “Raspberry Pi On The Go Powers Car System”

Procedurally Generating Random Medieval Cities

With procedural content generation, you build data algorithmically rather than manually — think Minecraft worlds, replete with all the terrains and mobs you’d expect, but distributed differently for every seed. A lot of games use algorithms similarly to generate appropriate treasure and monsters based on the level of the character.

Game developer [Oleg Dolya] built a random city generator that creates excellently tangled maps. You select what size you want, and the application does the rest, filling in each ward with random buildings. The software also determines the purpose of each ward, so the slum doesn’t have a bunch of huge mansions, but instead sports a tangle of tiny huts. [Oleg] shows a little of how the application works, using polygons created with the guard towers serving as vertices. You can learn more about the project on Reddit.

As new as this project is, it’s limited. All the maps feature a walled community, each has one castle within a bailey, and none of the cities includes a river or ocean port. [Oleg] designed it to make cool-looking maps, not necessarily accurate or historically realistic ones. That said, he’s already tweaked the code to reduce the number of triangular buildings. Next up, he wants to generate shanty towns outside the city walls.

Bringing Nautical Charts To A Sunlight Readable Display

Road atlases are still published, but you wouldn’t know it if you have a smartphone and Google Maps. Most pilots who got their license a decade ago started on paper maps, but the iPad rules the cockpit today. On a single SD card, you can store maps for every square mile of the Earth’s surface. [Erland] figured it was high time for digital maps to go nautical and built a tablet-like device to display charts while sailing.

The Pi Chart is, of course, powered by a Raspberry Pi running a few dozen lines of JavaScript and HTML. Software wise, there’s not much to this build save for the new OpenGL-based rendering that allows for ultra smooth map rendering.

The hardware is where this build becomes useful, and for that, [Erland] is using a sunlight readable Pixel Qi display. A Li Ion battery provides about 10 hours of runtime, and a Bluetooth enabled GPS dongle tells the Pi exactly where the boat is.

Continue reading “Bringing Nautical Charts To A Sunlight Readable Display”

Using Public Data to Make Laser Cut Maps

laser cut maps

If you have access to a laser cutter you’re going to want to take a look at this brilliant tutorial. [Steven Smethurst] has figured out how to extract public map data and turn it into a file ready to be laser cut onto your choice of material.

In his example he’s using Vancouver’s Open Data Catalog to build his map using the coastal and public street data. To do this he’s using a program called TileMill which you can get for free from MapBox — it’s a great piece of software for designing your own interactive maps — and the best part is, you can import data from a wide variety of sources, such as Vancouver’s Open Data!

You can import the shape (.SHP) files from the Open Data Catalog and add them as layers into TileMill. From there you can manipulate your map, adjust the detail, and then import as a .SVG or .DXF file ready for laser cutting.

In addition to the Instructable on how to do this, he’s also recorded an in-depth video tutorial which you can check out after the break.

Continue reading “Using Public Data to Make Laser Cut Maps”

Hacking a flatbed scanner to scan very large documents


When you need to scan really large documents, camera setups can get pretty expensive. There are professionals that do it, but they are fairly pricey too. What if you need to do it on the cheap? A flatbed scanner would be perfect, but the lip on the edge of most flatbed scanners keeps the document from touching the platen properly. [Matthew] decided to hack his Canon LiDE 90 scanner to use it in a face-down format. By removing the top of the case, and making a couple extra tweaks, the scanner can now lay flat and simply be moved in a grid.

Once you have the images, you’ll need a way to stitch them together. [Matthew] points to this tutorial, but he awesomely decided to write a little Python script to make it all happen automatically. We imagine that script might be useful for more than just this project.

We’ve seen some other scanners recently, but this one is probably the easiest for the majority of hobbyists to achieve with parts on hand.

GSM tracking without GPS

If you use the Google Maps Mobile function then the big G knows where you are even if your phone doesn’t have a GPS module in it. So the next time you want geolocation capabilities in a project consider building around GSM functionality which can also be used for Internet connectivity. That’s exactly what this module does and luckily the hard work has already been done for you.

The method really hinges on a couple of things. First of all, any GSM capable device knows the information about the cell it is currently communicating with. Secondly, Google knows the coordinates of radio towers used in the cellular mobile network. A little bit of data sniffing on Google Maps Mobile app communications confirms how and when cell information is transferred between the device and the maps server. Take a look at this series of write-ups which go into detail about hardware, software, cell network location data, and communication protocols which Google hasn’t publicly documented. Sure you’re not going to have the accuracy we’ve come to enjoy with GPS, but this can get you pretty close.

[Thanks Boris]