<?xml-stylesheet href="https://connected-environments.org/pretty-feed-v3.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>UCL Connected Environments</title>
    <description>Using digital technology to gain insights into our complex built and natural environment.</description>
    <link>https://connected-environments.org/</link>
    <atom:link href="https://connected-environments.org/feeds.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Fri, 15 May 2026 03:00:11 +0100</pubDate>
    <lastBuildDate>Fri, 15 May 2026 03:00:11 +0100</lastBuildDate>
    <generator>Jekyll v4.4.1</generator>
    
      <item>
        <title>City Clock: A City where the People Tell the Time</title>
        <description>City Clock: The City Where People Tell the Time


  
    
      May 2026
      making
      ai, vibe-coding, canvas, ios, clock
    
  




Last month we launched Aqua Clock on iOS - a clock where the fish tell the time. It was an experiment in agent based modelling and vibe coding, creating a unique app which acts as both an aquarium and clock.

Aqua Clock

City Clock expands the concept into a living breathing city - complete with a city square where citizens gather and every minute - tell the time.



The concept is similar to Aqua Clock but fish exist in a contained volume of water. They have no destinations, no routines, no reason to be anywhere in particular. A city is the opposite. A city is almost entirely made of reasons to be places. Shops to visit, homes to return to, friends to meet, a coffee to get before 9am. If you’re going to build a city that also happens to tell the time, you need to build the city first — properly, with all of its rhythms and routines — and then add the clock on top.

![City Clock — with clock formation in the central plaza]City Clock - with the Clock Formation in the City Square



The Clock Mechanism

At the start of every minute, 112 pedestrians are summoned to the central plaza to form a four-digit digital clock — HH:MM — using seven-segment geometry. Each digit uses up to 28 people, four per segment. They walk in from wherever they are in the city, take their positions, hold for 15 seconds, then scatter.

For the remaining 45 seconds of every minute, those same 112 people — along with hundreds of others — simply live their lives.

They have homes. Assigned houses with garden paths and front doors. They visit cafes and queue outside at rush hour. They sit on benches. They go home at 10pm. Some of them have dogs. A few ride bicycles. One of them is always trying to find somewhere to sit with their coffee.

You can double-tap anywhere to force the formation immediately, without waiting for the next minute. It’s oddly satisfying — a whole city dropping what it’s doing to spell out the time.

)
Pedestrians mid-formation. The fountains serve as the colon separator.



A Living City

What makes this more than a clock-with-scenery is that the city actually runs. It’s not decorative background — it has systems.

Traffic navigates junctions with working traffic lights, brakes for pedestrians, and takes smooth Bézier-curve turns at corners. Emergency vehicles push through with flashing lights and sirens. Delivery vans park outside venues and drop packages. Rubbish trucks do their rounds, collecting wheelie bins that reappear a few minutes later once residents wheel them back in.

Pedestrians use a needs-based model — Energy, Hunger, Social — with thought bubbles indicating their current priority. They shelter under awnings when it rains. They queue longer at cafes on weekday mornings. They stay home at night.

Weather is live, pulled from Open-Meteo, or cycles through all ten types in demo mode — drizzle, snow, fog, thunderstorms, hail. Roads get wet and reflective. Puddles form and slowly evaporate. Fog rolls in as animated layered tendrils rather than a flat grey wash. It also provides a full 12 hour forecast for your chosen location.

The day/night cycle runs in real time. At dusk, street lamps flicker on and cast warm pools across pavements. Building windows glow amber. Car headlights sweep the roads. By 2am the city is almost dark, with just a few lit windows where someone is working late.

A street musician sets up in the plaza between 9am and 9pm. Passers-by stop to listen and occasionally throw coins. A newspaper kiosk opens at dawn and folds away by lunchtime. Steam trains run to Central Station and the branch line at West St. — more on that below.

The plaza itself has a compass rose picked out in the paving. Two fountain basins serve as the colon in the clock display, which is either very elegant design or a very happy accident, depending on when you noticed it.


Between formations the plaza is just a plaza. Outdoor seating, market stalls on weekends, a busker, benches. The city information stream (bottom left) reports events as they happen.



The Canal and the Mills

Somewhere mid-development, the city acquired a canal.

It runs the full height of the map along the right edge — a narrow waterway separated from the city blocks by a stone towpath. Three narrowboats travel up and down, slowing near bridges, giving way to each other, the way narrowboats do. Next to the canals are factories. The factories work. Goods accumulate in the yards over time — wooden crates, metal drums, canvas sacks — until a narrowboat passes the loading bay, slows, and moors up to take them on. The cargo appears on the boat’s deck and slowly fades as it’s delivered further down the canal. The city information stream reports each loading event.

The chimneys smoke independently. Each factory has its own cycle — active for 30 to 120 seconds, then quiet for a shift change or a stoking break, then active again. They don’t synchronise. Standing at the right zoom level you can watch them come and go across the row of mills, which is unexpectedly hypnotic.

* the full city with Canals and a Railway Network*



Two Lines, Two Stations

The bottom of the city is given over entirely to the railway. A full-width corridor of track, signal infrastructure, allotment gardens on the left — proper fenced plots with crop rows, sheds, and water butts — and terraced housing on the right. Central Station sits at the centre, a stone-fronted building with a clock above the entrance and a platform that fills with waiting passengers.

Every few minutes, a steam locomotive arrives from the right edge of the map. It slows as it approaches the platform, stops, and waits. While it’s stationary, new arrivals step out of the carriages and fade into view on the platform before making their way into the city — heading for the bus stop, the plaza, wherever they’re going. Passengers who have been waiting on the platform board as the train prepares to depart, fading out as they step onto the carriages. Then the locomotive pulls away to the left and disappears. The city information stream logs the departure.

What makes this more than a visual loop is that passengers are real pedestrians. Arrivals are spawned from the train and immediately join the city’s population — they need somewhere to go, they have the same needs and routines as everyone else. Departing passengers were walking around the city moments before; they received a summons, walked to the platform, and waited. The train is connected to the city’s social fabric, not just painted onto it.

The branch line adds another layer. West St. station sits at the far left of the map, served by a vertical track running the full height of that column. A smaller locomotive — a branch service — runs independently on its own schedule, arriving from the south and departing northward. The same boarding and alighting cycle plays out on its own platform. Two lines, two departure toasts, two streams of arrivals filtering into the city from different directions.

Between the main line and the branch line, the bottom of the city has a texture you don’t find in the rest of the grid — slower, more industrial, with the allotment plots adding an unexpected patch of green alongside the track.



The City Information Stream

One of the things that emerged fairly naturally was a notification layer — a running feed of city events displayed as toasts in the bottom-left corner. Not intrusive, not demanding attention, just quietly reporting what’s happening.

Train departing. Canal loading. Ice cream van parked near the plaza. Fog settling in. Flash mob in progress. The Sunday market is open.

