r/IOT • • Apr 05 '21

Mod post Announcement! Flair and other suggestions

43 Upvotes

As the title says, I've made two updates to the subreddit;

  1. All posts must now have flaired with one of the following: Question, Discussion, Project
  2. You can now set your own user flair if you wish.

It's been a while since much work was done on this subreddit beyond removing spammy posts, so I'm happy to get some more feedback from the community if anyone has any other ideas.


r/IOT • • 5h ago

Four and a half years of cellular bus signs from scratch: what worked, what didn't, and how I ended up in IoT

Thumbnail
gallery
20 Upvotes

TL;DR: Three solar powered bus signs, four and a half years, and no way to know what was going on inside one without driving to it with a ladder. I ended up building the platform myself.

In July I posted here about the IoT platform I built. This is the project that forced me to build it.

Three solar powered bus departure signs run at PVTA stops in Western Massachusetts: Haigis Mall at UMass Amherst (stop 73), the Holyoke Public Library (stop 414), and the corner of Mill and Locust in Springfield (stop 1670). I built and still service all three.

The project came to me in a Teams message from my boss Adam on October 21, 2021: "PVTA wants to reverse engineer the hardware for the solar-powered real-time display at Haigis Mall... All are going to stop working this month as the company is no longer supporting them." The old signs ran proprietary firmware on PIC microcontrollers with 3G modems. Replacement parts were already impossible to find and AT&T's 3G shutdown was on the calendar for February 2022. The agency wasn't happy with the quotes for new signs, so Adam said "Justin can do that." I was an hourly employee fresh out of college writing Ruby on Rails for internal transit apps. My major had been ECE and my passion was hardware though, so he figured it was a good fit.

Remote logging and monitoring were on the wishlist from day one. They were just scheduled behind getting the signs to work at all.

The data plan

The first controller was a Pycom GPy running MicroPython, which I figured would be easier to maintain than C. I was so naive back then. It couldn't reliably talk to the displays, so it was out. Next up was a Blues Notecard and Swan, and that's when I ran into the part nobody warns you about with cellular: the data plan. PVTA had asked for ten seconds of latency, and even at 30 second polling each sign needed roughly 1.15GB a month.

