Turning your phone into a virtual-joystick

Image
Update: I kept working on this and I have released it as a package for Windows, Linux and macOS. Check it out: https://github.com/zenineasa/joystick/releases/tag/v1.0.0 -- During the days when I was pursying my master's programme, my friends and I used to occasionally go to a classroom in the university, turn on a projector, connect devices like Nintento Switch or Gaming computers and loads of joysticks, and play different simple multiplayer games; MarioKart was my favourite. From time-to-time, when I get together with people, I ponder that it would be a good idea if I bought such devices. Indeed, I do have a laptop, which could easily run such games; SuperTuxKart is similar enough to MarioKart and it can run on Linux, Windows and Mac. However, I do not have joysticks with me at the moment. Therefore, I think it would be a good idea if I simply worked on a project that would enable using our phones as joysticks. From a high-level, the plan is to host APIs on a NodeJS server that wo

Smart Containers - An old project during my college days that could make Amazon better

A few months ago, my friend Dhawal shared a page from Amazon Business introducing their product named Dash Smart Shelf. The system enables businesses to manager their inventories by keeping a track of stuffs in the shelves over time and automatically doing the reordering. The principle behind the product is to have a weight-sensing Wi-Fi-enabled smart scale that is placed on a shelf to track the inventory.

The method involved is reasonably simple. A shop owner can have as many of these devices as the different products he/she wishes to store. That would be a lot of sensors.

Dhawal and I had worked on a project that would enable reducing the number of sensors involved in order to do the same. In our setup, there would be just two weight sensors placed at a distance and a platform on top of the sensors. We divide the platform into any number and we can determine where each product is placed and if anything is taken away from it, it would automatically change the values. This could theoretically work for any number of slots there are; just two weight sensors.

That would be a huge reduction in cost, wouldn't it?

We developed this system back in 2017. We had recorded a video talking about this in detail to take part in a compoetition. The following was recorded for that. In the video we explain in detail on how the setup was created, the working principle and gives a quick demo. (I know that the app crashed when we were shooting the video).


The video was recorded from the Hardware Lab in IIT Patna. We had to rush the creation of the video as the deadline for submission was right around the clock.

The app was created in React Native. The assembly has four load cells in a Wheatstone Bridge arrangement for more accurate detection, two such arrangements are made at either ends. The voltage variations from the load cells are picked up by Arduino and the information is interpreted there to know which slot has what weight. The final information is sent to Raspberry Pi, which acts as the server and provides the data to the React Native App through Rest API based calls.

Such simple concepts in physics and engineering could help in cutting down a lot of expenditure. I hope this inspires a lot of people.

Comments

Popular posts from this blog

First impression of Lugano - Mindblowing

Thinking about developing an opensource P2P social network

From Correlation to Causation through stories and math