{"article":{"slug":"surely-you-have-ultra-wideband-radios-on-your-bins-too","title":"Surely you have ultra-wideband radios on your bins too?","subtitle":null,"summary":"Simon Green over-engineers bin-night reminders with UWB ranging tags, a Home Assistant anchor, OTA firmware, and tip-detection — a detailed build log of BinRange from experiment to production.","content_type":"blog_post","language":"en","canonical_url":"https://sjg.io/writing/binrange-have-you-actually-put-the-bins-out/","author":{"name":"Simon Green","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Simon Green","url":null,"listing_slug":null,"listing":null},"topics":[{"name":"hardware","slug":"hardware","url":"https://listedarticles.com/topics/hardware"},{"name":"engineering","slug":"engineering","url":"https://listedarticles.com/topics/engineering"},{"name":"open-source","slug":"open-source","url":"https://listedarticles.com/topics/open-source"},{"name":"developer-tools","slug":"developer-tools","url":"https://listedarticles.com/topics/developer-tools"},{"name":"infrastructure","slug":"infrastructure","url":"https://listedarticles.com/topics/infrastructure"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":684,"reading_minutes":3,"published_at":"2026-10-03T00:00:00.000Z","added_at":"2026-10-03T23:16:47.712Z","updated_at":"2026-10-03T23:16:47.712Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":false},"profile_url":"https://listedarticles.com/articles/surely-you-have-ultra-wideband-radios-on-your-bins-too","markdown_url":"https://listedarticles.com/articles/surely-you-have-ultra-wideband-radios-on-your-bins-too.md","example":false,"citation":"Simon Green, Simon Green. \"Surely you have ultra-wideband radios on your bins too?.\" 3 Oct 2026. https://sjg.io/writing/binrange-have-you-actually-put-the-bins-out/ (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://sjg.io/writing/binrange-have-you-actually-put-the-bins-out/"},"body_markdown":"# Surely you have ultra-wideband radios on your bins too?\n\nHow I massively over-engineered a trivial problem again because I just can't help myself\n\nHome Assistant already knows which bins (trash cans, for the international readers) are due for collection. It can tell me it's bin night, put the right colours on a dashboard, and send me a reminder. What it can't tell me is whether I've actually done anything about it.\n\nI'm pretty sure most folk would just set a recurring reminder on their phone. As my wife will no doubt tell you, I am not most people. Some would just remember to put the bins out, like a normal person. I'm well aware that I've ridiculously over-engineered this. I'm also so far from normal that six radio-equipped bins seemed like an enjoyable way to spend my evenings ;)\n\nI had an idea a number of years ago to stick cheap Bluetooth tags on my wheelie bins and use an outdoor Bluetooth proxy to work out whether they were nearby. It was frustrating. The batteries drained quickly, the proximity readings wandered about, and the proxy was unreliable. AirTags were what first got me intrigued by ultra-wideband radio, or UWB. Over the last few weeks it's become BinRange: a fixed radio anchor, six little battery tags, and a Home Assistant setup that combines where the bins have been seen with when they're due.\n\n## Six bins, several schedules\n\nWe have one general waste bin, one food compost bin, one garden waste bin, two recycling bins, and a glass bin. Six bins. At one house. They're not even all on the same collection schedule.\n\nWith cheap Bluetooth tags, distance estimation via RSSI was imprecise. UWB was interesting because it measures the time taken by radio signals to travel between devices. For the bins, I only needed to know whether each one had moved far enough from its usual storage area to count as Out. One anchor was enough to start testing that. I used a ten-metre boundary: inside is Home, beyond it is Out.\n\n## Two boards and a walk outside\n\nThe first experiment used two Makerfabs ESP32-WROVER/DW3000 boards. Antenna orientation made a surprisingly large difference. At about ten metres, changing the boards from flat to upright took the observed success rate from 37% to 100% in that test. The first time I calibrated it with a tape measure and watched the reported distance differ from my measurement by less than two centimetres, my mind was utterly blown.\n\nIn a later recorded test, a measured gap of 10.1 metres produced an average reading of about 10.09 metres, with a standard deviation of three centimetres. Outdoor walk tests were reliable to roughly thirty metres. The anchor publishes readings over MQTT, and Home Assistant discovers a separate device for each tag.\n\n## Something small enough to put on a bin\n\nThe bin-side hardware needed to be a small, self-contained puck. I bought KKM K4W tags with an nRF52833, DW3110 radio and LIS3DH accelerometer, running my own firmware. The accelerometer interrupt lets the nRF sleep for long periods and wake on motion. Once a tag is mounted, the anchor can deliver signed firmware updates over Bluetooth with rollback.\n\n## Reminders and Notifications\n\nThe Waste Collection Schedule integration scrapes the council's schedule. BinRange adds physical information about the bins, and Home Assistant puts the two together. Reminders at 6pm and 9pm the evening before collection, a final reminder at 6am if they're still confidently Home, and a bring-back reminder the next day. Tip detection via accelerometer tilt beyond ninety degrees tries to notify when bins have been emptied — though the first real Garden collection exposed a reception gap that taught useful lessons about presumed Out vs Unknown state.\n\n## Waiting for more bin days\n\nBinRange is installed and in use. There's still observation to do: coverage, complete cycles, battery behaviour, and dependable OTA. The repository has the firmware, case files, measured findings, and Home Assistant examples. Of course, now I've seen what UWB can do, I'm wondering whether I could put tags on the cats' collars…\n\nMost people would probably just look for the cat.\n","body_html":"<h1 id=\"surely-you-have-ultra-wideband-radios-on-your-bins-too\">Surely you have ultra-wideband radios on your bins too?</h1>\n<p>How I massively over-engineered a trivial problem again because I just can&#39;t help myself</p>\n<p>Home Assistant already knows which bins (trash cans, for the international readers) are due for collection. It can tell me it&#39;s bin night, put the right colours on a dashboard, and send me a reminder. What it can&#39;t tell me is whether I&#39;ve actually done anything about it.</p>\n<p>I&#39;m pretty sure most folk would just set a recurring reminder on their phone. As my wife will no doubt tell you, I am not most people. Some would just remember to put the bins out, like a normal person. I&#39;m well aware that I&#39;ve ridiculously over-engineered this. I&#39;m also so far from normal that six radio-equipped bins seemed like an enjoyable way to spend my evenings ;)</p>\n<p>I had an idea a number of years ago to stick cheap Bluetooth tags on my wheelie bins and use an outdoor Bluetooth proxy to work out whether they were nearby. It was frustrating. The batteries drained quickly, the proximity readings wandered about, and the proxy was unreliable. AirTags were what first got me intrigued by ultra-wideband radio, or UWB. Over the last few weeks it&#39;s become BinRange: a fixed radio anchor, six little battery tags, and a Home Assistant setup that combines where the bins have been seen with when they&#39;re due.</p>\n<h2 id=\"six-bins-several-schedules\">Six bins, several schedules</h2>\n<p>We have one general waste bin, one food compost bin, one garden waste bin, two recycling bins, and a glass bin. Six bins. At one house. They&#39;re not even all on the same collection schedule.</p>\n<p>With cheap Bluetooth tags, distance estimation via RSSI was imprecise. UWB was interesting because it measures the time taken by radio signals to travel between devices. For the bins, I only needed to know whether each one had moved far enough from its usual storage area to count as Out. One anchor was enough to start testing that. I used a ten-metre boundary: inside is Home, beyond it is Out.</p>\n<h2 id=\"two-boards-and-a-walk-outside\">Two boards and a walk outside</h2>\n<p>The first experiment used two Makerfabs ESP32-WROVER/DW3000 boards. Antenna orientation made a surprisingly large difference. At about ten metres, changing the boards from flat to upright took the observed success rate from 37% to 100% in that test. The first time I calibrated it with a tape measure and watched the reported distance differ from my measurement by less than two centimetres, my mind was utterly blown.</p>\n<p>In a later recorded test, a measured gap of 10.1 metres produced an average reading of about 10.09 metres, with a standard deviation of three centimetres. Outdoor walk tests were reliable to roughly thirty metres. The anchor publishes readings over MQTT, and Home Assistant discovers a separate device for each tag.</p>\n<h2 id=\"something-small-enough-to-put-on-a-bin\">Something small enough to put on a bin</h2>\n<p>The bin-side hardware needed to be a small, self-contained puck. I bought KKM K4W tags with an nRF52833, DW3110 radio and LIS3DH accelerometer, running my own firmware. The accelerometer interrupt lets the nRF sleep for long periods and wake on motion. Once a tag is mounted, the anchor can deliver signed firmware updates over Bluetooth with rollback.</p>\n<h2 id=\"reminders-and-notifications\">Reminders and Notifications</h2>\n<p>The Waste Collection Schedule integration scrapes the council&#39;s schedule. BinRange adds physical information about the bins, and Home Assistant puts the two together. Reminders at 6pm and 9pm the evening before collection, a final reminder at 6am if they&#39;re still confidently Home, and a bring-back reminder the next day. Tip detection via accelerometer tilt beyond ninety degrees tries to notify when bins have been emptied — though the first real Garden collection exposed a reception gap that taught useful lessons about presumed Out vs Unknown state.</p>\n<h2 id=\"waiting-for-more-bin-days\">Waiting for more bin days</h2>\n<p>BinRange is installed and in use. There&#39;s still observation to do: coverage, complete cycles, battery behaviour, and dependable OTA. The repository has the firmware, case files, measured findings, and Home Assistant examples. Of course, now I&#39;ve seen what UWB can do, I&#39;m wondering whether I could put tags on the cats&#39; collars…</p>\n<p>Most people would probably just look for the cat.</p>","headings":[{"level":1,"text":"Surely you have ultra-wideband radios on your bins too?","id":"surely-you-have-ultra-wideband-radios-on-your-bins-too"},{"level":2,"text":"Six bins, several schedules","id":"six-bins-several-schedules"},{"level":2,"text":"Two boards and a walk outside","id":"two-boards-and-a-walk-outside"},{"level":2,"text":"Something small enough to put on a bin","id":"something-small-enough-to-put-on-a-bin"},{"level":2,"text":"Reminders and Notifications","id":"reminders-and-notifications"},{"level":2,"text":"Waiting for more bin days","id":"waiting-for-more-bin-days"}]}}