Mapping all members of a set of wireless nodes to a set of possible physical locations based on the RSSI value between each member of the set.
Ingy sells very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. One of the biggest challenges in this is the mapping of the physically wireless nodes to their physical location. Currently we have multiple innovative solutions to solve this solution, but all require each node to be visited.
We would like to investigate methods where one no longer needs to visit every node, to maps its location. One method we we would like to explore is to use the RSSI measurements that every node has of all other nodes in its vicinity. If a the location of a few “anchor” nodes are known and the possible locations of the nodes in the building are know (from the installation instructions), a constraint satisfaction problem arises to place the nodes such that it best explains the observed RSSI values.
The research has a very interesting set of dimensions it can take;
– There is some heavy computational challenges as the search space is exponential
– There is some interesting work to be done on search and optimization as the solution will never fit the data perfectly
– There is an information theory side in which the system can ask for particular nodes to be identified, but it should ask for those nodes that increase the information the most
– There is an interesting question on how certain the algorithm is about its solution and it feels comfortable enough to claim the mapping is now correct
Expectations
We are looking for candidates with excellent grasp of mathematics/statistics/optimization, who can write solutions and code that can be used in real-world applications.
This project is well suited for an interdiciplinary team with people with a feeling for mathematics, (embedded) programming and human computer interaction. A standard online programming aptitude test is part of every internship application process |
Design proof of concept for a new smart lighting commissioning tool
Ingy sells very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. When installing a new lighting system in a building we are typically provided with a the installation plans of the lighting in either CAD or PDF format, containing the location of all lighting nodes in the building.
We would like to build a new commissioning tool that would import the CAD drawings, extract the relevant information and give a representation of the
lighting nodes on the floorplan. We are interested in optimising the tool design for two key variables: the required learning time to be able to use the tool and the time needed to commission a site. We believe there is an interesting research space to see how different smart algorithms could support the user in completing common commission tasks faster. The system could for example automatically suggest lighting control settings based on the found information, e.g. suggest to group certain
lights in one group as their are in the same room or apply a corridor lighting scheme based on detecting a corridor. We would be keen to investigate different methods of supporting the user in the commisioning process and give structured findings on what solutions do work to speed the learning time and time to commisiong the site and which solutions do not.
This research could potentially be extended with a tool that once the pre-commissioning is done, would provide the user with an easy tool to map the nodes installed in the building to those on the floorplan and
download the lighting control settings into the nodes. This again gives plenty of opportunity for user design in combination with smart algorithms and AI to make the mapping process as quick and easy as possible. For example one could look of combination of machine intelligence and user interaction where the system asks to localise certain lights and then places other lights on the map automatically based on their radio strength to other nodes that are already placed.
Expectations
We expect you to bring a strong UI design capability and be able to show design portfolio of interaction design you made previously, but also be able to implement your ideas in code. You can use our existing libraries to do a lot of the work in for example python or Javascript.
A standard online programming aptitude test is part of every internship application process, although we use a lower standard then for our other internships due to the significant design component.
Threat analyses and penetration test of complex IoT solution
Ingy sels very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. We have an open ecosystem in which we combine sensors and solution from multiple vendors into our solution.
Our challenge is of course to ensure all of this is happening in a secure way across wireless mesh, gateways, cloud services and mobile app. Our solution is based on the latest Wirepas mesh technology which has just been approved by ITSI as part of the new 5G network technologies so you will be working with the state of the art in wireless mesh security.
We are looking for security research students who can bring the latest in thinking of security research to help map potential (new) threat vectors for a compley IoT solutions as ours and come up with clever cryptographic solutions to build a secure IoT system consisting of components of different suppliers within the specific boundaries of our ecosystem and the base technologies we use.
Expectations
We expect you to have a good understanding of the whole cybersecurity working methodology and be able to design threat factors but also be able to perform these threat factors in practice.
If you can tell us of any 0-day vulnerabilities you found you are probably our person.
A standard online programming aptitude test is part of every internship application process
Automated checking of code correctness for embedded software
Ingy sells very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. Our lighting control software is entirely decentralised and runs as embedded C++ code within each node. Although lighting control sound extremely simple our application is actually very complex containing many different component tighly integrated into one micro controller, including:
- Mesh stack to be able to build a fully routed network
- Different lighting control behaviours that can take control of the light output based on different priorities: sensor control, daylight harvestings, scene settings, wallswitch control
- Different interface to integrate with different pieces of hardware: UART, DALI, PWM
- Clock syncronisation for scheduled time sequences
Our biggest nightmare is a bug which would somehow crash our application in a way that we can no longer remotely update the node nor send it any commands to bring it back to live. In the worst case this could mean having to take all the lighting in a building down and replacing the physical nodes.
In order to reduce this risk we would like to investigate the state of the are in automatic code checking to eliminate and warn our programmers on any risky code patterns that could lead to a potential instability in our code.
Expectations
We expect you to have deep knowledge of (embedded) C/C++ and have good understanding of the state of the art in code analyses tools. Probably you have taken classes in compiler design and proofing tools for code correctness.
We support and encourage academic research into new tooling to prove correctness of our code, but we do expect you to have a good grasp of the state of the art in commercial tooling in this area (or are willing to investigate commercial tooling in this area and their ability to meet our requirements), to ensure your research delivers more then what is available off-the-shelve.
A standard online programming aptitude test is part of every internship application process
Optimising performance of proprietary wireless protocol
Ingy sells very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. Our lighting control software is entirely decentralised and operates on top of the Wirepas Mesh (a new standard part of the latest 5G standard set). In order to easily commission the system we combine our Wirepas mesh with the ability for nodes to directly communicate with a mobile phone based on a propriety protocol on top of the BLE physical layer. We can not use the full Bluetooth GATT connection due to system resource constraints. We believe the performance of this proprietary protocol can be significantly improved and we are looking for interns who want to take the performance of our proprietary protocol up to the limitations set by Shannon
Expectations
We expect you to be fluent in embedded C/C++ and Java/Objective C, have a good understanding of wireless communication protocols, compression algorithms and good grounding in information theory.
A standard online programming aptitude test is part of every internship application process
Automated testing of embedded control software
Ingy sells very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. Our lighting control software is entirely decentralised and operates on top of the Wirepas Mesh (a new standard part of the latest 5G standard set).
In order to automatically test the correctness of our control software we would like to build an automated test environment consisting of multiple of our smart lights, different actuators and sensor and a central test operator that can program our system with different sets of control logic and auomatically run test series verifying different control scenarios automatically.
Ideally the system is provided with some sort of Domain Specific Language enabling us to quickly specify different test scenarios and is linked to an automated testing suite to show performance of our system against different regression tests.
Expectations
We expect you to have good grounding in software testing, a good grasp of automated testing tooling in particular, a good understanding of higher level programming languages (preferably Python) and the creativity and general capability to put together the required sensors and actuators from standard of the shelve components.
A standard online programming aptitude test is part of every internship application process
Optimising performance of daylight harvesting algorithms
Ingy sells very large scale wireless networks (10.000+ sensor) for which the backbone is supplied through lighting. Our lighting control software is entirely decentralised and operates on top of the Wirepas Mesh (a new standard part of the latest 5G standard set).
One of the key features of our lighting control solution is called daylight harvesting where the lights dim down automatically when the amount of natural light is increased. Although this sounds pretty straight forward it is actually more complex then it seems:
- Our partners use a wide range of sensors with different properties
- Most of the sensors have different sensitivity for natural light vs artificial light
- We measure light in the ceiling, while we need to keep the amount of light on the desk below constant
- The effect of the above two factors differs based on the mounting height, the luminaires used and reflective properties of the materials in the environment
We have several cleaver solutions to make the daylight harvesting work, but we need more. The key challenge is to come up with calibration methods either one time when on-boarding a new sensor type or after installation of a particular sensor in the final building by the installer, to find out more information on the above issues and use this information to improve the performance of the DH algorithm. The challenge is to make these calibration steps as easy as possible for the users.
Expectations
We expect you to have good grounding in sensor and signal processing, algorithm design and systematically testing the performance of control algorithms by creating representative training and test sets. If you have taken some courses in human computer interaction then this would be very helpful as well.
Work environment
We are a fast moving start-up with a very highly skilled development team (computer science degrees from Cambridge, PhDs in wireless communication or computational physics. We move at high speed from research to deployment and give you access to real-world datasets, if you are able to get it to work, you will be seeing your solution being used across the globe within 6-12 months.