@vipulgupta2048

Pains, Processes & the Eventual Gains building hardtech projects in the open

I am Vipul!

@vipulgupta2048

We-pull

  • Product Owner & Documentation Lead at balena
  • Wearing multiple hats (Growth, hiring) when I consult
  • Runs Mixster that "rights" the docs for startups
  • Pronouns: He/him/his

@vipulgupta2048

This is a Raspberry Pi

@vipulgupta2048

It ain't much ...

@vipulgupta2048

Devices like these power...

CO2 sensors, farms, smart dustbins, cars, locks, your room, home devices...

@vipulgupta2048

and more like this...

Underwater drones, satellites, parking, and your talking wireless speakers

@vipulgupta2048

@vipulgupta2048

The challenge

With smart cities & even your toaster running applications.
The stakes have never been higher

While building software is hard.

@vipulgupta2048

Building hardtech projects
are painful

@vipulgupta2048

Hardtech project

  • Hard as in difficult to build
     
  • Hard also as in physical hardware.
     
  • Involves hardware + software to create physical products
     
  • Solves real-world problems

@vipulgupta2048

Challenges

  • Projects have to be feature-complete at launch.
  • Tough to get started as investments are required to get over MVP, safety, testing & regulatory hurdles.
  • Customer conversion at the start is essential for survival.

  • Each iteration can be slow, expensive & deadly. 
  • Requires full-stack teams to tackle technical complexity and R&D requirements.

  • Scalability, IP protection & mass production.

  • Supply chain issues & chip shortage

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

If "software eats the world"

Hard tech gives the teeth

@vipulgupta2048

How to
Build for
Hardtech?

And, not burn down.

@vipulgupta2048

The journey of open-sourcing our hardtech project

A journey of 5 years, multiple maintainers and half million dollar in R&D spending

@vipulgupta2048

Balena has an OS called

BalenaOS

We support over 100+ embedded devices.

Testing Operating Systems
(Not ideal)

  • Manually flashing OS on the device
  • Running tests 
  • Reporting back results to Test DB
  • Takes a week or more to test a release

@vipulgupta2048

The Tester

@vipulgupta2048

2016

  • Proprietary hardware, test framework, and jig firmware
  • Nonstandard connectors 
  • Custom test board designed by the Resin team
  • Testing on the Raspberry Pi 

@vipulgupta2048

DEVICE UNDER TEST

THE TESTER
called Autokit (prev. Testbot)

2020 (I joined Balena!)

Tight feedback loops between environments

Dev == testing == staging == prod

@vipulgupta2048

Open Source Hardware

  • Open Source Hardware involves:
    • Hardware design: mechanical drawings, schematics,
    • Bills of material, PCB layout data, HDL source code
    • In addition to software that drives the hardware are all released under free/libre terms.

@vipulgupta2048

@vipulgupta2048

Current Stage: Open-Source Hardtech

In peak Covid, we build a hardware testing rig

The results?

Benefits of OSH

Tooling makes iterations easier

  • 3D printers prices had dropped from $20,000 to $200.
  • Circuit board print & design services exist to make and ship components overnight.
  • Similar to the rise of APIs, AWS and “no-code” that unleashed new applications for software, similar revolutions are the backbone of the new hard tech world.

@vipulgupta2048

Onto building software
for the hardware

@vipulgupta2048

@vipulgupta2048

@vipulgupta2048

Reproducible Self-Healing Setup

  • Recovery of the device is better than crash looping
  • Proper crash reporting pays dividends
  • If you have to reboot, then you are doing wrong

@vipulgupta2048

Building Fault-Tolerant
Applications

  • Handle intermittent network issues gracefully.
  • Prevent excessive bandwidth consumption.
  • Don't be using your swap memory. 
  • Connect your peripherals on runtime, not bootime

@vipulgupta2048

But Vipul, how can I use this now at work?

@vipulgupta2048

@vipulgupta2048

It's not going to be easy.
 

  • No one wants to give away a competitive advantage.
  • Not for free, anyway.
  • Take steps to become open-source friendly in your team.
  • Start a conversation about the benefits you can get from creating a community around your hardtech projects
  • Do incremental changes show tangible value which will be the real changemaker.

@vipulgupta2048

 Software may kick off opportunities,
 

but industrial revolutions come from innovation in the physical world.

@vipulgupta2048

And, that's about it!

Questions? Collaborate? Work with us? Reach out!

@vipulgupta2048

Reviews cheesecakes, solves GitHub issues & "rights" docs

Credits

  • https://en.wikipedia.org/wiki/List_of_open-source_hardware_projects
  • https://techcrunch.com/2021/06/12/the-rapid-hard-tech-emergence/
  • https://www.ycombinator.com/blog/hard-tech-startups
  • https://the-turing-way.netlify.app/reproducible-research/open/open-hardware.html
  • https://www.mhubchicago.com/blog/17-hardtech-terms-you-need-to-know-for-product-development
  • https://medium.com/@OneInchHW/hard-tech-startups-and-the-challenges-they-face-67c08427b434

@vipulgupta2048

[FOSS India 2024] Pains, Processes & the Eventual Gains of Building Open-Source Hardtech projects

By Vipul Gupta

[FOSS India 2024] Pains, Processes & the Eventual Gains of Building Open-Source Hardtech projects

A brief overview on building an open-source hard tech project from scratch.

  • 253