The ice cream van deserves a mention of its own. On warm afternoons between April and September, a white-and-pink van parks near the plaza — drawn top-down like every other vehicle, with a serving hatch window, a pink stripe along its length, and a small scoop sign on the roof. Its jingle plays when it arrives. A queue forms outside. It stays for a while, then leaves when the weather turns or the afternoon ends.

It’s on by default and can be turned off in settings. When it’s running it gives the city a texture of ongoing activity — a sense that things are happening slightly beyond the edge of the screen, and have been happening all along.



The City Dashboard

One of the more quietly satisfying additions is a daily stats panel. Toggle it on in Settings and a small overlay appears showing what the city has actually done today: how many people are currently in the plaza, how many are at home, how many train passengers have arrived, how many coffees have been sold, pints pulled, books bought, flowers purchased.

The City Dashboard

The market veg stock percentage ticks down through the day as pedestrians browse the stalls. The number of mills operating updates as factories cycle on and off. Although at the moment they do all seem to be drinking too much coffee…

It’s a snapshot of a day in the life of a city that’s been quietly going about its business the whole time.



Special Events: Buskers, Flash Mobs and the Alarm

Some of the most characterful moments in City Clock are the ones that are not scheduled.

A street musician appears in the plaza between 9am and 9pm, setting up for 40 seconds to two minutes at a time. There’s a guitar case on the ground. Floating ♪ ♫ music notes drift upward. Pedestrians who wander into earshot stop, turn to face the musician, and stand and listen. Occasionally one of them walks forward and throws a coin — rendered as a little arcing gold particle landing in the open case. The busker has a star rating below them. You can zoom in close enough to read it.

Flash mobs erupt occasionally without warning. A crowd gathers, the event unfolds — a protest with banners, or a spontaneous performance — and then disperses. Nearby pedestrians are drawn in, stop to watch, and drift away again when it’s over. The city information stream announces it quietly: A flash mob has broken out in the plaza. Everyone is dancing.

The alarm clock was central to the system with the aim to make the ‘happiest alarm sound’ possible.

Set a time in Settings and when the clock reaches it, the entire city population converges on the plaza and dances. Not a polite shuffle — a full celebration, everyone streaming in from wherever they are, umbrellas and hats and the whole chromatic range of pedestrian clothing swirling in loose spirals. A bandstand appears in the upper plaza with a five-piece band: singer, guitar, bass, drums, keys.

Snooze for nine minutes or dismiss entirely. When the alarm ends, the bandstand fades and everyone disperses back to their routines — home, the café, the park bench, wherever they were going before the music started.

The Alarm Function

The alarm clock triggers a city-wide dance in the plaza.



The Calendar: Seasons, Holidays and Quiet Sundays

The city is aware of the calendar in a way that accumulates gently over time rather than announcing itself.

The plaza decorates itself for major events: a Christmas tree with twinkling baubles and fairy lights strung between lamp posts from December through early January; jack-o’-lanterns at the plaza corners for Halloween with candlelight flickering inside at night; a bonfire in the upper plaza for Bonfire Night with rising sparks and an orange glow spreading across the paving; confetti for New Year, a maypole for May Day, shamrocks for St Patrick’s Day, pastel eggs for Easter. Each event is drawn in the dynamic layer beneath pedestrians, so life continues normally around the decorations — people walk through the Christmas scene, queue outside the café beside the Halloween lanterns.

Bunting is strung between lamp posts for every event, colour-coded to the occasion — green and orange for St Patrick’s, red and green for Christmas, rainbow for weekends. Flags hang in a natural catenary droop, individual triangles in the correct colours, dimming proportionally at night.

Three atmosphere overlays run continuously. A gradient morning mist sits at ground level from 5am and burns off by 9am. A warm amber wash builds through the afternoon and peaks at golden hour around 6pm. On Sunday mornings, a barely perceptible cool blue tint settles over the city before noon — so faint you might not consciously notice it, but the city feels slower.

The residential chimneys smoke more in cold months and at morning and evening heating peaks. Gardens look the same year-round but the quality of light shifts across the day in a way that makes the city feel genuinely different at 7am on a Tuesday in February versus 6pm on a Saturday in July.



Under the Hood

Everything is rendered on an HTML5 Canvas using TypeScript, built with Vite. There are no runtime dependencies. No React, no game engine, no physics library.

The city is split into a static canvas layer — roads, buildings, houses, parks, the plaza — pre-rendered at startup and rebuilt only when lighting changes or zoom drifts significantly. This is composited each frame with a dynamic layer containing everything that moves or changes: pedestrians, cars, weather, canal boats, chimney smoke, market stalls, the train.

Pedestrian pathfinding uses a 9px walkability grid covering the whole city, with 8-directional A* for routing home. Traffic runs on a node graph with Bézier curve turns at junctions. The weather system cross-fades between states — rain doesn’t vanish mid-drop when conditions change, it tapers out naturally over about 7 seconds before the new weather fades in.

The clock geometry is a standard seven-segment layout scaled to fill the plaza, with each segment subdivided into four pedestrian positions. At summons time, eligible pedestrians compute their target position, cancel whatever they were doing, and walk there. When released, they don’t teleport back — they just resume normal wandering from wherever they’re standing in the plaza.

Sound is a mix of authentic recordings and procedural synthesis via the Web Audio API. A narrow-gauge train whistle plays on each departure — a real recording, fetched and decoded into an AudioBuffer on first interaction so it’s ready without any autoplay restriction. A genuine thunder crack fires during storms. A UK police siren plays once per emergency vehicle (a WeakSet ensures it never repeats for the same car object). When an ice cream van parks near the plaza, its jingle plays. Everything else — rain, the fountain spray, bird calls, the ambulance wail — is procedurally synthesised. Everything starts muted and can be toggled in settings.



Vibe Coding a City

The Aqua Clock post described vibe coding as “a process of iterating through ideas, accepting suggestions, discarding others, and allowing the final artefact to emerge from the generative process itself.” City Clock is that, at considerably larger scale.

The canal wasn’t planned. Neither were the mills, or the goods system, or the independent smoke cycles, or the city information stream. They emerged from the question each version of the city was implicitly asking: what would make this feel more real?

The human role in this process wasn’t writing code — this was the first system I have built where I never looked at the code. It was an odd feeling but times are changing - it was mainly a process in this is what i want - a living breathing small city living in my web browser and and on my phone’ that by the way, tells the time.

It was a conversation and aesthetic and editorial judgment. It was also a joy to build, developed as a ‘sideline’ between the actual day to day job and one of those things to give 20 minutes here and 20 minutes there to. Development (if it can be called development nowadays?), took two weeks.

At the moment it runs in any browser and if i have a few more 20 mintues side lines free, coming to iOS as an app.



Load the City

Do give it a go digitalurban.github.io/city-clock — add to your home screen for a fullscreen standalone experience and do try out the alarm.

City Clock - The Place where People Tell the Time.