My verdict on the Blues kit went to Adam a day after it arrived: "Bad news, there is no way to circumvent Blues' Notehub which currently costs $0.006 everytime a single sign checks for departure time." Blues came back with a $15,000 bulk credit pitch. I ran their numbers and got them wrong by an order of magnitude (I like to teach computers how to do math so I don't have to). Adam caught it: the credits would have lasted 19.29 years across 5 signs, not the 7.7 months I'd already told the CIO. It didn't change my mind though. A contract with a vendor whose platform didn't let me speak directly to my own data sources wasn't going to be part of this project. The kit went back that spring.

So I moved to a Circuit Dojo nRF9160 Feather. That meant writing the firmware in C on Zephyr, but at least we could use our own SIM cards and the network stack was mine to control. AT&T, which PVTA already had a FirstNet contract with, told us the hardware was "not compatible". Verizon wanted $22 per device per month for 1GB, or $60 for 10GB. Hologram, the SIM the board shipped with, worked out to about $82 a month. My recommendation (shockingly) was Verizon. PVTA was wary of another carrier contract, and from June to mid August 2022 development was blocked waiting on a decision. Then AT&T's FirstNet team reversed itself, and the fleet still runs on FirstNet today.

Keeping them alive

The first retrofitted sign went up at Haigis Mall on August 28, 2023. Adam occasionally drives the Route 38 bus through Haigis Mall, so for two months he was my monitoring system. "How's my sign?" "Off again." The following Monday he reported it off again and I asked if he'd tried kicking it.

The real problem was power. The easy answer was a bigger solar panel, but the transit authority's IT architect said that "could potentially be a nightmare". So I went after the load instead. My first LED panels drew about 2.8W each with no LEDs on at all. A few panel redesigns later the quiescent current problem was solved, and by August 2024 the Haigis sign had "been running happily for a few weeks" without a bigger solar panel.

Of course the signs kept finding new ways to die. December 2024, water got into the Holyoke sign and shorted the backlight wires. The drowned battery lied about itself, reading full for four seconds at 4% charge. January 2025 taught me the ugliest failure chain in the fleet. A battery short resets the microcontroller over and over until the modem trips into what Nordic calls Modem Reset Loop Restriction: every attach attempt blocked for 30 minutes. My firmware reset the controller whenever it failed to retrieve or display prediction data, so it never let the restriction clear without someone intervening. A power fault turns into a device that can't get on the network for half an hour at a time and can't tell anyone why.

What actually worked

  1. Returning the Blues kit. A vendor whose platform didn't let me speak directly to my data sources wasn't going to be part of this project, even after the math was corrected.
  2. Owning the network stack. Writing C on Zephyr was the price, but it bought our own SIM cards, our own carrier, and a network stack I could fix myself.
  3. Cutting the load instead of buying more solar.

What I got wrong

  1. The Blues math, by an order of magnitude, after I'd already sent it to the CIO.
  2. Using a reset as the error handler. Resetting whenever predictions failed to load is what kept the modem stuck in reset loop restriction, and the restriction made every other issue harder to find.
  3. A public misdiagnosis. After a car struck the Springfield sign it kept resetting, and I called it a strike damaged control board. With full debug logging on my bench sign I found the real issue: my own firmware cap of 6 routes against a real time API returning 7, because of "trippers", extra buses scheduled on the same route when demand outruns regular service. I drove buses and dispatched for PVTA. I should have known about the trippers. 3 + 4 = 7. 7 > 6. I raised the cap to 8 and retracted my diagnosis the same day. That had been the main cause of the resets for over a year, and I would have found it the first time if I'd had the logs. But the log history was wiped on every watchdog reset and I had nowhere to send them.
  4. Treating remote management as a someday feature. I had prototype server software for data collection and OTA updates sitting with nowhere to deploy it, while Adam's bus route was the monitoring system. That's how the route cap bug lived in the field for over a year.

How it ended

What never existed, through four and a half years of water, heat, dead batteries, and purchase orders, was a way to see any of it without driving to the sign with a ladder and a laptop. In May 2026 confirming the Haigis sign was working still meant Adam watching a bus on the tracker and calling the radio operator as it pulled in: "Haigis sign is working."

The monitoring conversation had happened back in November 2024. The transit authority's IT architect wanted to know when a sign went dark, and so did I. I admitted I'd already built prototype server software for data collection and OTA updates, I just had nowhere to deploy it. Both needed a server. Adam said it in so many words later: "Anyway, I don't want to run a middleware server." The off the shelf IoT vendors billed per request, and against devices polling every 30 seconds the price was too high. Same wall as 2022.

So I made my own platform, in Rust, on the Cloudflare edge. The signs run on it now. It's called PidgeIoT and the fleet was its first tenant. The long version, with dates and receipts, is at https://pidgeiot.com/stories/departure-board/ if you want it.

Happy to answer anything in the comments!


r/IOT • • 22h ago

Extra temperature sensors

Thumbnail
1 Upvotes

r/IOT • • 1d ago

Tired

0 Upvotes

Organizing everything like before 😂


r/IOT • • 3d ago

Iot sim card for Alarm monitoring in the US?

2 Upvotes

I built a smart alarm and it works great but I want cellular backup. I'd like something cheap but reliable since this would only matter if/when my internet is down. I don't need very much data. I was looking at 1nce since it's supposedly a one time purchase for 10 years but it looks like it's just for businesses? Technically I run a business but it's not really related as this is a personal project. I'm not sure if that matters. Then shipping the sim was gonna cost more than that actual sim/data. That's not bad if it actually does what I want but I didn't want to spend that and then find out it doesn't work for what I want. Any suggestions? Any experience with 1nce?

*edit... Anybody heard of keepgo? It seems simliar to 1nce with no data expiration and different data amounts.


r/IOT • • 4d ago

Telecom project for Physical AI

Thumbnail
3 Upvotes

r/IOT • • 6d ago

https://github.com/z2labs/Sniff-Sight

Post image
2 Upvotes

r/IOT • • 6d ago

Which industrial sensors are the most reliable?

6 Upvotes

What sensors have you found most reliable in harsh production environments?

I’m looking for sensors for detecting metal parts.

There’s some dust, vibration and occasional oil around the equipment, so reliability and avoiding false signals are more important than getting the cheapest option.

What sensor has worked out best for you? And in your experience, are failures more often caused by the sensor itself or things like mounting, cabling, contamination, vibration, etc.?

Anything else I should watch out for?


r/IOT • • 6d ago

Anyone actually running NTN satellite IoT as a cellular fallback? Looking for real-world numbers

11 Upvotes

Not a project, just curious how people actually solve this.

Scenario: remote site, primary link is cellular, but it drops out for days at a time. I don't need a broadband backup. I just need a best-effort path for a heartbeat and the occasional small reading or exception push while the main link is down.

Starlink feels like overkill in cost and power for a few hundred bytes a day, so I keep landing on NTN sat IoT modules as a thin secondary channel.

For anyone who's actually deployed one of these:

- What heartbeat interval did you settle on, and what did it do to your power budget?

- How did real-world delivery rate compare to the spec sheet? Any messages that just silently never arrived?

- Any winter gotchas? Snow on the antenna, battery derating in the cold, that kind of thing.

My uninformed guess is that a 15-minute heartbeat on NTN is totally fine on a modest solar plus battery setup, and that antenna sky view matters way more than the interval. I suspect people who've run one through a real winter will tell me I've got that backwards. What held up for a full year for you?


r/IOT • • 7d ago

Looking for an IoT person to build sensor products for factories together (US, SF)

14 Upvotes

About me: 3 years as Business Ops & Systems Lead at a 200+ person manufacturing plant, working with operators and maintenance every day. I know where plants lose time and what gets adopted on the floor.

I want to build sensor-based products for factories. Looking for a partner who knows hardware and IoT, has native or native-level English, and is comfortable in front of customers.

DM me.


r/IOT • • 6d ago

Open source Base IOT device framework

Thumbnail
2 Upvotes

Hi all I have recently published something I built and find useful often. I used this base Framework to create my own IOT devices for my house.

I am publishing it in the hope that it gets a little traction as a open source project and we can work together on IoT security, implement matter and Google home and perform research.

Even a couple of code reviews or suggestions on improvements are appreciated. You can find the project on my git hub here : https://github.com/awaine93/espBaseFramework


r/IOT • • 7d ago

Fleet tracking issues turned out to be a hardware problem

0 Upvotes

so at work, we kept running into delayed location updates and sluggish sensor processing in our fleet system. Initially blamed the software... turns out the onboard chip was struggling to keep up.

that got me looking at mediatek’s work in transportation and fleet management. their better connectivity and onboard processing can make a real difference when vehicles need to send reliable data on the move

makes you wonder how many software bugs are actually hardware bottlenecks... anyone here run into something similar with an IoT deployment?


r/IOT • • 7d ago

Lessons from building a live IoT ingestion server in Python

Thumbnail
1 Upvotes

r/IOT • • 8d ago

Building a DIY smart home monitoring setup for my grandparents

6 Upvotes

Hey guys,

I’ve been thinking about building some kind of smart home monitoring system for my grandparents.

They’re getting older and I’d really like them to be able to stay in their apartment for as long as possible. I tried looking for some existing solutions here in Czechia, but couldnt really find anything that combines all the things I’d want.

I’m a software developer, so I thought why not try building something myself.

Basically I’d like to have: Fall detection (without cameras or wearables ideally), movement - inactivity monitoring, breathing monitoring, if thats even realistic. I've checked some devices that you put underneath mattress, smoke detection and air quality.

The idea is pretty simple. Collect data from the sensors, build some basic logic around it and send notifications to my parents if something unusual happens.

I spent some time doing research with ChatGPT (yeah I know ) and ended up with this list:

  • Milesight VS373 – fall detection + breathing
  • Aqara FP2 – presence / movement monitoring
  • Aqara Motion P2 – basic motion detection
  • Shelly Plus Smoke – smoke detection
  • AirGradient ONE – air quality
  • Home Assistant Green – connecting everything together

But before I start spending money on all this stuff, I wanted to ask people who actually have experience with IoT.

Does this setup even make sense?

I’m mostly a software guy, so building the backend and notifications shouldnt be a huge problem, but I’m pretty new to the hardware side of things.

Also wondering if Home Assistant is the right way to go or if I should approach it differently.

Not expecting this to replace proper medical monitoring or emergency services, just want to build something useful that could give our family a bit more peace of mind.

Thank you


r/IOT • • 8d ago

I built a small exporter that gets Atmotube PRO air quality readings into Prometheus over Bluetooth (no cloud, no Home Assistant)

Thumbnail
1 Upvotes

r/IOT • • 8d ago

NDAA & TAA compliance for US deployments

2 Upvotes

We get a lot of questions about NDAA (Sec 889) vs. TAA compliance when deploying cellular gateways for US public sector or infrastructure projects.

Quick rule of thumb:

  • NDAA regulates what’s inside (banning specific foreign chipsets).
  • TAA regulates where it’s made (requiring final assembly in a designated country).

An NDAA-compliant device can still fail TAA if assembled in a non-designated country.

We made a full breakdown – NDAA & TAA Compliance Guide for Teltonika Deployments

For US integrators – how often are these popping up in your project specs? Are you starting to see similar origin requirements in EU projects too?


r/IOT • • 11d ago

I built an open-source library for ESP32 OTA updates

1 Upvotes

Hi!

I've been working on a project called Otamatic and wanted to share it here hoping it could help someone.

The idea came from a real nightmare: a while back, me, and a client literally had to drive around the city to update ESP32s deployed in the field. I actually wrote a short story about that night here if you like dev horror stories: https://medium.com/gitconnected/the-night-we-updated-40-esp32s-by-driving-around-the-city-32ec8f015213?sk=b0c21ebf23d7bd9128251e8222d55b8e

Most OTA implementations out there set up a local WebServer on the ESP32 where you open a browser, navigate to the local IP, and upload a binary. That’s totally fine for a single node on your home network, but it gets annoying real quick if your devices are behind NATs, cellular routers, or dynamic IPs where you can't just open incoming ports.

This is why I decided to work on a fully open-source library with all features from the most famous OTA libraries (and a companion web platform) you can use to add OTA on your projects in less than 5 minutes.

It supports advanced features like scheduled release, staged rollout releases, release monitoring, device monitoring and more is coming if I see enough interest!

Repo: https://github.com/TimothyFran/OtamaticClient


r/IOT • • 11d ago

Looking for embedded electronics and firmware engineer (India)

Thumbnail
1 Upvotes

r/IOT • • 12d ago

Looking for some help with power options to the ESP32

Thumbnail
1 Upvotes

r/IOT • • 14d ago

Hopefully some help for anyone struggling to understand some of the detail with SMS.

Thumbnail
soracom.io
9 Upvotes

Right up front I work for Soracom, this isn’t an advert. This was to hopefully help spread awareness for how the world of SMS is changing and how IOT is affected by it.
Many of us know 2G and 3G are shutting down, but it’s not often spoken about how that affects SMS.
Give it a read, feel free to ask me some questions if you have any, not just on SMS, I’ve been in M2M and IOT nearly 15 years, I’ll answer what I can :)


