Why I Built a Nurse Robot
· Bhaskar Neupane

Why I Built a Nurse Robot

The story behind Nemo — how working in a hospital convinced me that robotics was worth taking seriously, and what I learned building one from scratch.

roboticspythonraspberry-pinemohardware

Why I Built a Nurse Robot

I’ve been working at Mount Sinai Hospital since mid-2024 as a Clinical Service Assistant. It’s a strange job for a software engineer to have — I’m not writing code, I’m coordinating supply deliveries to patient floors, supporting nurses during busy shifts, and watching a healthcare system operate at maximum capacity.

And one thing became immediately obvious: nurses are overwhelmed.

Not because of bad management or poor planning. But because the sheer volume of small, repetitive tasks — fetching supplies, responding to call bells, documenting routine checks — consumes enormous amounts of time that could go toward actual patient care. I kept thinking: some of this could be automated. Not the complex clinical judgement, but the mechanical stuff.

That thought became Nemo.

What Nemo Is

Nemo is a physical nurse assistance robot I built from scratch. It has:

  • A Raspberry Pi 4 as the brain, running Python
  • Servo-driven arms that can gesture and move
  • An LCD face display that shows animated expressions — blinking eyes, smiles, surprised reactions
  • An antenna pair with status LEDs
  • A wheeled base for movement (still in progress)

The whole body is 3D-printed and hand-assembled. There are no off-the-shelf robot kits here.

Building It: The Honest Version

I want to be real about this: building hardware is hard in a way that software isn’t. When your code breaks, you get a stack trace. When your servo breaks, you get silence, and then you spend two hours eliminating possibilities.

The face display was the first win. I wrote a Python library that maps emotional states to pre-drawn pixel art frames and plays them as animations on the LCD. When Nemo “sees” someone approach (via the camera), it perks up. When idle, it slowly blinks. It sounds trivial, but the first time it worked — genuinely looked like a living thing — I understood why robotics is addictive.

class NemoExpression:
    IDLE = "idle"
    HAPPY = "happy"
    SURPRISED = "surprised"
    THINKING = "thinking"

def play_expression(self, expression: NemoExpression, loop: bool = False):
    frames = self.sprite_map[expression]
    for frame in frames:
        self.display.render(frame)
        time.sleep(frame.duration)
    if loop:
        self.play_expression(expression, loop=True)

The servo arms were harder. Getting smooth, human-like motion requires thinking about acceleration curves, not just target positions. A servo that snaps to 90° looks robotic (obviously) but also unsettling. One that eases in and out looks intentional.

What It’s Taught Me About Software

Working on Nemo has made me a better software engineer, weirdly. A few things:

Latency matters in a way it doesn’t on the web. If a web page is 100ms slow, users notice. If Nemo’s arm response is 100ms delayed from a voice command, it breaks the illusion entirely. I’ve written more performance-sensitive Python working on this than on any web project.

State machines are everywhere. Nemo’s behavior is entirely modeled as a state machine — idle, greeting, task, resting. I’d read about state machines for years; now I use them instinctively.

Hardware teaches you to respect tolerances. Software abstracts away the physical world. Hardware forces you to remember it. A 3D print that’s 0.3mm too small doesn’t fit. This kind of precision has bled back into how I write code — I’m more careful about edge cases because I’ve learned the cost of ignoring them.

What’s Next

Nemo isn’t finished. The current goals:

  1. Integrate a wake-word detector (“Hey Nemo”)
  2. Add a task reminder system — nurses can schedule prompts, Nemo delivers them
  3. Get the wheels working reliably (navigation is hard)
  4. Eventually: test it in a real care setting, even informally

If you’re working on healthcare robotics or know people who are, I’d genuinely love to talk. This is the project I care most about.

— Bhaskar