</description>
        <pubDate>Wed, 06 May 2026 09:00:00 +0100</pubDate>
        <link>https://connected-environments.org/blog/2026-05-06-city-clock-vibe-coding-boids-people-tell-time/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2026-05-06-city-clock-vibe-coding-boids-people-tell-time/</guid>
        
        <category>ai</category>
        
        <category>vibe-coding</category>
        
        <category>boids</category>
        
        <category>clock</category>
        
        <category>ios</category>
        
        
        <category>making</category>
        
      </item>
    
      <item>
        <title>Green Wall Irrigation System live at Avenue School</title>
        <description>Great to see the Nuna Green Wall Irrigation System going up over the Easter school holidays at Avenue Primary School. We have been working with Mac Van Dam with support from a UCL EPSRC Impact Acceleration Account (Circular Economy Innovation Challenge Grant Award) to add in some edge AI to their design. This first step was getting a monolithic off grid pumping system working, next up is creating a modular system (Hydrogrid project).



We have been documenting the project as we go to remind ourselves of the different off-grid approaches we are experimenting with. Initial tests involved working out the power requirements needed to pump water up a height of 7m - turns out gravity does have an impact on lifting a head of water. (Video from tests a month or so ago)

We used the DJI Mini 4 to get some footage of the install process. The second day of filming was quite windy making getting slow close up shots of the planters in the wall tricky. Ended up shooting way more footage than I would have liked (3 batteries worth) but did some experimenting with vertical filming and filming in D-Log. Results below.



3 minute landscape



30 second portrait

Looking forward to working on the distributed micro version of this over the next few months.

</description>
        <pubDate>Sat, 25 Apr 2026 09:00:00 +0100</pubDate>
        <link>https://connected-environments.org/blog/2026-04-25-biogrid/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2026-04-25-biogrid/</guid>
        
        <category>making</category>
        
        <category>research</category>
        
        
        <category>events</category>
        
      </item>
    
      <item>
        <title>Celebrating 200 Years of UCL with the Time Telephone</title>
        <description>In February 2026, UCL launched its bicentennial celebrations, opening a year of exhibitions, installations, performances, and public events marking 200 years since its foundation (see the full programme here). As part of these celebrations, I was invited to contribute with one of my favourite long-term installation: the Time Telephone.

A Familiar Phone Box with a Story

If you’ve spent time around UCL in recent years, you may have already spotted it, the distinctive red telephone kiosk K6 originally designed by Sir Giles Gilbert Scott has travelled between Marshgate, the UCL Institute of Education, the Connected Environments Lab, and even at the University of Sheffield.

In its first iteration, the installation invites visitors to “call” the past and listen to recordings of children’s play gathered across generations and locations in the UK during the EPSRC Playing the Archive project, offering a simple yet powerful way to connect with shared cultural memories. You can read more about its concept and development on our Connected Environments website, on the Iona and Peter Opie Archive website and from our book Playing the Archive: From the Opies to the digital playground



A New Home for UCL 200

For the UCL 200 celebrations, the Time Telephone has taken up residence in the UCL Student Centre as part of the Two Centuries Here exhibition. In this new setting, the Time Telephone invites students, staff, and visitors to pick up the handset and explore stories from UCL’s past.
The recordings featured in this iteration come from Generation UCL: an oral history of student life in London. The installation includes excerpts from more than 90 interviews recorded between 2022 and 2025, drawn from research by Professor Georgina Brewis and Dr Sam Blaxland for their upcoming book Student London: A New History of Higher Education in the Capital.
Within the first two months of its opening, the Time Telephone has received over 600 calls and counting. 
A big thank you goes to Dean Veall for the support during the installation, and Cyrus Shroff whose careful restoration work refreshed the phone box after more than eight years of uninterrupted service.



Project Origins

The Time Telephone was originally developed by Dr Valerio Signorelli as part of the Playing the Archive project, co-led by Prof Andrew Burn, Prof Jackie Marsh, Prof Andy Hudson-Smith, and Dr Duncan Hay.
The project explored children’s play activities from past and present, and was created in collaboration with:

  UCL Knowledge Lab,
  UCL ReMAP
  The Bartlett Centre for Advanced Spatial Analysis (CASA)
  The University of Sheffield
  The Young V&amp;amp;A
  The Bodleian Libraries
  The British Library


The concept of the TimeTelephone was co‑created and tested with primary school children in Tower Hamlets by Prof John Potter, Dr Kate Cowan, and Dr Valerio Signorelli, with recordings collected in Sheffield, Cardiff, London, and Aberdeen by Dr Julia Bishop, Dr Catherine Bannister, and Alison Somerset-Ward.

</description>
        <pubDate>Fri, 17 Apr 2026 09:00:00 +0100</pubDate>
        <link>https://connected-environments.org/blog/2026-04-17-timetelephone-at-ucl200/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2026-04-17-timetelephone-at-ucl200/</guid>
        
        <category>making</category>
        
        <category>engagement</category>
        
        <category>research</category>
        
        
        <category>events</category>
        
      </item>
    
      <item>
        <title>Indoor Solar Energy Harvesting with Supercapacitors</title>
        <description>Introduction

With advances in photovoltaics, low power circuits and communication protocols, it is possible to sustainably power simple indoor sensor circuits via the energy harvesting of indoor ambient light. Indeed, it is now possible to buy commercial indoor environment sensor systems such as the Elsys ERS Co2 LoRa indoor environment monitor that can run indefinitely on harvested indoor light.

The aim of this work was to explore a simple and cheap DIY approach to sustainably powering an indoor connected sensor system, through the harvesting of ambient light.
A key design decision was to use a supercapacitor for energy storage. Batteries, even rechargeable ones, have a limited lifetime (charge/discharge cycles) and generally required a dedicated charging IC. Supercapacitors avoid these limitations and although their energy storage capacities are much less than a similar sized battery, they are more environmentally friendly.

LoRaWAN was chosen as the communications protocol, since it is has low power demands on the client and the infrastructure already existed.

Building Blocks

Photovoltaic Panel

A small 5cm x 5cm organic light harvesting solar panel was used (Epishine LEH3_50x50_6) due to its superior low light performance, compared to conventional silicon panels.

Rectifier Diode

A BAT43 Schottky diode for its low forward voltage drop

Supercapacitor

Abracon 10F 5.5V (ADCM-S05R5SA106RB) supercapacitor. Affordable and high nominal voltage.

Voltage Supervisor

Texas Instruments TPS3839G33DBZR ultralow power, supply voltage monitor. The choice of this component was inspired by this thread. The voltage supervisor disables the system (via the voltage regulator) when the capacitor voltage level falls below the threshold required to reliably operate the circuit. It also adds some hysteresis into the circuit such that the ‘off’ threshold voltage (3.4 V) for a falling capacitor voltage (discharging) is less than the ‘on’ threshold voltage (3.6 V) for a rising capacitor voltage (charging). This ensures that for a rising capacitor voltage the capacitor has a sufficient reservoir of charge to operate the circuit reliably before the regulator is enabled.

Regulator

A 3 V ultra-low quiescent current,  low drop out (LDO)  regulator (Microchip MCP1711T-30I/OT), which includes an enable/disable pin.

