m2rex – far away but still in the office – Part 2

How do we develop software for brand-new devices that are not on the market yet? And how does it work when our software developers are working in different locations instead of one office?

The challenge

How do we develop software for brand-new devices that are not on the market yet? And how does it work when our software developers are working in different locations instead of one office?

For developing our products, we receive modems from our customers. These modems are usually not publicly available at that point – it’s basically the sneak preview of our field. Even if the devices are finalised technologically, some elements like their design are not final yet. Because of that, we sometimes receive modems that look more like disguised car prototypes than off-the-shelf consumer devices.

On the one hand, this is extremely cool, as it allows us to work with completely new technologies. On the other hand, it is also a serious challenge. Since these new devices are not available en masse yet, we often only have a single one at our office. This means we can’t simply send the modem to software developers that work from home or externally, because the colleagues at the office would miss the devices.

In addition, there are often continuous firmware changes with new devices (the firmware is the “operating system of the modem”). Some of these updates can only be done by our customers, which would lead to mailing the modem back and forth a lot – not just between our office and the customer but also between our office and the developers’ home offices. There would only be disadvantages to this, as the mailing would be expensive, time-consuming, and pollutive. This means we need a technical and, most of all, simple solution with which we can allow access to the modem from outside the office – a kind of “tunnel” (a tunnel in IT is a “virtual direct access” that allows communication between two ends of a line). A solution like that would allow us to quickly create and test new implementations without hassle.

To make the tunnel work, we need a terminal device that can be connected to the modem in our office and also create the tunnel connection. We could use a PC for that, but on top of being impractical and expensive, it also isn’t suited for permanent operation. For these reasons, we have to find a different type of device.

In an earlier blog article we wrote about the m2bbb (m2 broadband bridge), which allows us to bring DSL lines from abroad into our office. In order to allow modem/router access for our software developers from home or externally, our IT team found a similar but different solution – the solution is called “m2rex”.

The solution

m2rex is not only an homage to the four-legged TV detective, but mainly an abbreviation for “range extender”. However, behind this acronym you will find a regular Wi-Fi repeater that can simply be plugged into a wall socket. This little device is the basis for m2rex and the perfect solution for our problem: It has a LAN port to connect the modem which we want to make available to our remote software developers. Also, it is much cheaper than a PC, uses minimal power resources, and can be plugged into any power socket.

How does this type of “tunnel” work exactly? m2rex connects to the Internet via our company Wi-Fi and, at the same time, is connected to the needed modem via LAN. On the other side of the tunnel (e.g. at the developers’ home office) the setup is reversed. The developers simply connect to the Wi-Fi of their m2rex and can then remotely access the modem in our office. The concept is very similar to that of m2bbb, but it differs in the specific application. While m2bbb enables us to access DSL lines that are outside the office (in a different country, for example), m2rex allows external access to a modem inside the office.

If developers on the other side of the tunnel need a different modem, they simply inform our colleagues at the office and they will switch the hardware that’s connected to m2rex. Luckily, that just takes a few flicks of the wrist. In this way, m2rex covers the majority of technical requirements that a software developer needs to remotely access, manage and configure modem or router hardware.

Conclusion

Our developers’ job is highly dependent on modems. m2rex is an important step to make this job easier and more flexible, especially when completely new devices in limited number are involved. With the product “m2rex” by mquadr.at, software developers can be working from home and still straightforwardly access the modem/router hardware they need for developing software. The effort for changing the hardware in our office is minor and can be done very quickly by all colleagues there. This way, working together even across many kilometers becomes easier and feels like we are not that far from each other after all.