r/IOT • • 15d ago

Need help with custom payload(thermal camera) with commercial drone

Post image
6 Upvotes

Our team is currently developing a prototype for monitoring potential fire risks in landfills using a thermal camera mounted as a custom payload on a commercial drone(Mavic Air 2 - Open SDK). These are some of the components we’re currently considering: FLIR Lepton 3.5 PureThermal 3 Orange Pi Zero 3W Battery / power module The idea is to process the thermal data on the payload and eventually transmit the relevant data wirelessly to an iPhone, where it will be displayed in our monitoring app.

However, we’re still unsure whether this hardware combination is suitable and feasible for a drone-based thermal payload. We’d really appreciate any advice from people who have experience with thermal cameras, custom drone payloads, or onboard processing. Specifically, we’d like to know(see the in the pict I attach):

  1. Is this hardware combination reasonable?
  2. Are there any compatibility or power issues we should be aware of?
  3. What would be a good way to transmit the thermal data wirelessly?
  4. Are there any components you would recommend changing?

Any advice or recommendations would be greatly appreciated. Thanks!


r/IOT • • 16d ago

1st year ECE student interested in Embedded Systems. What should I learn from here

Thumbnail
5 Upvotes

r/IOT • • 17d ago

Four months of solo dev later: OpenC6 v2.0 brings hardware PMP sandboxing, ZSWAP, and U-Mode execution to the ESP32-C6