Microcontroller

Microchip Technology ATMega328P-AU. This is compatible with the Arduino platform and the LoRaWAN library required for the LoRa module

LoRa Module

RFM95W which is a cheap and widely available LoRa radio module. The MCCI LoRaWAN LMIC library is used to provide LoRaWAN compatibility.

Sensor

Texas Instruments HDC1080 Temperature/Humidity sensor. Good quality, affordable sensor with low current requirement.

Circuit





Focusing on the energy harvesting part of the circuit, CN1 is a connector into which the solar panel plugs. The Schottky diode prevents the supercapacitor C1 discharging into the panel when light levels are low. The voltage divider formed by R1 and R2 is used to set the required ‘off’ threshold to about 3.4 V, since the intrinsic threshold of the voltage supervisor is a somewhat on the low side at about 3.08 V. The feedback resistor R4 adds the required hysteresis – the calculation details for determining the appropriate resistor values are documented in a Texas Instruments technical note. With the hysteresis, the voltage supervisor disables the regulator when the rail voltage (the voltage across the supercapacitor) falls to 3.4 V and enables the regulator when the supercapacitor voltage rises to 3.6 V. The hysteresis prevents the system endlessly cycling around the threshold voltage (i.e. the charging capacitor reaches the threshold voltage, the microcontroller starts up and transmits data over LoRa, which discharges the supercapacitor such that its voltage immediately falls below the threshold). The bypass capacitor C2 is critical to correct operation of the circuit, since the voltage supervisor periodically senses the voltage rail using short 200 µS samples that consume a current of approximately 15 µA, sufficient to cause a significant voltage drop across R1 in the absence of the bypass capacitor. The capacitor pairs C4,C5 and C6,C7 provide charge reservoirs to supply the excess current required by the fast transient that occurs when the LoRa radio transmits. R7 is a pullup resistor to ensure the enable pin of the regulator is kept HIGH when not being dragged LOW by the voltage supervisor.

Operation

In general, the prototype worked pretty well in an indoor environment with light levels typically in the range of 500-1000 lux (artificial lighting supplemented by some natural light through windows).  For a duty cycle of one transmission every 10 minutes, an average current draw of 115 µA was estimated – assuming a leakage current of 10 µA for the supercapacitor, which is probably a realistic figure. This current draw should be just about sustainable given the prevailing light levels and chosen solar panel. In practice some outages were observed particularly in winter when there was little daylight to supplement the artificial lighting, but the system would restart smoothly once ambient light levels recovered. With a lower duty cycle it is possible the system down time could be avoided altogether. However, it is clear the performance of this simple prototype was not as good as the more sophisticated Elsys system in very low light levels. It is worth noting that swapping out the organic light harvesting solar panel with a much cheaper conventional 0.5 W silicon panel of a similar size made little difference to the performance in a well lit indoor environment, at a considerable cost saving (~ £30 v £3), but would likely not perform as well in dimly lit conditions.





Possible Refinements

There are a number of refinements possible that could improve the performance further. The microcontroller and LoRa radio combined consume about 7 µA when sleeping, which is a satisfactory figure. However, in addition to this, the R1,R2 voltage divider continuously sinks more than 1 µA. And the pullup resistor (R7) will sink perhaps 3.5 µA when the regulator is disabled by the voltage supervisor. Whereas there maybe optimisations possible to the above, it is likely that the largest current drain is the supercapacitor leakage (estimated at 10 µA). One interesting optimisation that the Elsys system employs is a variable duty cycle depending on the supercapacitor state of charge (voltage). This could be implemented, but would require additional components. Another optimisation that would be interesting to explore is using a boost converter to harvest more energy from the solar panel - currently if the voltage across the supercapacitor exceeds that available from the solar panel, then no energy is harvested. However, such optimisations would add additional complexity and cost to the design.

</description>
        <pubDate>Wed, 08 Apr 2026 09:00:00 +0100</pubDate>
        <link>https://connected-environments.org/blog/2026-04-08-energy-harvesting/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2026-04-08-energy-harvesting/</guid>
        
        <category>making</category>
        
        <category>sensors</category>
        
        <category>solar</category>
        
        <category>connected-environments</category>
        
        
        <category>projects</category>
        
      </item>
    
      <item>
        <title>Wrapping Up Term 2 with Group Prototyping and Pitching</title>
        <description>Our last week of the Term 2 has started, and with it the 2025–26 cohort is getting ready to submit their final assessments. First in line is Group Prototyping and Pitch. Working in six groups, the students have been prototyping and developing their ideas in response to the brief Across the Miles.



They have been applying the technical skills learned in the Term 1, and extending them through lectures and workshops on group collaboration, prototyping techniques, PCB design, and including an insightful session from John Nussey (Onn Studio), and through video production support from our colleagues in BA Media (big thanks to Gyorgy Beck, Ardeshir Abdolrahimi and Robin Billingham).



It is been great to see how their ideas have evolved week after week. The way the cohort responded to the theme ranged widely: from connected butterflies that use proximity sensors to detect movement and express presence through kinetic motion, to a connected piano designed to help people feel, see, and learn music together. Other groups explored devices that connect people across the miles through mood‑sharing interactions, or reimagined traditional practices, such as the tea ceremony, to bring families and friends together in a shared moment of calm amid a busy day. We also saw projects engaging with sport and wellbeing, including a device that supports cyclists and allows them to connect in case of emergency, as well as a boxing‑inspired training system.





  
  Mood Link



  
  Tea for Three



  
  Butterfly Effect



  
  Tether



  
  Punch Reach



  
  MelodiUS



The individual dissertation projects are also beginning to take shape, and if you are interested in seeing the results, please save 16 July 2026 in your calendar for the opening exhibition at UCL Marshgate. Work from previous years can be viewed on our CE Digital Showroom exhibition website.


</description>
        <pubDate>Wed, 25 Mar 2026 08:00:00 +0000</pubDate>
        <link>https://connected-environments.org/blog/2026-03-25-teaching-gpp-showcase/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2026-03-25-teaching-gpp-showcase/</guid>
        
        <category>making</category>
        
        <category>student</category>
        
        <category>connected-environments</category>
        
        
        <category>teaching</category>
        
      </item>
    
      <item>
        <title>Aqua Clock: Multi-Model Vibe Coding, Boids, and the Fish That Tell the Time</title>
        <description>An Aquairum, published into the Apple Store, that tells the time was never the plan. The plan was to explore the use of the latest AI tools to develop agent based models with the aim to use those models to display data feeds. It turned into its own unique app where the fish (the aqents) gather every minute to tell the time - Aqua Clock.



Aqua Clock began as a loose experiment, in between writing a paper on the ‘Phygital City’. It aimed to explore how to build an agent-based simulation entirely through conversational AI — no design document, no formal spec, just an open-ended dialogue and a canvas to draw on? The fish came first as the boids algorithm is a natural first step. The idea of the clock came mid break from the paper and it was so nice, the release into the  The App Store came next.



