Executive summary Executive summary
About our client
Dahrwin is a US-based company that develops mesh network solutions. This technology eliminates the need for the Internet to connect with people around you as it allows its users to create and join independent wireless networks from a mobile device.
Dahrwin needed a strong engineering team specializing both in hardware and firmware development to implement their idea of a cross-platform mesh network solution. The solution was to be built from scratch to meet the needs of different industries, for example, in V2V communications and for establishing the connection in zones with no service.
To implement the solution, N-iX engineers developed a proprietary communication protocol with adaptive routing, the custom hardware network node running embedded Linux, customized Android firmware with integrated mesh network capabilities, and more. Thus, the team provided full cycle development of the solution.
- Delivering a reliable solution providing various types of connection in the areas without Internet and out-of-service;
- Solving complex project challenges by developing a system daemon, a socket level protocol, implementing text message and video transmission functionality, working on speed regulation algorithms, etc.
Success story in detail
The client engaged N-iX to develop an efficient connectivity network that would allow to transmit various kinds of messages over big distances in the zones with no service or Internet connection. Thus N-iX embedded team was involved both in software and hardware development of the technology.
The client presented the vision and the basic idea of the solution. Whereas, our engineers had to analyse the concept, study the requirements and ensure successful implementation of the project. N-iX specialists conducted extensive research, analysed similar solutions on the market to introduce possible enhancements to the product. The client was fully satisfied with project implementation plan, which involved iterative delivery of various requirements and several project stages.
- Designing and implementing the prototype of a dynamic mesh network solution using Android based mobile phones and utilizing WiFi ad-hoc capability.
- Developing hardware for an efficient mesh network. One of the essential tasks of the project was to develop the hardware that would comprise 2 Ethernets, 2 Wi-Fis, a gateway for mesh network and a gateway that connects Ethernet and Wi-Fi in one point.
- Developing the software protocol powering the dynamic work of the network. One of the challenges successfully tackled by the team was building an application that draws the map of the dynamic work of the mesh network. N-iX engineers developed their own software protocol and overlaid the Internet protocol over it including TCP and UDP.
- Compatibility with different platforms. There are similar protocols at MAC level but they are dependent on hardware, not standardized and not supported by a lot of devices. Therefore, the team faced the challenge of designing a universal technology that would run the developed protocol on different platforms including Android, Linux and others.
- Implementing a faster launch of embedded Linux was another challenge N-iX programmers successfully solved. The engineers managed to shorten Linux step from 40 secs to 5 secs by configuring it, recompiling some modules and deleting redundant parts.
- Taking into account obstacles, noise and other conditions. One of the most critical tasks of the project was to ensure the highest quality of the solution by detecting and removing various obstacles. The team’s task was to make the network less responsive to various conditions so they created a system that rebuilt itself finding the optimal way of relaying the signal.
At the initial stage of the project, the team analyzed the client’s requirements and suggested the enhancements to the solution to make it more efficient. They came up with the improvements at the algorithmic level to ensure the technology would work on a big number of nodes.
Then the client requested to design and implement a prototype of a dynamic mesh network solution using Android based mobile phones and utilizing WiFi ad-hoc capability and ad-hoc, where all nodes communicate directly with each other if they are in range. Therefore, the team delivered cross-platform implementation of a dynamic mesh network with their own developed protocols and know-hows.
In addition to core implementation, the programmers created demonstration software for Android and iOS, and implemented internet connection (TCP and UDP) tunneling through the mesh they developed. All common communication services like web browsing, Skype, Viber, YouTube, etc. were working through the internet connection which was shared in mesh network via several hops. Thus the team managed to achieve a good quality of connection and seamless work of multiple communication services.
Afterwards the embedded team developed a custom device, called Dahrwin router, that could connect WiFi networks with different topologies. For this implementation the programmers selected Texas Instruments Sitara platform. It had enough power to run their mesh implementation well documented and had reference designs available. As software base, the engineers selected OpenWRT project and ported it to run on their custom hardware. This required to create a custom device tree, build, patch and configure drivers (especially the WiFi part) and create customizations of the user (web) interface to configure the mesh network specific features.
The engineering team working on Dahrwin project successfully implemented all the client’s tasks and delivered an innovative mesh network solution comprising wide functionality including:
- hardware independent cross-platform mesh network solution (Android, iOS, Linux);
- proprietary communication protocol with adaptive routing;
- custom developed hardware network node running embedded Linux designed for bridging networks with different topology;
- customized Android firmware with integrated Dahrwin mesh network capabilities;
- internet connection (TCP, UDP) tunneling and sharing over mesh network;
- mobile messenger applications working via mesh network for iOS and Android;
- minimum administration of the network, no need for a lot of configuration;
- providing various types of connection, high network reliability.