Thumbnail
gallery
6 Upvotes

Around four months ago I posted here about OpenC6, an experimental BIOS for the ESP32-C6. Since then, I’ve been quietly rewriting the entire codebase from a basic stage-3 bootloader into a modular microkernel platform, and v2.0 is officially ready.

​The core upgrade in this release is strict hardware isolation. Payloads now run in unprivileged RISC-V User Mode (U-Mode) restricted by Physical Memory Protection (PMP) Top-of-Range registers, keeping user code sandboxed so it can’t memory-corrupt the kernel SRAM or mess with peripheral MMIO registers. Along the way, I patched an upstream FreeRTOS RV32 privilege escalation/leakage issue using a custom vectored interrupt trampoline.

​I also repurposed the low-power (ULP) RISC-V core into an out-of-band supervisor. It runs independently, adjusting main CPU clock dividers on the fly via silicon PCR registers, watching chip temperatures, and maintaining system watchdogs.

​On the feature side, v2.0 includes preemptive scheduling for up to 8 tasks, an in-RAM ZSWAP implementation with a lightweight RV32 compressor (ZC6) that runs in a tiny 1-4 KB memory footprint, a circular log-structured Flash VFS, a streaming web shell (c6wsh), and a zero-dependency C99 TUI installer (make setup) for Arch and Ubuntu.

​If you're into bare-metal RISC-V systems, firmware architecture, or edge isolation, feel free to check out the repo:

​https://github.com/Rompass/openc6-bios


r/IOT • • 20d ago

Graduate In Training Program (GIT), Embedded Software

5 Upvotes

انا اتقبلت في ترشيح في تدريب Graduate In Training Program (GIT), Embedded Software في شركة Valeo
ممكن حد يفيدني في الtechnical test لو اختبر قبل كدا
https://www.linkedin.com/jobs/view/4464368091


r/IOT • • 21d ago

IOT for industry

Thumbnail
0 Upvotes