RSSAmplifier

Blog

Rohan Menon

Recent content on Rohan Menon

rohanmenon.comRSS feed ↗23 posts

Latest posts

Live underwater sensing in the Charles River

Our deployed conductivity, temperature and depth sensor. This underwater sensor communicates sensor data live using underwater backscatter, enabling a battery life of 2 years of fully-submerged operation. Until now, underwater backscatter systems have been limited to short-term laboratory experiments. BlueTag is the first underwater backscatter device to be deployed long enough to sense meaningful…

Underwater Backscatter

Today, underwater communication is hard. Radio waves, powering almost all wireless communication in air, can’t travel more than a few 10s of meters through water. Alternatively, communicating with sound works well (like dolphins and whales!), however, it takes a large amount energy to send these sound waves long distances. If you’re trying to build a sensor to continuously monitor…

Paint Plotter

One of the first paintings I made with the plotter The finished piece This project was inspired by some beautiful plotted art I came across from Arnaud Pfeffer. All their work is amazing, but I really loved their work that used brushes and played with transparency. Mechanical Design I had been wanting to do more mechanical design recently. From my experience with 3D printer kits, I knew that…

dis/content

Progress Algorithms designed to hold attention decide a lot of what we do on the Internet. This project is a one-way video viewing platform that shows the videos that no algorithm would ever recommend. Twenty seconds at a time, they’re displayed on a blurry screen in my living room, and then they’re gone.

A HUB75 LED Matrix Driver, in Rust

I was surprised to find that the LED matrix I had just purchased from Waveshare didn’t use a digital interface like I2C or SPI. Instead, the HUB75 panel requires constant pixel data to be clocked in by its controller. Any delay in this stream causes headache-inducing flickering. I tried the pre-built driver libraries for the Raspberry Pi (both the C++ and Rust variants), but they were…

Temperate Privacy Policy

Temperate uses your location to provide you with real time weather information. Using the options page, you have control over the information Temperate uses to determine your location. By default, Temperate uses your public IP address to approximate your location. The user has the opportunity to enable precise location services for Temperate. This uses the HTML5 geolocation API to request the…

Mockupgen

Mockupception Device mockups are great for showing off screenshots in a more professional way (and I like using them here on my site), but they can be a pain to make. Typically, they require expensive photo editing software and a lot of manual work. I wanted to make a CLI that, while sacrificing some fidelity, could quickly generate a device mockup from a screenshot. Installation and usage If you…

Lunar Rover Networking

A prototype ray tracing based simulator for lunar RF propagation Planned lunar missions promise to bring a host of new robotic and human explorers to the moon. Today, the wireless connectivity needs of these assets would be largely unmet. And given the cost of deploying infrastructure on the moon, a centralized approach (such as a cellular-style network) may not be feasible for some time. Instead,…

Squashing an AirTag for my wallet

I’m hilariously bad at keeping track of my things. Namely, my phone, my wallet, and my keys. I recently purchased some AirTags to help deal with this, but the form factor didn’t work for my wallet. Here’s how I went about slimming an AirTag down to fit better. I’m not the first to do this, and videos from Andrew Ngai, photos from JEET3D, and the iFixit AirTag teardown…

WISP

The Wireless Identification and Sensing Platform (WISP) is an RFID-based platform for developing batteryless sensors. RFID systems typically have two devices, a tag and a reader. When a tag is brought close enough to a reader, the tag wirelessly collects energy from the reader and can send back information. However, typically, tags are pretty limited in what they send. It’s usually only a unique…

Building a desktop app for WISP sensors

Previous work on WISP often involved the creation of new tools to process data from WISP tags and visualize it in meaningful ways. Unfortunately, because these apps were mostly developed to test the functionality of a feature, they were not extensible or particularly user friendly. Along with the redesigned hardware of WISP 6.0, we wanted to release a companion desktop application that could…

Resume