Aqua Clock: where the fish tell the time Download on the App Store

What is Vibe Coding?

Vibe coding is now a common term, but the tools are moving rapidly and to keep on top of developments its good to take a fresh look at the workflows every could of months. Rather than writing code to meet a brief, its a processes of  iterating through ideas, accepting suggestions, discarding others, and allowing the final artefact to emerge from the generative process itself. Its like have a computer scientish on hand, where you discuss ideas and they go off and build things.

There is no requirements document, no architecture diagram drawn in advance, no sprint backlog. There is a conversation — often exploratory, sometimes surprising — between a human an AI system with broad technical knowledge. Its a new an emerging world of developing apps and in many ways it frees up creativity.

Its all about the Boids

The project started with a classic problem in computational simulation: how do you model the collective, emergent behaviour of a group of agents following simple local rules? Craig Reynolds’ boids algorithm, first published in 1987, remains the canonical answer. Three steering rules — separation (avoid crowding neighbours), alignment (steer toward the average heading of neighbours), and cohesion (steer toward the average position of neighbours) — produce uncannily lifelike flocking behaviour from agents with no global awareness of the group.



The original goal was modest: Claude (we used both Claude and Gemini during the developement) was prompted with an open-ended invitation: let’s build a fish tank with flocking fish. What followed was a series of exchanges in which the AI generated, explained, and iteratively refined a TypeScript/React simulation rendered on an HTML5 Canvas. Ghost shrimp, snails, a crab, bubbles, and drifting plants were added over successive sessions. The result was a convincing living aquarium — aesthetically pleasing, behaviourally rich, and computationally lightweight at under 11 MB. AI systems have ‘token’ limits on use and the development of the app took a series of back and forth flows between Gemini and Claude, which we detail in the next section.

At this point, the project had no clock, just a nice living aquarium where the plants grow over time and the fish school together, as planned.

The Creative Pivot: Fish as Time Display

The idea emerged, as many good ones do, from a tangential observation mid-session. The tetra fish — small, numerous, 28 in the final implementation — could in principle be choreographed to form recognisable shapes. Seven-segment displays, the kind used in digital clocks and calculators since the 1960s, are composed of straight line segments. Fish swimming in formation along those segments could render digits legibly. Regular readers of my site over at digitalurban.org will know i have a ‘thing’ about clocks, physcial and digital.

This is the core design insight of Aqua Clock: the fish are not decorative, they are functional. Every minute, the 28 tetra fish abandon their emergent flocking behaviour and are assigned target positions along the seven-segment outlines of four digits representing HH:MM. They swim to those positions, hold formation, then dissolve back into free flocking. The transition — fish departing their natural behaviour to form the time and then dispersing — is itself a kind of performance, observable in real time.

A double-tap gesture summons the time on demand, holding the formation for seven seconds before releasing the fish. Single-tap drops food pellets the fish chase and consume. Pinch and scroll adjust water brightness. An optional ambient underwater soundscape plays in the background.

None of these features were in a specification. Each one emerged from the conversation.

The living aquarium between time displays

A Dual-AI Workflow with GitHub at the Centre

One of the core aspects of this project was its use of two distinct AI systems in alternating roles, with GitHub as the shared substrate between them.



Claude handled the heavier architectural work — the initial boids implementation, the entity system (VectorFish, GhostShrimp, Snail, Crab, Bubble, Food), the canvas rendering pipeline, and the seven-segment clock logic. Claude’s strength in this context was its ability to hold a large codebase in working context and reason about the interactions between components.

Gemini AI Studio was brought in at points where a fresh perspective was useful — reviewing code for performance issues, suggesting interaction patterns, and providing an independent read on the user experience. Critically, Gemini operated from the code as it existed in GitHub at each handoff: the repository served as a shared ground truth that neither AI system owned, and that both could read.

GitHub, in this model, is not merely version control — it is the handoff protocol. Committing code to the repository creates a durable, readable artefact that can be passed to a different AI system without loss of context. Each commit is, in effect, a message in a conversation between two AI interlocutors mediated by a human developer who understands both.

This is a pattern worth naming: multi-model vibe coding, in which different LLMs contribute distinct perspectives to a shared codebase, with version control as the neutral interchange format.

Under the Hood

The final application is built on a deliberately lightweight stack:


  React + TypeScript for component architecture and state management
  Vite as the build tool, chosen for fast hot module replacement during iterative sessions
  HTML5 Canvas API for all rendering — no WebGL, no external graphics library
  Capacitor for iOS packaging — the web application wrapped in a native iOS container, no Swift written by hand


Battery efficiency was a deliberate concern. The animation loop uses requestAnimationFrame with frame-rate throttling, and its suspends entirely via the visibilitychange API when the app is backgrounded. The bubble simulation is capped at 150 active bubbles to prevent unbounded growth at high air pump settings.

The fish themselves are roughly 50 lines of simulation logic per entity per frame — position update, velocity update, boids force accumulation, wall steering, food steering, and clock-formation steering when active. The emergent complexity of the aquarium arises from the interaction of these simple rules across 28+ fish, not from any global choreography system.

Deployment: From Browser to App Store

Capacitor, developed by Ionic, bridges web applications to native mobile platforms. The build process was:


  npm run build — Vite compiles the React/TypeScript application to a static web bundle
  npx cap sync ios — Capacitor copies the bundle into an Xcode project scaffold
  Xcode — the compiled app is signed and submitted to Apple’s App Store Connect


The entire application logic — including all simulation code — runs in TypeScript inside a WKWebView on iOS. The app is 10.5 MB, requires iOS 15.0 or later, and is compatible with iPhone, iPad and Mac (Apple Silicon).

The absence of native Swift code in the application layer is itself a product of the vibe coding approach: when the AI generates web technology natively, and Capacitor wraps it for distribution, the boundary between “web app” and “native app” dissolves in ways that would have seemed implausible even a year ago. The development of an app to the store is so short that a rise in ‘app abandonment’ is probable, where its so easy to make an publish apps that ‘developers’ (maybe that term now needs a new name) rapidly move onto the next thing.

What Vibe Coding Reveals

Aqua Clock would not exist without vibe coding — not because the underlying techniques are beyond a skilled developer, but because no specification for it would ever have been written. The combination of a living aquarium with a fish-formation clock is an idea that emerges from the process of making, not from planning.

This is what vibe coding offers: a mode of creative-technical practice in which the act of building is also the act of discovery. The AI does not replace the developer; it accelerates iteration to a pace at which exploration becomes viable. Ideas that would require days to prototype can be tested in hours.

The dual-AI workflow introduces a further dimension: different models bring different tendencies. Using Claude and Gemini in alternating roles — with GitHub as the neutral handoff — introduces a productive form of creative friction, analogous to showing a half-finished painting to a different critic at each stage.

What remains irreducibly human in this process is aesthetic judgement: the decision that fish should form a clock, that the transition between modes should be visible and unhurried, that the aquarium should feel inhabited rather than mechanical. The AI provided the means; the human provided the meaning.

