The Silence of the Lamps

Bangalore likes to challenge its commuters with all sorts of hurdles. You have to navigate around potholes while swerving to avoid pedestrian traffic or make-shift dividers or blissfully unaware cows. To notch it up another level, it introduces dark spots.

Dark spots along the Outer Ring Road (ORR) due to inadequate lighting remains an issue ignored amidst ostentatious plans of concrete roads, flyovers, body cameras and what not. Little info for folks who don’t live here, ORR is a 60KM long ring road that defined Bangalore’s periphery two decades ago but is now within city limits and is lined with large tech parks, apartments, malls, buildings and has little greenery around. The city’s infamous traffic memes can be attributed to ORR.

Last week, I mapped close to 650 streetlights around my house and office that’s located on the ORR. ORR always felt poorly lit and I wanted to put a number to it.

Verdict

Functional street lights along the ORR. View the map here

It indeed is poorly lit, no surprise there. 38%. That’s the percentage of streetlights that function along this stretch. If you divide the area into HSR and Bellandur, you can see for yourself how abysmal the numbers are. You can interact with the map here.

Percentage of functional streetlights. Orange for Functional and Grey for Defunct streetlights.

This isn’t a recent scenario, it has been happening for months. The obvious next step was to place a complaint. It’s unbelievable how utterly ineffective BBMP portal is. There is no way to geotag locations on the portal, instead they expect photos and a door number! Potholes or streetlights will not have an address! Of course, I’m yet to hear about my successfully registered complaints.

The trouble with road safety measures in India is that it starts and stops at individual’s awareness- follow traffic rules, look while your cross, assist during road emergencies. Minimal changes or basic maintenance such as lighting up a street will reduce your accidents and crime.

The act doesn’t stop here with one snapshot of an area. The plan is to cover more areas, get more people involved, draw wider attention and maybe one day, the city will truly be lit. If you wish to contribute, read on.


How did I map these?

Mapping 650 lights took me couple of days and close to 6 hours. This activity is possible only after dark, I recommend taking some company along if you are covering areas by walk. Walking on a dark street is not fun at all (or advisable).

I used GoMap!! (iOS), an app for editing OpenStreetMap, and MapBox to visualise this. OSM Contributor looks like an alternative to GoMap!! on Android. Here’s a summary of steps:

Screenshots of GoMap!!
  1. Signup 
    Create an account on OSM as an editor and login into GoMap!! with the same credentials.
  2. Map the streetlights
    Reposition the yellow “+” sign on your screen to the streetlight’s exact location. Tap on the “+” button to add a node. A node is a point on the map which could be a streetlight or building or traffic light; basically anything based on the tags you give.
  3. Tag the streetlights
    Each node requires atleast one tag. You will be prompted with tags as you start typing into the box. A quick google search helped me identify the correct tags for a streetlight node. 
    Add these tag : value combinations to your streetlight nodes:
    highway: street_lamp
    working: no
    (or yes)
Screenshot of adding a tag on GoMap!!

Tip: I discovered later that you can copy a collection of tags by clicking the “More” on the selected node. You can paste this collection while adding tags to your next node, without having to type it all out. Change the value of “working” wherever necessary.

4. Sync Changes
Any changes made on the app are stored offline and need to be uploaded. Tap the cloud sync icon to commit changes. Add a helpful note of changes with it.


So you’ve learnt how to map streetlights. If you want to visualise how well lit your area is, read on. I used Mapbox for this.

<osm-script output="json">
<union>
<query type="node">
<has-kv k="highway" v="street_lamp"/>
<bbox-query {{nominatimBbox:Bellanduru}}/>
</query>
</union>
<print mode="body"/>
<recurse type="down"/>
<print mode="skeleton"/>
</osm-script>
  1. Run the above mentioned query on OverpassAPI
  2. Export and download your area file as a GeoJSON (This file contains latitudes and longitudes)

3. Upload the file on MapBox Studio Dataset, followed by exporting it as a tileset

4. Add a new layer to your map and select the dataset.

Here is what mine looks like after modifications.

It takes a village…

I’m looking at ways of improving data collection, make it scalable, make it more community driven, and have the issue fixed. If you have better ideas, or if you are an OSM contributor (I have questions) and if you wish to join me in my next mapping activity, do write or tweet me @anindita_nayak .

[UPDATE: This initiative has garnered more interest than I’d previously anticipated. You can share your contact details here if you wish to join this movement]