The plan
Damp Diary: blueprint
Written 15 October 2026. It describes the business, the software and how the software and the hardware fit together.
Every part carries a status, so nothing is claimed beyond what exists:
- Built: exists and passes its tests (the server: 27 tests on 15 October).
- Prototype: written, but not yet run on real hardware (the firmware compiles).
- Plan: not built yet.
1. In one paragraph
Damp Diary is a £29 wall sensor that a tenant buys and owns. It sits beside the corner that keeps going damp. It reads the room every ten minutes and pulls in the local weather. From these it works out when the coldest surface will run wet, and it warns the tenant the night before. After a week it answers the question every damp dispute turns on: is the moisture from how the tenant lives, or from a cold building? It answers with numbers. Every reading is signed into a log that cannot be quietly changed. If the cause is the building, it drafts the letter to the landlord with the readings and the law that applies.
2. The business
Customer and problem
- Who pays: private tenants in England, starting in Manchester, who are in a damp dispute or heading into one.
- The problem: one in ten privately rented homes in England has a damp problem, against 5% of all homes, about 1.4 million homes (English Housing Survey 2024-25).
- The dispute: the landlord says it is how the tenant lives, and the tenant says it is the building. The tenant usually has only photos.
- Why now:
- Awaab's Law has applied to social landlords since 27 October 2025.
- For private renting, the government consultation runs from 9 October to 18 December 2026.
- Tenants are about to have a reason to keep evidence.
What the customer gets
| Part | Status |
|---|---|
| The sensor, with a green, amber and red light and one button | Prototype |
| The chat assistant (Telegram today): alerts, the night-before warning, the verdict, the letter, the log | Built |
| A signed, exportable log of every reading | Built |
How it makes money
| Line | Price | Status |
|---|---|---|
| The device, software included, no subscription | £29 one-off | Planned price |
| Bulk sales to groups that lend devices to members (tenant unions, advice services, student unions) | To be set per order | Plan, to test |
| Extra sensors for more rooms on the same account | To be set | Plan, to test |
The second and third lines are options to test with buyers. Nothing is decided.
Unit costs
| Item | Cost | Source |
|---|---|---|
| Core parts: SHT40 sensor £1.63, ESP32-S3 module £2.46, case £0.62, LED ring £0.40, battery £0.67 | £5.78 | Alibaba.com listed prices, 15 Oct 2026 |
| Circuit board, assembly and test | To be quoted | Needs the board files and parts list |
| USB-C socket, charger chip, button, packaging | To be quoted | |
| Shipping, duty and import VAT | To be quoted | |
| Running costs per device: hosting, weather data on Open-Meteo's commercial plan, messaging | To be measured | Open-Meteo's free tier is for non-commercial use only |
£29 includes 20% VAT, so the business receives about £24.17 per device before payment fees. The margin can only be stated once the board quote is in.
Channels to test
- Direct: short videos on TikTok and Instagram, and a simple order page.
- Groups to approach in Manchester: tenant unions such as ACORN and the Greater Manchester Tenants Union, student unions, and university accommodation offices. None of these is a partner yet.
- Advice services: local Citizens Advice and housing charities, as lending pools. Not yet approached.
Competitors and the gap
| Who | Who buys it | What it does | What it does not do |
|---|---|---|---|
| Aico HomeLINK, Switchee | The social landlord | Sensors in social homes, reporting to the landlord | Work for the tenant |
| Wi-Fi hygrometers on Alibaba.com (£4.19 and £6.78 to £7.54 listed) | Anyone | Show temperature and humidity | Forecast, judge the cause, keep a signed log or write the letter |
| Damp Diary | The tenant | Forecast, verdict with numbers, signed log, landlord letter |
Validation plan, next 30 days (Plan)
- Talk to 20 tenants who have reported damp. Ask what happened and what evidence they had.
- Put prototypes on real walls for at least a week, with the tenants' consent.
- Open a pre-order page and count real sign-ups. Quote only real numbers.
3. The system at a glance
Tenant's home
- Sensor (SHT40)
- ESP32-S3: reads every 5 s
- posts every 10 min, or at once on a jump
- Light: green/amber/red
- Button: send now
Server (Node 24, TypeScript)
/v1/hellopairing window/v1/readingstore + verdict- physics: dew point, surface RH
- assess: live level, pattern, tomorrow, living or building
- store: signed log (HMAC chain)
- letter: template from the log
- weather: Open-Meteo, 7 days back and 3 days ahead
Tenant's phone
- Chat (Telegram)
- alerts
- tomorrow
- why, letter
- log, delete
The device only measures and shows a colour. All the judgement happens on the server, so the model can improve without touching the hardware.
4. Hardware
The prototype for the video and the final (Prototype)
| Part | Price | Where |
|---|---|---|
| M5Stack AtomS3 Lite (ESP32-S3, RGB LED, button, USB-C, Grove port) | £9.00 | The Pi Hut |
| M5Stack ENV III unit (SHT30 sensor, Grove cable included) | £6.80 | The Pi Hut |
The two plug together with no soldering. The firmware also detects an SHT40 on the same cable.
The production design (Plan)
| Block | Part | Why |
|---|---|---|
| Brain and radio | ESP32-S3-WROOM-1-N8R8 module | Pre-certified Wi-Fi module, so radio testing is simpler. Enough memory to queue a week of readings |
| Sensor | SHT40 | Datasheet accuracy about ±1.8% RH and ±0.2°C. Placed at the edge of the board, behind a slot, away from the chip's heat |
| Light | WS2812B ring, 12 LEDs | One colour at a glance from across the room |
| Input | One button | Send a reading now, start pairing |
| Power | USB-C, a TP4056 charger chip and a 602030 300 mAh cell with protection | Mains in normal use. The battery keeps logging through power cuts or a move |
| Case | 36 x 36 x 20 mm wall box, vents on two sides | Air reaches the sensor and the case does not trap heat |
Power, two modes (Plan; to be measured)
- Plugged in: posts every ten minutes, and the light is live.
- On battery:
- The device stores readings and sends them in a batch every few hours.
- It posts at once if the room crosses into amber or red.
- The server already accepts readings up to a week old, so no change is needed on the server side.
- Battery life is not estimated here: it has to be measured on the prototype.
Version 2: the corner probe (Plan)
A thin temperature probe on a lead, taped into the damp corner. It measures the coldest surface directly, so the model does not have to estimate it, and the verdict gets stronger.
5. Firmware (Prototype: compiles, not yet run on hardware)
- Sensing: reads the sensor every 5 seconds. It finds an SHT30 or SHT40 by itself and checks every reading's checksum.
- When it posts: a reading goes to the server every 10 minutes. It goes at once if the humidity jumps by 4 points (a shower, a kettle) or the button is pressed.
- The light:
| Light | Meaning |
|---|---|
| Green | Fine |
| Amber | Close to condensing |
| Red | The coldest corner is wet |
| Blue blink | Not paired yet; the device asks again every minute |
| Dim white blink | No Wi-Fi or no server. The colour then comes from the room's humidity alone (red at 85% and above, amber at 70% and above) |
| Slow red blink | No sensor found |
- Before sale (Plan):
- Set up Wi-Fi from the phone instead of compiling it in.
- Check the server's certificate instead of skipping the check, which the prototype does.
- Add over-the-air updates.
6. How the device and the server talk (Built)
Every request carries three headers:
- x-device-id: the device's name.
- x-device-key: its secret. The server keeps only a hash, and a wrong key is refused.
- x-device-code: the short code printed on the label, used for pairing.
| Call | Sends | Gets back |
|---|---|---|
POST /v1/hello | Nothing | Whether the device is paired. If not, a ten-minute pairing window opens |
POST /v1/reading | Temperature and humidity, plus a time if the reading is older | The level and colour to show |
Pairing:
- The tenant sends "pair" plus the label code in the chat.
- The server links the device to that tenant.
Before consent: until the tenant agrees and the device is paired, nothing is stored. The colour then comes from the room's readings alone.
7. The server (Built)
| Module | Job |
|---|---|
| app.ts | The routes, the chat commands, the evening nudge and alert timing |
| physics.ts | Dew point, absolute humidity, surface temperature and surface humidity |
| assess.ts | The live level, the room's hourly pattern, tomorrow's risk and the living-or-building verdict |
| weather.ts | Open-Meteo: 7 days of past weather and 3 days of forecast, plus place lookup |
| store.ts | People, devices and readings in one file, with the signed chain. 90 days kept |
| letter.ts | The landlord letter, built from the log, in two versions: social and private |
| telegram.ts | The chat |
| tools/ | A pretend device and a simulated week, for testing and for the demo, kept apart from real data |
Before sale (Plan):
- Move from one file to a database.
- Host it in the UK or EU.
- Add WhatsApp or a web page next to Telegram.
8. The model (Built)
| Step | How |
|---|---|
| Dew point and moisture in the air | Magnus formula, from temperature and humidity |
| Coldest surface | Outdoor temperature plus 0.65 of the gap to the indoor temperature (the temperature factor used in building standards; 0.65 is a poorly insulated wall) |
| Surface humidity | The room's moisture against what the cold surface can hold |
| Live level | Red when the surface reaches 100% or the room 85%. Amber when the surface reaches 80% (the usual mould-risk threshold) or the room 70% |
| Tomorrow | The room's usual hourly pattern from the past week, combined with tomorrow's forecast, hour by hour |
| Living or building | Moisture added indoors (indoor minus outdoor, in grams per cubic metre) against the share of time below 16°C. Over 4 g/m³ added and not cold points to ventilation. Little added but cold more than 30% of the time points to the building. Both together is "mixed" |
The verdict needs at least a day of readings and the outdoor weather. With less, it says so.
Weak point: the surface temperature is an estimate, and the corner probe in version 2 fixes it. Until then, the letter states the readings, and the estimate is named as an estimate.
9. The tenant's chat (Built)
| Command | What it does |
|---|---|
| yes | Gives consent |
| pair, room, place | Set up the device, the room's name and the town |
| status | The current reading |
| tomorrow | The night-before warning: which hours, and what to do |
| why | The verdict, with its numbers |
| letter | The landlord letter, in a social or private version |
| log, events | The signed log as a file, and the list of alerts |
| delete my data | Deletes everything, after the tenant types DELETE to confirm |
Alerts are spaced at least two hours apart, except that a change to red is always sent.
10. Evidence and privacy (Built, with Plan items)
- Signed log (Built):
- Each reading is signed with HMAC-SHA256 together with the previous reading's signature.
- Changing or deleting any old reading breaks the chain, and the check shows exactly where.
- The chain still checks after old readings are trimmed.
- Consent first (Built): nothing is stored before the tenant says yes.
- Delete (Built): the tenant can delete everything at any time.
- A device passed on (Built): if it is paired to someone new, the previous tenant gets their log first, then it is cleared.
- Before sale (Plan):
- A privacy notice.
- Registration with the Information Commissioner's Office.
- Hosting in the UK or EU.
- A security review.
11. Rules to meet before the first sale (Plan)
| Rule | What it means here |
|---|---|
| UKCA marking, Radio Equipment Regulations 2017 | Radio, electrical safety and electromagnetic testing of the finished device |
| Product Security and Telecommunications Infrastructure regulations, in force since 29 April 2024 | No default passwords, a published way to report security problems, and a stated period of security updates |
| Battery transport (UN38.3) | Certified cells, and sea freight or a UK supplier |
| WEEE | Producer duties for electrical equipment sold in the UK |
| Data protection | Privacy notice, ICO fee, and a lawful basis for each use of the readings |
| The letter is not legal advice | Every letter says so and points to Shelter or Citizens Advice |
12. Build path to the final
| Date | Step | Status |
|---|---|---|
| 15 Oct | Software built and tested, firmware written, suppliers selected | Done |
| 16 Oct | Application submitted, video link added if ready | |
| 23 Oct | Finalists announced | |
| By 27 Oct | Order Alibaba.com samples (about £80 to £95) through Trade Assurance, after messaging each supplier | Plan |
| By 7 Nov | Prototype on a real wall, a week of real readings | Plan |
| 19 to 20 Nov | Final at ExCeL London, with the working prototype |
13. Risks
| Risk | Answer |
|---|---|
| The surface estimate is wrong for a given wall | State the readings and call the estimate an estimate. Add the corner probe in version 2 |
| Landlords dismiss the evidence | The log is signed and dated, and the verdict shows its arithmetic |
| Tenants do not pay £29 | Test with a pre-order page and bulk orders from groups before making a batch |
| The device is moved or unplugged | The battery keeps logging, and the log shows every gap |
| Privacy | Consent first, delete on request, a minimum of data, and UK or EU hosting |
| A health claim slips in | Say "condensation", "damp" and "mould risk" only. Never "prevents mould" |
14. Not built yet
- A device on a real wall: no real readings exist yet.
- The production board and case.
- Wi-Fi setup from the phone, certificate checks and over-the-air updates.
- Database hosting.
- An order page.
- Any sales or users.