← back to blog

fresh first

every time i cleaned my fridge, i found food i meant to eat but forgot about until it expired. the date was on the package, but as soon as the food went into the fridge, that date basically disappeared.

i started wondering: what if the fridge itself told me what to use next?

the first idea

the first version was simple. i would enter a product and its expiry date, then a small screen on the fridge would sort everything so the item i should use first was always at the top.

milk — oct 27tortillas — nov 2bread — nov 4

i wanted the screen to be wireless, low power, and always visible. it did not need animation or constant interaction. that led me to e-paper: readable at a glance, no backlight, and able to retain an image between refreshes.

the input problem

the display was not actually the hardest part. the bigger question was whether i would consistently enter every grocery item. if adding something felt like a chore while unloading bags, the whole system would become useless within a week.

my first attempt was passive camera scanning. i wanted to leave the camera open, move each product into view, and automatically detect its name and expiry date without taking individual photos. it sounded like the most frictionless approach.

then i tested it on real packaging. one container said “26 oc 27.” another had faint printing wrapped around a curved lid. others had glare, batch numbers, bilingual text, or dates pressed into plastic. the camera could see the package, but reliably interpreting it was another matter.

i added a diagnostic view to see what the ocr was actually reading. instead of clean dates, i saw changing fragments, nutrition-label text, and characters that were not present at all. the occasional successful scan made the feature feel promising, but not trustworthy.

changing direction

that was the point where i stopped trying to rescue the camera feature. something that works perfectly 60% of the time is worse than a simple input that works every time, especially when an incorrect expiry date can quietly sit in the fridge list.

i moved to continuous voice entry instead. press once, say each product and date, pause briefly between them, then review everything before saving.

“orange juice, october 27th 2026.”“cream cheese, november 9th 2026.”“greek yogurt, september 25th 2026.”

voice recognition introduced its own problems. the browser version worked on my phone but failed in other browsers and on my laptop. that pushed the design toward recorded audio and consistent transcription, with manual entry kept as the dependable fallback.

as the input flow improved, the app grew around it: accounts, private fridge data, editable products and dates, expiry warnings, automatic sorting, and a “used” action. the phone became the place for interaction while the fridge display stayed calm and glanceable.

building the physical display

next, i assembled the physical prototype: an esp32 connected to a 4.2-inch e-paper display. the first challenge was getting the orientation, layout, and font sizing right. at one point, the pairing code was literally rendered halfway off the screen.

once the display worked, i added device pairing. the screen shows a short code, the user enters it on their phone, and the display becomes linked to their fridge.

it now checks for changes every 15 seconds. add an item, correct a date, or mark something as used, and the list updates automatically. if nothing changed, the e-paper does not redraw. items that cannot fit are summarized with “+ 8 more — tap nfc.”

making it portable

making it portable meant adding another system around the system: a lipo battery, charging and protection board, 5v converter, fuel gauge, level shifter, switch, and a lot of wiring.

after tracing voltages and fixing polarity issues, the display could finally show its own battery percentage.

designing the enclosure

the enclosure went through the same process. the first print placed the display 5 mm too high. later revisions added magnets, proper charging-port alignment, wire clearance, and enough space for the new electronics.

where it is now

it is not the final product, but the original idea now works: look at the fridge and immediately know what to use next.

next, i want to finish the revised enclosure, improve the charging architecture, measure real battery life, and live with the prototype long enough to learn which parts are genuinely useful.

if this were on your fridge, what would you want it to show?