diff --git a/infoscreen/hsl.html b/infoscreen/hsl.html
new file mode 100644
index 0000000..ba6bceb
--- /dev/null
+++ b/infoscreen/hsl.html
@@ -0,0 +1,129 @@
+
+
+
+
+
+
+
+
+ |
+ Aika
+ |
+
+ Bussin numero
+ |
+
+ Pysäkki
+ |
+
+ Päätepysäkki
+ |
+
+
+ |
+ {{x.time}}
+ |
+
+ {{x.bus}}
+ |
+
+ {{x.stop}}
+ |
+
+ {{x.laststop}}
+ |
+
+
+
+
+
diff --git a/infoscreen/hsl.py b/infoscreen/hsl.py
new file mode 100644
index 0000000..3fa5df9
--- /dev/null
+++ b/infoscreen/hsl.py
@@ -0,0 +1,16 @@
+import json
+import urllib.request
+
+usernm="hsl-api käyttäjä tähän"
+passwd="salasana tähän"
+src = urllib.request.urlopen("http://api.reittiopas.fi/hsl/prod/?user="+usernm+"&pass="+passwd+"&request=stops_area¢er_coordinate=2545565,6675319").read().decode("utf-8")
+data = json.loads(src);
+arr=[]
+for element in data:
+ src = urllib.request.urlopen("http://api.reittiopas.fi/hsl/prod/?user="+usernm+"&pass="+passwd+"&request=stop&code="+element['code']).read().decode("utf-8")
+ parsed = json.loads(src)[0]
+ arr.append({"name":parsed['name_fi'],"lines":parsed['lines'],"dist":element['dist'],"departures":parsed['departures']})
+file=open('json','w')
+file.write(json.dumps(arr))
+file.close()
+
diff --git a/infoscreen/json b/infoscreen/json
new file mode 100644
index 0000000..9d29d69
--- /dev/null
+++ b/infoscreen/json
@@ -0,0 +1 @@
+[{"name": "Tietotie, Laituri 17", "lines": ["2010 1:Puolarmets\u00e4", "2010K 1:Puolarmets\u00e4", "2195N 1:Latokaski"], "departures": [{"code": "2195N 1", "date": 20160829, "time": 2426}, {"code": "2195N 1", "date": 20160829, "time": 2455}, {"code": "2195N 1", "date": 20160829, "time": 2524}], "dist": 247}, {"name": "Innopoli, Laituri 2", "lines": ["2010 1:Puolarmets\u00e4", "2010K 1:Puolarmets\u00e4", "2103 1:Pohjois-Tapiola", "2103T 1:Pohjois-Tapiola", "2550 2:It\u00e4keskus, lait. 22", "5510 2:Martinlaakso l.13"], "departures": [{"code": "2550 2", "date": 20160829, "time": 2406}, {"code": "2550 2", "date": 20160829, "time": 2436}, {"code": "2550 2", "date": 20160829, "time": 2506}], "dist": 288}, {"name": "Tietotie, Laituri 16", "lines": ["2010 2:Otaniemi", "2010K 2:Otaniemi", "2195N 2:Kamppi"], "departures": [{"code": "2195N 2", "date": 20160829, "time": 2403}, {"code": "2195N 2", "date": 20160829, "time": 2433}, {"code": "2195N 2", "date": 20160829, "time": 2533}], "dist": 295}, {"name": "Innopoli, Laituri 1", "lines": ["2010 2:Otaniemi", "2010K 2:Otaniemi", "2103 2:Kamppi, laituri 42", "2103T 2:Kamppi, laituri 42", "2550 1:Westendinasema", "5510 1:Tapiola, laituri 6"], "departures": [{"code": "2550 1", "date": 20160829, "time": 2358}, {"code": "2550 1", "date": 20160829, "time": 2413}, {"code": "2550 1", "date": 20160829, "time": 2443}, {"code": "2550 1", "date": 20160829, "time": 2510}, {"code": "2550 1", "date": 20160829, "time": 2539}], "dist": 303}, {"name": "Maarinranta", "lines": ["2550 2:It\u00e4keskus, lait. 22", "5510 2:Martinlaakso l.13"], "departures": [{"code": "2550 2", "date": 20160829, "time": 2407}, {"code": "2550 2", "date": 20160829, "time": 2437}, {"code": "2550 2", "date": 20160829, "time": 2507}], "dist": 493}, {"name": "Otakaari", "lines": ["2010 1:Puolarmets\u00e4", "2010K 1:Puolarmets\u00e4", "2195N 1:Latokaski"], "departures": [{"code": "2195N 1", "date": 20160829, "time": 2424}, {"code": "2195N 1", "date": 20160829, "time": 2453}, {"code": "2195N 1", "date": 20160829, "time": 2522}], "dist": 513}, {"name": "Otakaari", "lines": ["2010 2:Otaniemi", "2010K 2:Otaniemi", "2195N 2:Kamppi"], "departures": [{"code": "2195N 2", "date": 20160829, "time": 2405}, {"code": "2195N 2", "date": 20160829, "time": 2435}, {"code": "2195N 2", "date": 20160829, "time": 2535}], "dist": 539}, {"name": "Hopealehto", "lines": ["2117 1:Tapiola"], "departures": null, "dist": 543}, {"name": "M\u00e4ntyviita", "lines": ["2117 1:Tapiola"], "departures": null, "dist": 636}, {"name": "Vuorimies, Laituri 15", "lines": ["2015 1:Jupperi", "2103 1:Pohjois-Tapiola", "2103T 1:Pohjois-Tapiola", "2194 1:Tapiola", "2194A 1:Orion", "2195 1:Latokaski", "5510 2:Martinlaakso l.13"], "departures": null, "dist": 639}, {"name": "Kemisti, Laituri 13", "lines": ["2015 1:Jupperi", "2550 2:It\u00e4keskus, lait. 22", "5510 2:Martinlaakso l.13"], "departures": [{"code": "2550 2", "date": 20160829, "time": 2403}, {"code": "2550 2", "date": 20160829, "time": 2433}, {"code": "2550 2", "date": 20160829, "time": 2503}], "dist": 643}, {"name": "S\u00e4hk\u00f6mies", "lines": ["2010 1:Puolarmets\u00e4", "2010K 1:Puolarmets\u00e4", "2195N 1:Latokaski"], "departures": [{"code": "2195N 1", "date": 20160829, "time": 2424}, {"code": "2195N 1", "date": 20160829, "time": 2453}, {"code": "2195N 1", "date": 20160829, "time": 2522}], "dist": 666}, {"name": "Tiet\u00e4j\u00e4", "lines": ["2550 1:Westendinasema", "5510 1:Tapiola, laituri 6"], "departures": [{"code": "2550 1", "date": 20160829, "time": 2411}, {"code": "2550 1", "date": 20160829, "time": 2441}, {"code": "2550 1", "date": 20160829, "time": 2509}, {"code": "2550 1", "date": 20160829, "time": 2538}], "dist": 676}, {"name": "Kemisti, Laituri 12", "lines": ["2015 2:Otaniemi", "2550 1:Westendinasema", "5510 1:Tapiola, laituri 6"], "departures": [{"code": "2550 1", "date": 20160829, "time": 2400}, {"code": "2550 1", "date": 20160829, "time": 2415}, {"code": "2550 1", "date": 20160829, "time": 2445}, {"code": "2550 1", "date": 20160829, "time": 2512}, {"code": "2550 1", "date": 20160829, "time": 2541}], "dist": 676}, {"name": "Vuorimies, Laituri 14", "lines": ["2015 2:Otaniemi", "2103 2:Kamppi, laituri 42", "2103T 2:Kamppi, laituri 42", "2194 2:Kamppi", "2194A 2:Kamppi", "2195 2:Kamppi", "5510 1:Tapiola, laituri 6"], "departures": null, "dist": 680}, {"name": "Alvar Aallon puisto, Laituri 11", "lines": ["2102 1:Otaniemi", "2102T 1:Otaniemi", "2103 1:Pohjois-Tapiola", "2103T 1:Pohjois-Tapiola", "2194 1:Tapiola", "2194A 1:Orion", "2195 1:Latokaski", "2552 1:Otaniemi"], "departures": [{"code": "2102T 1", "date": 20160829, "time": 2419}, {"code": "2102T 1", "date": 20160829, "time": 2444}, {"code": "2102T 1", "date": 20160829, "time": 2514}], "dist": 698}, {"name": "S\u00e4hk\u00f6mies", "lines": ["2010 2:Otaniemi", "2010K 2:Otaniemi", "2195N 2:Kamppi"], "departures": [{"code": "2195N 2", "date": 20160829, "time": 2405}, {"code": "2195N 2", "date": 20160829, "time": 2435}, {"code": "2195N 2", "date": 20160829, "time": 2535}], "dist": 705}, {"name": "Alvar Aallon puisto, Laituri 10", "lines": ["2102 2:Kamppi, laituri 41", "2102T 2:Kamppi, laituri 41", "2103 2:Kamppi, laituri 42", "2103T 2:Kamppi, laituri 42", "2194 2:Kamppi", "2194A 2:Kamppi", "2195 2:Kamppi", "2552 2:Malmin asema"], "departures": [{"code": "2102T 2", "date": 20160829, "time": 2407}, {"code": "2102T 2", "date": 20160829, "time": 2437}, {"code": "2102T 2", "date": 20160829, "time": 2527}], "dist": 708}, {"name": "Valkj\u00e4rventie", "lines": ["2116 1:Pohjois-Tapiola", "2116 2:Tapiolan uimahalli"], "departures": null, "dist": 762}, {"name": "Aarnivalkean koulu", "lines": ["2117 1:Tapiola"], "departures": null, "dist": 789}]
\ No newline at end of file