City Clock - The City where the People Tell the Time

Of course the majority of our work is concerned with cities and the concept extends in a City where the People Tell the Time - as such City Clock is under development (its almost complete) and will be incoming to the Apple Store soon…



Download it

Aqua Clock is free on the Apple App Store for iPhone, iPad, and Mac. An Android version is incoming, probably ‘developed’ during a break on a book chapter i need to complete next week…

Download on the App Store

</description>
        <pubDate>Fri, 20 Mar 2026 08:00:00 +0000</pubDate>
        <link>https://connected-environments.org/blog/2026-03-20-aqua-clock-vibe-coding-boids-fish-tell-time/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2026-03-20-aqua-clock-vibe-coding-boids-fish-tell-time/</guid>
        
        <category>ai</category>
        
        <category>vibe-coding</category>
        
        <category>boids</category>
        
        <category>clock</category>
        
        <category>ios</category>
        
        
        <category>making</category>
        
      </item>
    
      <item>
        <title>Two Fully-Funded PhD Opportunities</title>
        <description>Two Fully-Funded PhD Opportunities at UCL&apos;s CASA Connected Environments Lab

UCL is now accepting applications for the EPSRC Landscape Award (UELA) 2026/27, offering 50 fully-funded four-year PhD studentships starting 1 October 2026. Among the 100+ projects listed, two of them are based with us at Connected Environments Lab. 

 Project 1:  Overlayed Realities – Situated Visualisation and Analyses for Managing and Predicting Resilient Urban Systems
Supervisor: Dr Valerio Signorelli

Cities are increasingly layered with digital information, yet much of this data remains fragmented and difficult to interpret in context. This project explores how Human-AI collaboration can transform Extended Reality (XR) technologies from passive visualisation tools into platforms for analysing and interpreting urban systems.

The research aims to make urban data more legible, experiential, and actionable, supporting better decision-making in areas such as climate adaptation and urban resilience. Applicants will work across disciplines, architecture, computer science, urban studies, game design, geography, and develop immersive toolkits that turn complex datasets into situated narratives.

 Project 2:  The Invisible Cyclist – Mandating V2X Presence Messaging for Autonomous Urban Streets
Supervisor:  Prof Duncan Wilson

In partnership with The Bicycle Association of Great Britain

This high-impact project addresses a critical safety challenge: the inability of vehicles to detect cyclists when line-of-sight is obstructed. With autonomous vehicles on the rise, this research aims to ensure cyclists are no longer invisible to connected road systems.

You’ll engineer a low-power IoT transmitter for bicycles that guarantees sub-2-second V2X communication, and develop the policy and economic case to mandate V2X receivers in all new vehicles. This is a rare opportunity to combine technical innovation with transport policy to shape the future of safer urban mobility.

 UELA Studentship Highlights:

  50 fully-funded studentships (Home &amp;amp; International; max. 15 international places)
  Start date 01 October 2026 (flexibility possible for exceptional circumstances)
  Explore all 119 projects  here 
  Full studentship info &amp;amp; application guidance  here
  Application deadline: 05 January 2026 at 1pm


If you&apos;re interested in immersive technologies, urban systems, IoT, or shaping future mobility and resilience, these projects offer a unique opportunity to make a real-world impact.

Please share with anyone who might be interested!

</description>
        <pubDate>Mon, 27 Oct 2025 00:00:00 +0000</pubDate>
        <link>https://connected-environments.org/blog/2025-10-27-uela-phd-opportunity/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2025-10-27-uela-phd-opportunity/</guid>
        
        <category>connected-environments</category>
        
        <category>phd</category>
        
        
        <category>PhD</category>
        
      </item>
    
      <item>
        <title>Book: Cities in the Metaverse: Spatial Computing, Digital Twins, Avatars, Economics and Digital Habitation on the New Frontier</title>
        <description>Cities in the Metaverse: Spatial Computing, Digital Twins, Avatars, Economics and Digital Habitation on the New Frontier

We are pleased to announce the publication of our new book - Cities in the Metaverse: Spatial Computing, Digital Twins, Avatars, Economics and Digital Habitation on the New Frontier and we have 20% off using the code 25ESA4 via Routledge (it also available via all good bookshops/Amazon, etc), the book offers a comprehensive exploration of the intersection between urban environments and digital realms. 

The book examines:


  
    The size and shape of cities in the Metaverse
  
  
    Spatial computing and its impact on digital interaction
  
  
    Digital twins in urban planning and management
  
  
    Avatars and social dynamics in virtual spaces
  
  
    Economic models emerging in the Metaverse
  
  
    The influence of gaming on immersive digital landscapes
  
  
    The impact of Artificial Intelligence on the Metaverse
  
  
    Potential futures of digital habitation.
  


Drawing from architecture, computer science, urban planning, geography, social studies, and economics, the authors provide a multidisciplinary analysis of how virtual cities are shaping our digital future. Using key case studies, they trace the evolution from early cyberspace concepts to current spatial computing technologies, offering insights into both historical context and future possibilities. The book addresses key questions about the opportunities and challenges presented by metaverse technologies, including issues of accessibility, creativity, and the future of humans and artificial intelligence co-existing, side by side, in digital spaces. It serves as a practical guide, equipping readers with the knowledge they need to navigate the future of urban life in virtual environments with a thought-provoking examination of how we might build, inhabit, and govern cities in the Metaverse.

The authors explore the concept of digital twins, demonstrating how these virtual replicas of physical spaces can revolutionise urban planning and management. They delve into the social aspects of the metaverse, examining how avatars shape our interactions and relationships in digital realms. Economic considerations are central to the book ethos, with an analysis of emerging models that often leverage blockchain technologies. The book addresses the challenges, potential pitfalls and ethical considerations in creating and inhabiting digital cities. At the same time, it takes a step back and examines already abandoned digital worlds, offering lessons from past attempts at creating virtual spaces.

Essential reading for urban planners, geographers, economists, technologists, policymakers, and anyone interested in the future of cities and digital interaction, Cities in the Metaverse provides a balanced, informed perspective on this rapidly evolving field.

Authors

Andrew Hudson-Smith is a Professor of Digital Urban Systems at the Centre for Advanced Spatial Analysis (CASA), University College London. He focuses on real-time data, virtual environments and the Internet of Things within the urban environment. He is also an elected Fellow of the Royal Society of Arts, A Fellow of the Academy of Social Sciences and a Fellow of the Royal Geographic Society. Socials: @digitalurban

Duncan Wilson is a Professor of Connected Environments at the Centre for Advanced Spatial Analysis (CASA), University College London. His research focuses on how emerging technologies, such as connected sensors and cognitive computing, can augment our understanding of the built and natural environment. He has over 25 years of experience in industry and is a Fellow of the Royal Society of Arts. Socials: @djdunc

