Proposals

Have you read the Guidelines? If not, please do it.

SenSquare

SenSquare is an IoT service middleware able to collect raw sensor data from open sources (e.g. OpenWeather, ARPA, ThingSpeak …) or Mobile Crowdsensing dedicated campaigns and deliver it in the form of aggregate services. Final users can build their own services through a visual programming language and instantiate them in geographic areas. Try the current release version out at http://sensquare.disi.unibo.it. You can also read the main publication.

Porting from Angular 2 to Angular 10

The current version of the platform was built with Angular 2. We need to port it to Angular 10 and deploy it to our public server with the latest modifications.

Useful Links
  • Main thesis by G. Iselli
  • Recent additions by G. Darnois and V. Armandi (upon request)
Internship
Effort
3/5

Must know/learn:
Typescript, Angular, Python

Scraping 5 New Data Sources

The platform needs to be enriched with Open Data from at least 5 new data sources (ARPA regions and similar).

Useful Links
Internship
Effort
2/5

Must know/learn:
Python, MySQL

Porting on Cassandra

The platform is currently supported by a MySQL monolith database. We need to port it  to a distributed version (e.g. Cassandra). 

Useful Links
  • Main thesis by G. Iselli
  • Recent additions by G. Darnois and V. Armandi (upon request)
Internship/Thesis
Effort
3/5

Must know/learn:
Python, MySQL, Cassandra

Official Documentation and Manual

We need the main Github page to be better organized and documented. We also need an online user manual with a walkthrough

Useful Links
  • Main thesis by G. Iselli
  • Recent additions by G. Darnois and V. Armandi (upon request)
Internship
Effort
2/5

Must know/learn:
Typescript, Angular

Integration with OpenStreetMaps

We need to replace the current use of Google Maps with OpenStreetMaps.

Useful Links
  • Main thesis by G. Iselli
  • Recent additions by G. Darnois and V. Armandi (upon request)
Internship
Effort
3/5

Must know/learn:
Typescript, Angular

Arrowhead Tools

The Arrowhead Tools project in centered on Industrial IoT and Service Oriented Architectures. The main goal is to automate industrial tools to communicate seamlessly in a tool-chain. More can be found on our projects page.

Service Choreography

Arrowhead systems and tools need a seamless way to be orchestrated in a pipeline. The work involves the use of various systems (RPi, Smartphone, ...) and their automation through the Arrowhead Choreographer in a practical demo.

Useful Links
  • Arrowhead Framework Github page (hit the core-java-spring)
  • Paper on the Framework  
  • Paper on the Choreographer
Thesis (LAM)
Effort
4/5

Must know/learn:
Android, Java, Arrowhead Framework

SHM Configurator

An Arrowhead and WoT mixed local cloud of Structural Health Monitoring sensors is deployed. A WoT-enabled configurator system needs to communicate with teh sensors via the Arrowhead Framework.

Useful Links
Thesis
Effort
4/5

Must know/learn:
Typescript, WoT, Arrowhead Framework

Web of Things

The Web of Things seeks to counter the fragmentation of the IoT, making it much easier to create applications without the need to master the disparate variety of IoT technologies and standards. Digital twins for sensors, actuators and information services are exposed to consuming applications as local software objects with properties, actions and events, independently of the physical location of devices or the protocols used to access them.

Geo-ThingDirectory for smart cities

The goal of this thesis is to design and implement a Thing Directory with geo-spatial capabilities.

Useful Links
Thesis
Effort
5/5

Must know/learn:
Typescript, Node,js,  W3C WoT Standard

OMNeT++ connector for the Web of Things

The goal of this thesis is to create a connector between a node-wot servient and the OMNeT++ simulator.

Useful Links
Thesis
Effort
4/5

Must know/learn:
Typescript, Node,js,  W3C WoT Standard, C++

WoT Servient for mobile devices

The goal of this thesis is to design and develop a WoT servient for smartphones, with native or hybrid frameworks.

Useful Links
Thesis
Effort
5/5

Must know/learn:
Typescript, Node,js,  W3C WoT Standard

Mobile Crowdsensing

Mobile Crowdsensing (MCS) is the paradigm for which phenomena of common interest, happening mostly in urban scenarios, are being monitored through the aggregation of the contribution of a crowd of mobile sensors and/or smartphones (e.g. Google Traffic API). You can read about MCS in this paper.

Immersive Simulation

We will improve CrowdSenSim, the simulator for MCS scenarios by adding a layer of immersiveness through real smartphones.

Useful Links
Thesis (LAM)
Effort
4.5/5

Must know/learn:
Android/iOS, Python, C++

Interactive Interface for the Simulator

We will improve CrowdSenSim, the simulator for MCS scenarios by adding a Web user interface and building APIs.

Useful Links
Thesis
Effort
4/5

Must know/learn:
Python, C++, any Web Framework

CrowdSensing on a CrowdSourcing platform

We will build a system integration between a MCS mobile system and a CrowdSourcing platform such as Amazon Mechanical Turk to handle micro-payments.

Useful Links
  • Paper about CrowdSensing and Crowdsourcing
Thesis
Effort
4/5

Must know/learn:
Any mobile-friendly Web Framework, Fluent English

Activity Recognition & Context Awareness

Here we have miscellaneous works on Activity recognition and Context Awareness. Most of them are LAM-enabled as we will leverage the inner sensors of smartphones.

Riding Style for two-wheeled vehicles

We will use the smartphones and bicycle or motorbikes to infer interesting behaviors of the rider. Clearly you must own one of these vehicles. Owning a GoPro is a plus.

Useful Links
  • This is just something similar that could inspire you
  • Thesis by V. Conte (upon request)
Thesis (LAM)
Effort
3.5/5

Must know/learn:
Android, Python, Machine Learning

Text Recognition from Sensors

We will use the smartphones to collect a dataset for text recognition and try to understand what the user is typing using sensor data.

Useful Links
Thesis (LAM)
Effort
4/5

Must know/learn:
Android, Python, Machine Learning

Step Length Estimation

We will use the smartphones in order to design/validate an algorithm to estimate correctly the step length of a person.

Useful Links
  • Thesis by E. Fazzini (upon request)
Thesis (LAM)
Effort
4/5

Must know/learn:
Android, Machine Learning

Drones and autonomous systems

Applications and system analysis for unmanned aerial vehicles (UAVs)

Simulator development (DROMNeT++)

We want to have an integrated simulator tool to model multi-UAV systems. The idea is to integrate the following simulators/frameworks:

  • wireless communication (e.g. OMNeT++);
  • mobility control (e.g. Ardupilot);
  • 3D flight simulators (e.g. Gazebo, Airsim)

Useful Links
Thesis
Effort
5/5

Must know/learn:
C++, Systems Simulation, Wireless communications

Mobile application for drone swarms

Parrot-Sphinx is a simulation tool developed by Parrot to test the control of a drone. We want to investigate the possibility to control multiple drones (internship). If this is the case, we want to develop an application that is able to easily mange a swarm of drones.

Useful Links
Internship/Thesis (LAM)
Effort
3.5/5

Must know/learn:
Android, Systems Simulation,
Linux scripting