Connect Rohan Menon rohanme@mit.edu An engineering graduate with a focus on embedded devices, software development, and networking who loves working on challenging problems in fast-paced collaborative teams. Schedule a chat Resume Education Massachusetts Institute of Technology Sep 2024 - Present Ph.D. in Electrical Engineering and Computer Science University of Washington Sep 2021 - Dec 2023 B.S.…

A new, modular, hardware revision for WISP

Previous versions of the Wireless Identification and Sensing Platform (WISP) focused on efficiency and miniaturization. Unfortunately, the tradeoff with these versions was poorer modularity, making it harder to develop new sensing and power modalities. In WISP 6.0, we sought to address these issues with redesigned hardware. Basic RF node The basic RF node contains all the power harvesting and…

Experimenting with type design

Houdini Trio is the font used for the headings and path-style text throughout my website. At the moment, it only has the lowercase Latin alphabet along with the forward slash. I’m working on adding numbers and basic punctuation soon. It’s a tri-space font, meaning that its letters occupy one of 3 possible widths. For example, the ‘i’, ‘d’, and ‘m’ characters occupy small, medium, and large widths…

Temperate

There are countless Chrome Extensions that will replace your new tab page with something new. The problem is that these extensions often try to do too much, sacrificing speed and simplicity. Temperate revolves around a large number that displays the current temperature and condition. When you hover over this number, it shows you the forecasted temperature and precipitation for the 24 hours. The…

A new React-based version of Temperate

Temperate was recently upgraded. While there aren’t a ton of cosmetic changes, it’s been largely rewritten behind the scenes. The previous version of Temperate was held together with hope. Just as an example, user settings were shuffled around the app through a convoluted set of exchanges where they were read from local storage, turned into CSS variables, and sometimes re-parsed back into JS…

Algorithmically choosing text overlay color for images

In Temperate’s latest update, there’s now the option to replace a solid colored background with an image that changes daily. They’re pulled from Unsplash each day at midnight by my backend server. Unfortunately, sometimes the image of the day happens to be particularly close to the color of the temperature reading, which can make it hard to read. Instead of having the user constantly change their…

Aquametric

Aquametric version 1.0 mounted in Alplause Kill Metrics such as stage height, conductivity, and temperature can provide valuable insight into ecological health and can also serve as predictors for events such as flooding. Traditionally, these metrics are measured either manually by a scientist or by large and expensive permanently installed stations. Unfortunately, human measurement reduces the…

Resonant

Resonant installed into a baseball cap with a heads up display Recent advancements in machine learning and image processing mean that the ability of computers to see has improved drastically in the last 10 years. While sound is a crucial part of how most people experience their environments, computer hearing has not seen the same advancements. We aimed to develop algorithms to locate audio signals…

Gracefully loading a grid of images

High quality images can take a few seconds to load, even on fast internet connections, but users expect websites to be interactive in much faster. Browsers typically handle this by loading in the text and layout information first, loading the images in the background. When an image is ready for display, it appears on the page. While this works great for most scenarios, this random popping into…

Developing a head-mounted wearable for Resonant

With progress being made on the algorithms side of Resonant, I started looking at how we were going to present our information to a user that is potentially deaf or hard of hearing. The first step was deciding on a form factor. The requirements were pretty simple. Display the source and classification of sound Does not impede normal vision significantly Fairly discrete and comfortable We settled…

The NY STEAM Bus, a retired school bus turned mobile STEAM classroom

The NY STEAM BUS aims supplement science, technology, engineering, art and math (STEAM) education with lessons that develop a passion for problem solving and critical thinking. We retrofitted a retired school bus to create a versatile, mobile classroom. As the technology director, I focused on the initial design and retrofit of the bus and worked to integrate the technology into our lessons to…

Aquametric Project Updates

Initial sensor versions · 2020/4/11 Version 1 For the first version of our sensor, we focused on developing a device that could take accurate measurements of the water’s stage height. We initially chose an ultrasonic range finder for this purpose. It was oriented towards the water’s surface. By subtracting the measured value from the height at which the sensor was mounted, we could calculate the…