Valerio Signorelli is a Lecturer in Connected Environments at the Bartlett Centre for Advanced Spatial Analysis (CASA), University College London. He holds an MSc in Architecture and Urban Design and a PhD in Territorial Design and Government from the Department of Architecture and Urban Studies at the Politecnico di Milano (Italy). He is also a Fellow of the Royal Society of Arts. Socials: @ValeSignorelli
</description>
        <pubDate>Mon, 27 Oct 2025 00:00:00 +0000</pubDate>
        <link>https://connected-environments.org/blog/2025-10-27-citiesinthemetaverse/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2025-10-27-citiesinthemetaverse/</guid>
        
        <category>publication</category>
        
        <category>research</category>
        
        
        <category>books-and-papers</category>
        
      </item>
    
      <item>
        <title>Sense, Deploy, Communicate and Preserve</title>
        <description>Sense, Deploy, Communicate and Archive

Our annual exhibition of the MSc Connected Environments at UCL East took place from 17 July to 3 August 2025 at UCL Marshgate, showcasing the final projects of students graduating from the programme. The exhibition explored how digital technologies can be used to interpret and improve interactions with our built and natural environments. If you missed it, we have you covered.

Throughout the year, students worked in and around Queen Elizabeth Olympic Park and the UCL East Campus, using them as living lab for concept development and live deployment of sensing systems and digital platforms. The exhibition highlighted a wide range of responses to the challenge to sense, deploy, and communicate data from environmental sensing to data-driven approaches for shaping urban experiences.

At the close of each exhibition, two key questions arise:


  How can we ensure future students, and those who could not attend, can still experience and be inspired by the projects developed by the Connected Environments cohort?


  How do we address the issue of space, storage, and sustainability within the programme?



Both challenges are not unique to Connected Environments, they are shared by many academic programmes and also by the wider GLAM sector (Galleries, Libraries, Archives, and Museums). Across these fields, institutions are working to find better ways to preserve, digitise, and share the work they produce. This includes making sure digital content is easy to access, well-organised, and stored in ways that can last over time. A complex mix of issues, from digital literacy gaps and infrastructure limitations to the need for shared definitions and strategies for digital agenda, making digital preservation and reuse not just a technical issue but a strategic need.

Accessibility and preservation are just one part of the challenge. Space is always at a premium, and year after year, module by module, the physical devices of student projects fills the available space in our lab. This limits not only how long devices can be displayed, but also how visible and usable they remain over time. Most of the devices are built as prototypes, designed for short-term experimentation rather than long-term use. Unfortunately, this means that some of them eventually have to be let go, though not without careful thought around sustainability. In line with our ethos of reuse and recycle, many of the devices left behind are disassembled and repurposed for future use. This approach helps reduce waste and supports a culture of continuity, experimentation, and shared learning across current and future students.

For these reasons, we start to explore a practical solution to improve accessibility and support long-term archiving within the Connected Environments programme since 2023, a practice we hope can be expanded and shared with colleagues across other programme and institutions. We have continued to develop the Connected Environments Digital Showroom, now updated with the 2024-2025 cohort’s dissertations and final works.



This web-based platform serves as a growing memory of the programme and a resource for future students, researchers, and collaborators. Among the various techniques explored for capturing student-built devices, we adopted a method that balances speed, photographic quality, and low storage impact, essential for delivering results on the web and achieving the level of accessibility we aimed for. We built a custom web tool using open JavaScript frameworks (e.g. Three.js) and Gaussian Splatting, a technique for rendering 3D scenes from multi-view images. Using mobile apps like Scaniverse, we digitally captured the spatial and material qualities of each device with high fidelity, creating immersive records that can be accessed, revisited, and referenced by future cohorts.

We believe the Connected Environments Digital Showroom is more than a gallery, it is a living archive, a pedagogical tool, and a foundation for reflecting on sustainability, accessibility, and collaborative design. Please let us know what you think and any feedback on it.




The platform has been developed by Dr Valerio Signorelli. Special thanks to Prof Steven Gray for his contributions to scanning the last Connected Environments cohort and infrastructure hosting.



Explore the digital showroom: CE Digital Showroom



Learn more about the programme: MSc Connected Environments




</description>
        <pubDate>Thu, 02 Oct 2025 00:00:00 +0100</pubDate>
        <link>https://connected-environments.org/blog/2025-10-01-ce-digital-showcase/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2025-10-01-ce-digital-showcase/</guid>
        
        <category>3D</category>
        
        <category>data-vis</category>
        
        <category>engagement</category>
        
        <category>student</category>
        
        
        <category>making</category>
        
      </item>
    
      <item>
        <title>TIME: An Open Source 3D Printed Clock</title>
        <description>TIME

Every year the staff at the Connected Environments Lab do their best to find time to work on a side line project. As I teach the 3D Modelling part of the course using Fusion 360 (in Term 1), I thought it make a good summer challenge to design and build a 3D printed fully mechanical clock. It also makes a good series of files for the students to both examine and edit in Fusion as well as printing out themeselves and build.

The main inspiration comes from over the years following various clock makers online, looking at their designs, 3D printed models, and generally spending more time than I would like to admit trying to get a 3D printed clock running. Makers such as the excellent Brian Law (Wooden and 3D printed), Steve’s Clocks (great insights and designs), JBV (amazing, complex engineering) and Wooden Gear Clocks (a lovely site for premade clocks which come in kits but still need more skills then it turns out i have in basic cutting/sanding of brass rods) have all inspired me, but have also driven my need for a simpler, open source design which would be free and easier to build.

It has taken a year to perfect, mainly as a summer project last year and refining it this year to reach a point where other people could make it.

All 3D printed clocks are however never completely ‘easy’ to build, they all need a few extra parts, mainly in the need to reduce friction with metal rods, bearings, but we have limited the parts to the minimum, made sure they are all off shelf parts and have also reduced the need for any sanding/cutting/ beyond one small part. We have also provided all the files available on Printables, and incoming to Github, allowing others to refine and contribute new designs or updates. As time goes along, the clock will evolve - but for now it’s ready for its first release, and it’s called TIME.


We have tried and mainly failed with other designs online; as such, we wanted to build our own version, from first principles, not modifying others, but from the ground up, with the following aims:


  
    It should be as easy to build and replicate as possible
  
  
    Any additional parts should be easy to source and low-cost
  
  
    Cutting/Sanding should be limited
  
  
    It should have a proper 1-second tick/tock sound - this was important.
  


As such, the first thing to learn was how an Escapement Mechanism worked, how it contributes to the timing of a clock, the importance of the length of the pendulum and how it dictates the sound of the clock.

First Steps: The Escapement

While most people listen to music on their headphones on the way to work, last summer, I started listening to ChatGPT’s newly introduced voice mode to talk me through the history and detailed workings of a clock escapement mechanism. It allowed me to gain enough knowledge to start drawing my own deadbeat escapement.



