Emirates Air Line cable car, owned by Transport for London, runs 1.5 kilometers across the Thames River in London, England. Transport for London wanted to improve customer service while operating its cable car service more efficiently and cost-effectively. Working with Microsoft partner TBS Services, the transport authority developed a solution combining Microsoft Azure, TV White Spaces, and other technologies to provide free Wi-Fi service to passengers, enhancing customer service and creating new revenue opportunities. It is also obtaining the accurate and timely insights it needs to improve operations and perform predictive maintenance on its cable car equipment.
Transport for London wanted a low-cost way of installing Wi-Fi networks and sensors in its cable car cabins and cable car stations on both sides of the river. The solution included:
- A moderate bandwidth Internet-connected Wi-Fi in its cable car cabins and stations using Microsoft TV White Spaces network technology. By connecting the Wi-Fi to smart closed-circuit television (CCTV) cameras, the transport authority could count pedestrians passing through the stations. TV White Spaces would also provide free Wi-Fi inside all cabins, with the quality of service monitored using dedicated devices that report data to Azure IoT Hub.
- A LoRaWAN network connecting long-life battery-powered temperature and humidity sensors in the cabins and at the stations. By measuring temperature and humidity, they could reduce maintenance costs and increase service availability. The goal was to cover a 5-km radius from the North Greenwich station.
Transport for London hired TBS Mobility, a Microsoft partner, to help it build an IoT solution on the TaskMaster enterprise mobility platform and Microsoft Azure. “We rapidly built an end-to-end proof of concept that brings a variety of data into Azure via IoT Hub, enabling our established TaskMaster services to be easily integrated with the new IoT data,” says Oliver Keyworth, Development Manager at TBS Mobility.
Smart CCTV camera solution
Smart CCTV cameras analyzed how many people passed through the stations while ensuring scalable architecture to be able to have additional analytics capabilities moving forward.
After exploring multiple architectures, the developers decided to put camera frames into Azure Blob storage, which triggers Azure Functions and returns the number of people in the image and outputs into Azure Event Hubs. An Azure Stream Analytics job processes the incoming data from Event Hubs and outputs the results into Azure Table storage.
To count people in an image, they used Pedestrian Detection in CSharp from the Emgu Foundation. After the API returned the number of people in the image, this information was sent to Azure Event Hubs.
Smart CCTV device test
The developers created a Universal Windows Platform (UWP) app for the capture and frame streaming of the video camera input to the Smart CCTV service. This application showed that a Windows mobile device, self-powered and connected to the Wi-Fi service, could deliver a suitable frequency and quality of frames for processing by the Smart CCTV service. The application posted frames via HTTP to the Smart CCTV API or directly to Blob storage via the REST API to trigger the Smart CCTV Azure Network Watcher function. For the UWP camera app, see Camera Preview Frame Sample.
TV White Spaces quality of service solution
The developers used an iPerf network testing application to measure TV White Spaces network performance. The challenge was to make at least the server or client side of this solution self-contained, so it could be battery-powered and post the results to the common IoT Hub. The developers also wanted the solution to receive cloud-to-device messages from the IoT Hub to enable configuration of the iPerf tests and frequency of testing.
The team modified a UWP wrapper for the iPerf tool located on GitHub to post results into IoT Hub. They placed server devices within a cable car cabin roof and the client device within the North Greenwich station. In this way, the client device can manually configure tests and observe results, while both client and server devices can publish the results automatically to IoT Hub. Both devices utilize the TV White Spaces Wi-Fi service to communicate with IoT Hub to provide a point of failure. For the server/client code, see UWP iPerf.
The LoRaWAN network
Emirates Air Line includes 32 active cable car cabins, each of which operates for at least seven hours a day. When fully deployed, the temperature and humidity sensors will transmit data about every 15 minutes; IoT Hub receives approximately 900 messages a day.
The LoRaWAN gateway was constructed using a iC880A frequency concentrator board coupled with a Raspberry Pi via SPI. From there, the TTN application handler was bridged into Azure IoT Hub using the C# bridge.
The LoRaWAN sensors were built using the Adafruit Feather M0 LoRa development board. The sketch was modified to provide one-minute transmission frequency. The device was coupled with an OLED feather to provide a display for test feedback, and powered by a 2200 mAh lithium battery. For security, the LoRaWAN implementation utilizes AES 128-bit encryption of the sensor payload.
A low-cost, effective solution
With its solution now in place, Transport for London has a Wi-Fi system with real-time instrumentation of its cabins and stations with sensors offers accurate and timely operational information that will make maintenance and operations more efficient.
Get the code, documentation, and device references from this project on GitHub, watch the interview with the TBS Mobility and Microsoft team, get hands on with IoT labs or start to build your own IoT solution on Azure.