A clock’s escapement is the heart of its mechanism, ingeniously translating the constant power from the gear train into the precise, rhythmic pulses that create the “tick-tock.” It performs two critical jobs: it allows the gears to “escape” forward one tooth at a time, regulating the speed of the hands, and it gives the pendulum a tiny push on each swing to overcome friction and keep it moving. The deadbeat escapement, perfected by George Graham around 1715, was a major leap in accuracy. Unlike earlier “recoil” escapements, where the escape wheel would kick backwards slightly after each tick, the deadbeat’s pallets are shaped so the teeth land “dead” with no recoil. This crucial improvement prevents the escapement from disturbing the pendulum’s natural, isochronous swing, making the clock significantly more accurate and establishing the design as the standard for precision regulator clocks. My 3D tool of choice to design mechanisms/enclosures for devices is Autodesk 360, as such, all I needed was a reference drawing and the thought that getting a working escapement would be a good first step. Over at Abbey Clock there is an excellent guide on Drawing Graham Pallets - which led to our own slightly modified design and our first working escapement.

The escapement mechanisim is powered by a weight and counterweight sytem with a 1 metre pendulum - this provided a way to perfect the initial ‘tick tock’ of the clock, designed to provide a steady beat every 0.5 seconds, allowing the escapment to move forward, once every seconds and more importantly, make a full rotation once a minute.

Gear Ratios: The Pomodoro Timer

The second step was to add an additional gear and gain an understanding of gear ratios. Gear ratios for a clock are all-important as they not only define the number of gears you need, but also define the relationship between them, turning the fast-paced energy of the escapement into the slow, readable passage of time.



At its core, a gear ratio translates speed and torque between rotating shafts. In our clock, we have a known starting speed: our escape wheel’s shaft rotates once every minute (60 seconds). To build a timer that rings a bell every 25 minutes, we needed to create a gear train that would complete one full rotation in that time.

The maths to figure out the required gear ratio is straightforward:


  
    Target Rotation Time: 25 minutes = 25×60=1500 seconds.
  
  
    Source Rotation Time (Escape Wheel Shaft): 60 seconds.
  
  
    Required Gear Ratio: Target Time​=601500​ or 25:1 - as we see later on, it is the ratio which is important, and arguably, easier to understand.
  


As you can see in our prototype, we achieved this with a compound gear train made of two identical stages, which makes the design elegant and easy to replicate. A compound gear it a cluster of two or more gears of different sizes that are fixed together on the same shaft, forcing them to rotate at the same speed. In short, instead of having one massive gear drive a tiny one to get a big gear ratio, a compound gear lets you achieve the same result in stages.

This setup is the key to creating a gear train that can achieve a large change in speed or in a compact space


  
    First Stage: The shaft from the escapement has an 8-tooth pinion that drives a 40-tooth gear. This gives a reduction of 840​=5:1.
  
  
    Second Stage: Mounted on the same shaft as the first 40-tooth gear, a second 8-tooth pinion drives the final 40-tooth gear. This provides another reduction of 840​=5:1.
  


The total reduction is the product of the individual stages: 5×5=25:1. This ratio perfectly transforms the 60-second rotation of the escapement shaft into the 25-minute rotation needed to trigger the bell. Or at least that’s how it should be in a perfect world. To be honest, I experimented a little, and my timings were a little out, coming in at approximately 20 minutes per bell ring, with the weight running the timer for an hour. The main point is that I had extended out from the escapement and used compound gears to start using ratios for timings. Of note, Chat GPT was useful in the wider understanding of the clock mechanism and theory, but it would frequently miscalculate gear trains and ratios, so the final design was done with old-fashioned logic.

TIME: 3D Printed Clock

The final clock is simply a case of building out the number of gears, using the same logic as the Pomodoro Timer. I had an escapement rotating once a minute, and I needed the main gear rotating once an hour, so I could attach an hour hand to it - that’s a ratio of 60:1



Following that logic and a ratio of 60:1 -

Escapement: The Minute Gear - The escape wheel has 30 teeth, with a 10-tooth pinion on its shaft, delivering a 1-second “tick-tock” rhythm. The escape wheel completes one full rotation every minute.


  
    Gear 1: 40-tooth wheel (driven by the 10-tooth pinion) and 20-tooth pinion.
  
  
    Gear 2: 60-tooth wheel (driven by the 20-tooth pinion) and 24-tooth pinion.
  
  
    Gear 3: The Hour Gear- a 120-tooth wheel (driven by the 24-tooth pinion), which completes one rotation per hour and connects to a drive gear (details on the drive gear to follow).
  




The gear ratios provide the necessary speed reduction to convert the escapement’s motion into hourly rotation. Starting from the escapement:


  
    The 10-tooth pinion drives the 40-tooth wheel of Gear 1, creating a 40:10 (or 4:1) reduction ratio—Gear 1 rotates at 1/4 the speed of the escape wheel.
  
  
    Gear 1’s 20-tooth pinion drives Gear 2’s 60-tooth wheel, a 60:20 (or 3:1) ratio—Gear 2 rotates at 1/3 the speed of Gear 1.
  
  
    Gear 2’s 24-tooth pinion drives Gear 3’s 120-tooth wheel, a 120:24 (or 5:1) ratio—Gear 3 rotates at 1/5 the speed of Gear 2.
  


It all suddenly seems complicated - but if you look at it more simply, the cumulative reduction ratio is 4 × 3 × 5 = 60:1. Since the escape wheel rotates once per minute, Gear 3 rotates once every 60 minutes—or exactly once per hour.

I could have chosen any ratio for the gears as long as it works out to 60:1.

With a main gear turning once an hour, upon which an hour hand can be attached, all that is now needed is a Drive Gear to power the clock and a small subset gear on which to put the minute hand.

The Drive

The drive gear serves a dual purpose as a catch mechanism, enabling the clock to be wound up while preventing unintended unwinding. This gear, connected to the drum, includes a ratchet and pawl system. When winding the clock, the ratchet allows the drum to rotate in the winding direction, lifting a weight of 2kg. The pawl engages the ratchet teeth, locking the drum in place to stop it from unwinding backwards once the winding is complete. This ensures the stored energy remains secure, releasing only through the controlled escapement and gear train during operation.

The Minute Hand

Finally, there is a separate gear chain for the minute hand, which fits behind the hour hand; this allows the traditional hour and minute hand configuration (the hour hand fits on a brass rod going through the hour gear, holding everything in place while also allowing it to freely move.

And that’s it! It seems simple when you break it down, although designing and building it from scratch took a little more time than I thought, and I lost count of the iterations it took to get here. The design will continue to be refined—perhaps with the addition of an hourly chime in the near future.



For now, we hope you will go away, download the files and print your own clock. Do let us know if you build one, over at Printables.
</description>
        <pubDate>Thu, 07 Aug 2025 00:00:00 +0100</pubDate>
        <link>https://connected-environments.org/blog/2025-08-07-3d-printed-clock/</link>
        <guid isPermaLink="true">https://connected-environments.org/blog/2025-08-07-3d-printed-clock/</guid>
        
        <category>3D</category>
        
        <category>making</category>
        
        
        <category>making</category>
        
      </item>
    
  </channel>
</rss>