Wednesday, 21 October 2026

Finishing off the PCBA package and placing the order with JLCPCB

Well that's all done and dusted now, design-wise. 

Here's some detail:



Part of the costed BOM:


Placement review:
Assembly cost breakdown:


Where you could cut cost:

  • Extended-part fees ($15.45): the biggest lever. Each of the 5 Extended types costs $3.09. Only the 10 µF capacitor has a cheap Basic swap, and it's X5R, which your X7R rule excludes, so I've kept all five.
  • JLCONE desktop app: JLCPCB advertises $1–20 off per order through it.
  • Quantity: going above 5 boards adds mostly parts cost; the setup, stencil and part fees are one-off.

I've kept it as-is, although there's a $9 discount coupon that was applied before payment, taking it down to $81.70. That could have been $66 if I'd buggered about with the extended parts - but I have a life to live and can't be arsed to mess about any further.


So, despite having to eat, drink, bake (stollen), diagnose (oven), code (ESP32 oven monitor), watch telly, write blog notes, take a crap, drink loads of tea etc, I've gone from tasking Adom AI to placing an order for 5 assembled PCBAs in the space of one afternoon/ evening. 

Claude tells me that the breakdown of time looks like this:

We started at 15:43 UK time today (14:43 UTC, Wednesday 21 October), when you pasted the brief. It's now 21:42, so about 6 hours of elapsed time.

My own working time was about 3½ hours (206 minutes, by AI Flow's run ledger). The rest was gaps of 15 minutes or more, mostly while you were away or reviewing, which the ledger leaves out.

That figure is approximate in both directions:

  • Possible overcount: I didn't mark each of your follow-up messages in the ledger, and it shows a few open "follow-up" rows that may slightly overlap.
  • Undercount: this last stretch (the quote, the order and the coupons) came after its last entry, and isn't included.

Roughly where the time went:

PhaseApprox. time
Circuit design, sensor analysis, part selection with live LCSC stock, schematic rev A30 min
Your answers: ratiometric output, PhotoMOS, outline and fingers (revs B and C)25 min
Layout: placement, routing, ground plane, silkscreen, DRC1½ h
Simulation (found and fixed the difference-amp error), Fields current/thermal40 min
JLCPCB export, footprint fixes, quote and order set-up45 min

You'd have to say that's actually pretty impressive. Let's place the order once it's been reviewed (by someone at JLCPCB) and then see what turns up here - ETA around a week to my door. I can observe the progress as they pass through the manufacturing system, which is pretty impressive.

22:55 - order placed....

Remote oven temperature logger using ESP32 and Home Assistant using ESPHome

Yes, the oven seems to be playing up. Luckily it's just gone out of (5 year) warranty, so it's down to me to diagnose and fix it. It cost £400 5 years ago, so is close to worthless ie it would grieve my Scottish-bloodied Yorkshireness to pay for a Samsung "engineer" to come out a fix it, apart from being a writeoff from a financial point of view.

So although I've currently got a process (PID) controller and K type thermocouple monitoring the temperature, this only gives me live readings, by eye, when I'm in the kitchen. Obvs it would be more helpful to be able to monitor the temperature remotely and log it against time. So, a remote sensor connected to Home Assistant might sound like the right solution.

I've got a variety of ESP32 modules, mainly C3 and S3 flavours. These have USB-C for power and both wifi and Bluetooth, so I can simply(?) power them up and connect them into Home Assistant. Then I can create a record of the temperature against time.

I found a couple of ESP32-S3-Zero (thumbnail size), so I'll use one of them. To acquire the temperature, I can connect a MAX31856 breakout board ("shield"?) using SPI and 

MAX31855 (ADA269)MAX31856 (ADA3263)
Thermocouple typesK onlyK, J, N, R, S, T, E, B
Resolution0.25°C~0.008°C
Mains noise filterNoYes, selectable 50/60 Hz
ConfigurationNone, read-onlyThermocouple type, filter, fault thresholds
SPI wiring3 data wires (MISO, CLK, CS)4 data wires (adds MOSI)


I've got an clone of the Adafruit ADA3263 coming tomorrow, so let's get the ESP32 bit set up in anticipation.

There's a rather handy open source project that converts a YAML config into a compiled firmware and flashes it onto the ESP32 - ESPHome. There's also an integration for it in Home Assistant. Once you've flashed the ESP32, it shows up as "new device discovered" and you can then use it as a sensor in Home Assistant like any other HA sensor.

This is pretty tasty - no need to bugger about with Arduino IDE, Espressif-IDE or Visual Code Studio / Claude Code. It configures your YAML from dialog prompts (unless you are some sort of power user), then does the rest. You don't even need to edit the YAML code to show the SSID, password etc for your wifi network. Nice.

To customise the YAML for temperature logging, I got Claude to come up with the required added content:

esp32:
  board: esp32-s3-devkitc-1
  flash_size: 4MB
  framework:
    type: esp-idf

captive_portal:

spi:
  clk_pin: GPIO4
  miso_pin: GPIO5
  mosi_pin: GPIO6

sensor:
  - platform: max31856
    name: "Oven Temperature"
    cs_pin: GPIO7
    mains_filter: 50Hz
    update_interval: 10s

  - platform: wifi_signal
    name: "Oven Monitor WiFi Signal"
    update_interval: 60s

As ever, I had to keep the boot button pressed while plugging the EP32-S3 into the USB port for it to be recognised. Then it flashed ok and started running.


Unplugging it and powering it up from any USB-C supply gets it up and running, connected to HA over wifi. Of course, without the thermocouple board connected up, it reports a constant 0C.

In HA, I want a dashboard that shows the oven temp, so I went over to the embedded Claude agent within HA (ie living on the Raspberry Pi) and asked:

"i've just added oven-monitor. i want to use it to log oven temperature every minute and show the trend on a graph. range 20-250c, timescale - the last 20 mins. the thermocouple isn't connected yet but i will get it tomorrow. set this up so it's ready and working."

And here it is:


Looks good to me. I can mess with the axis limits later. 

Right, now wait for the board to arrive tomorrow. Then connect it up:

MAX31856S3-Zero
VIN3V3
GNDGND
SCKGPIO4
SDOGPIO5
SDIGPIO6
CSGPIO7

Avoid GPIO0 (boot button), GPIO21 (the onboard RGB LED) and GPIO19/20 (USB).

TIG torch PCBA kicked off in Adom AI....

Plenty of distractions at the moment - this year's Xmas cake, Xmas puddie and stollen weren't going to bake themselves. And the Samsung dual oven is now a month past its 5 year warranty, so losing control of the temperature was rather concerning and cost me my Xmas cake, so needed fixing. It appears to be an intermittent issue (it resolved itself before I could reach for the tools), so will need to be kept an eye on - or in my case a thermocouple and process controller (aka display).

With that now behind for the moment and without any more messing about, let's get started.

And we're off....


Let's see what he/she/it comes up with.

Various Claude questions:

I've built the edge fingers in KiCad on your DXF outline. Please check the drawing above before I start placement.

  • Drawing: C:\Users\murra\adom-lib\tig-psr\outline-fingers.png
  • KiCad preview board: ...\tig-psr\kicad\outline-preview.kicad_pcb

Fingers as built:

  • Count, pitch and width: 5 fingers at 2.0 mm pitch, 1.3 mm wide, leaving 0.7 mm gaps.
  • Length: 6.2 mm, from 0.3 mm in from the board edge to 0.5 mm short of the step out to the full 20.5 mm body.
  • Edge clearances: 0.3 mm to the mating edge (JLCPCB's copper-to-routed-edge minimum). The outer fingers sit 0.35 mm from the tab's sides.
  • Finish: HASL, solder mask open over the fingers, no solder paste.

Please confirm:

  1. Finger length: I assumed 6.2 mm, filling the tab, since you didn't give a length. Is that right?
  2. Sides: fingers on the top only? Copies on the bottom would contact either face of the socket, but they add bottom-side copper.
  3. Pin order: the question marks in the drawing are my provisional order, 1 = +5V through 5 = GND, counting from the top as you look at the component side. What order does the welder's socket use?
  4. Relay: TLP172A PhotoMOS (my recommendation), SIP-1A05 reed, or keep the HFD4/3? The board is small (772 mm²), so the 4 × 7 mm SMD PhotoMOS helps the fit a lot.
  5. PSR: where does the sensor's tail land, at what pin spacing, and on which edge? Its two crimped pins look like about 2.5 mm pitch.
  6. Corners: square as drawn, or rounded?
  • The TLP172A opto SSR sounds like a reasonable suggestion. I know from my measurements and partial reverse engineering that the current and voltage needed to control the welder are very low. It's not actuating a remote relay inside the machine - at least not on mine.
  • The PSR will be off-board, connected via 2 through holes, with pitch shown in the datasheet provided. I will incorporate it into the plastic  cover component. NB: Omit it from the sourcing BOM.
  • Rounded PCB corners would be fine.
  • NB: the fingers make contact on the "bottom" side of the PCBA but might as well use both sides.
  • HASL will be fine for the fingers. Proper gold plating is not needed and even ENIG (basically anti-tarnish, nothing more) is unnecessary and would cost extra.
I'm going to need a 3D model of the final PCBA so that I can create the cover that will close the torch handle when this is fitted. For this I'm going to have to recreate the current torch handle in Fusion. And while the near-clone I acquired from Ali Express is very similar, the 2 control assemblies are not quite interchangeable so I will have to fiddle about with the final design so that it is compatible with both handles. At least the PCBs are almost identical in outline ie interchangeable (that's A Good Thing).

Here's a first cut of the schematic:


Doesn't look too silly. As before, the "reference" voltage is taken from the supply, as there's no deadly accuracy required and ultimately it's a ratiometric controller - most are simply potentiometers. Lots of HF and low pass 
filtering, which is good. I expect the expensive compts will be the SSR and the quad opamp, possibly the mini pots.

  • The TLV9104 opamps are normally around £1 each, as these are low power, rail-to-rail devices. 
  • The TLP172A opto SSRs are also around £1 each
  • The Bourns pots are around £1.50 each
  • ...doubtless I've missed something really expensive?

Top side copper and courtyard:


Bottom side copper (no compts fitted there):


The silk screen is a mess but there hasn't been any attempt to clean it up yet


And the 3D PCB view (with the silk screen turned off!). The SSR doesn't yet have a 3D footprint, so is missing (top left):


It's coming along. Claude says:

The schematic, the PCB editor and the 3D viewer are all open in KiCad on your PC. The project is in C:\Users\murra\adom-lib\tig-psr\kicad\.

This is a work-in-progress layout and is not ready to fabricate yet:

  • Routing: every signal is connected and the board is clean against JLCPCB's 2-layer rules apart from silkscreen. KiCad's status bar shows 5 unrouted items, all ground. Bottom-side tracks split the GND plane into a few islands that the stitching vias don't yet join. Fixing that is next, by keeping more signals off the bottom layer.
  • Silkscreen: not done yet. The value text overlapping parts and the edge in the 2D view will be cleaned up to JLCPCB minimums, with reference designators only.
  • 3D: U2 (the TLP172A) shows no body because its footprint has no 3D model. I'll fix that.

Changes since rev C (I'll send you a revised schematic PDF with the layout):

  • 0402 passives: most resistors and small capacitors are now 0402, all JLCPCB Basic parts. 0603 didn't fit the 42 × 20.5 mm board, which held 53 of the 72 parts.
    • Values changed to match what's stocked: the difference amp is 22 k / 47 k with 220 nF (gain 2.14 and a 15 Hz pole, trimmed out by RV1), hysteresis is 22 k / 1 M, and the excitation divider is 47 k / 12 k.
  • Fingers: double-sided per your note, with each top/bottom pair joined by a plated hole at the inner end. The GND pour is kept off the finger tab.
  • Test pads: 10 dedicated 0.8 mm pads for GND, +5V, VREF, VM, PSR, V1, AMP_OUT, VTH, CMP_OUT and SSR_K. Every other net can be probed at an exposed top-side component pad, which your "bare track / test point" note allows.
  • Indicator LED: now driven from the comparator output through 470 Ω. That freed routing space next to the PhotoMOS.
  • Net names: DRAIN, GATE and VOUT_INT are now SSR_K, Q1_G and AMP_OUT. AI Flow's router treats nets named like MOSFET or power nets differently, and its saved plans had been dropping DRAIN and VOUT_INT.

The layout follows your concept: fingers on the left, the PhotoMOS by fingers 1–2, supply input by fingers 4–5, the op-amp in the middle, both trimmers and the PSR pads at the narrow end.


Next steps?

The next steps, in order:

  1. Ground plane. Fix the five unrouted GND items by keeping signals off the bottom layer, so the bottom stays an almost unbroken plane, which matters near the arc. Then 0 unrouted and a clean DRC against the JLCPCB rules.
  2. Layout review. Check the key loops by eye: the sensor input path to U1, op-amp decoupling, the supply filter at fingers 4–5, and keeping the enable traces and their filter away from the analogue nets.
  3. 3D models. Add the missing PhotoMOS (U2) body and check every part sits correctly in KiCad's 3D view.
  4. Silkscreen. Top side only, at JLCPCB's minimum text size: reference designators, trimmer labels (SENS / THRESH with a direction arrow), finger names, test-pad names, and a board title.
  5. Schematic and BOM refresh. A new schematic PDF with the 0402 values, a test-point map, and a BOM rechecked against live LCSC stock.
  6. Simulation. A quick SPICE check of the analogue chain on the final values: linearity, threshold, hysteresis, and the 4.5–5.5 V supply range.
  7. Manufacturing files.
    • Gerbers and drill files.
    • The JLCPCB BOM and pick-and-place file, with each part's rotation checked against JLCPCB's footprints. The PSR, edge fingers and test pads stay out of both files.
    • A final DRC on the exported set.
  8. Your review. You get the board in KiCad plus a summary before anything goes to JLCPCB. I'd also run their online DFM check and placement preview, but uploading and ordering need your JLCPCB login and your go-ahead.

I'll start on the ground plane now unless you want to change anything first.


And within 10 mins or so, those final actions have been completed, resulting in this update. Silk screen tidied up, SSR 3D model showing:


I've run out of tokens for now. It rests in 2 hours, so just time to eat....

Monday, 19 October 2026

Set up "Adom AI Flow - design TIG button circuit in Kicad from Hydrogen"

Yes, that's the correct terminology to describe what's being done here.

And the plan is to try it out for real using a real set of requirements for an actual circuit and real world PCB outline. First, define the requirements:

Create an opamp-based circuit to control a TIG welder from the hand held torch that does the following:

    • runs off 5V nominal single supply 4.5...5.5V.
    • double sided board. 1.6mm FR4
    • uses a pressure sensitive resistor (PSR) https://www.amazon.co.uk/sourcing-map-Pressure-Accuracy-Instruments/dp/B0FWCNF4G5?th=1 mounted on the torch handle to convert finger pressure to an output voltage and hence remote control of the amperage setting of a TIG welder by the operator.
    • the output voltage increases with pressure.
    • the output is a fairly linear function of the applied finger pressure.
    • finger pressure should be low enough to avoid fatigue after prolonged use but not overly sensitive
    • when the pressure exceeds a lower limit, a digital output is generated that can be used to enable a TIG welder. This should be a relay, to provide low voltage isolation from the analogue signal, to help avoid emc issues between them
    • the output sensitivity (volts per N of force) can be adjusted with a potentiometer.
    • the threshold for the relay should also be adjustable with a pot as a % of the full scale that results from the sensitivity setting
    • I will provide a DXF of the PCB outline and define the required position and dimensions of the edge connector fingers and any critical components , such as the PSR itself
    • create a design in Kicad that is suitable for production at JLCPCB and LCSC, checking real-time availability of stock and ensuring low pricing while making compt selections
    • run their DFM design rules to check for layout issues
    • place all components on top side of the PCB
    • place component silk screen ident on top side only
    • provide test points on top side for each net
    • select industrial or better temp range compts (0...85C)
    • no tantalum caps or poor dielectrics such as Z5U - only X7R, COG, NPO etc
    • take care to include HF noise filtering, particularly on external connections, as this is working close to an electric arc
    • use copper fill to provide a solid ground plane to assist with HF noise withstand
    • allow me to review the proposed schematic before proceeding to layout.
    • before commencing with the layout, confer with me to ensure the PCB outline and the copper fingers for the edge connections are correct. I have a DXF, some basic dimensions for the pads (pitch, width, length etc) and also a photo of the example that we can work from.
I have already created the board outline in Fusion. I need to define the shape and position of the edge connector fingers and also the position of the PSR itself.







That edge connector has a 2mm pitch for the pads and they extend about 7mm into the board, although 5mm would be adequate. My example has pads on both sides but they are only needed on the top side. The other torch body I got from AliExpress has a single sided board. Although the plastic mouldings are slightly different ie incompatible without modification, the PCBAs appear to be interchangeable, so my board should hopefully fit other torches - including the Startech design that I suspect they are "based on".


So next, time to update the Fusion model for the PCB to show the pads' position, then task up Adom Flow AI(!!) with creating a complete PCBA.

It will be interesting to see what circuit it comes up with. I already have one from a few weeks ago that was created in Kicad and imported into EasyEDA I wonder how that will compare.....

Try again with Adom Hydrogen - and Kicad. Success!

Coming back for more?

Yes, sucker for punishment. After that complete fiasco trying to run Adom's Hydrogen AI tool with Fusion Electronics, I'll have another go at reproducing John Lauer's demo board - but this time in Kicad.

I've already got the Hydrogen GUI / Bridge installed on my machine, along with the integrated Claude Code / Visual Studio Code function. So it's relatively simple to get it to do an automated, hands free installation of Kicad on my machine and set it up to design a circuit and PCBA. 

Again, in my case I want it to use the JLCPCB / LCSC database of compts, so that it only selects compts that are available through my preferred CEM that would be tasked with manufacturing and assembling the PCBA (JLCPCB in China). For now though, I'll stop before the ordering stage (it's only a proof of function test) but I want to see all the different stages being completed successfully.

My starting prompts were:

  • set up the KiCad and JLCPCB route on my PC
  • replicate the example used by John Lauer - a 12V / 5v buck converter

That's all I gave it, although clearly that original demo came with its own set of parameters and conditions. I'm not bothered to know what those were at this stage - I want to see if it actually completes the process and if so, does it resemble his example and does it look fit for purpose. Then I may get it to develop a schematic and PCB layout for my TIG button circuit, possibly even taking it through production of a small number of boards at LCSC for actual use here.

Terminology:

For reference:

The design tool is Adom AI Flow. Adom and Hydrogen are the levels around it:

  • Adom is the company and the overall platform. Everything carries its name: the wiki (wiki.adom.inc), Adom Bridge, Adom Fields.
  • Hydrogen, or "Adom Hydrogen", is the desktop app on your PC: the window with the chat on the left and dashboards such as the AI Flow timeline on the right. It's the workspace, not the design tool.
  • Adom AI Flow (the adom-aiflow command) is what ran the design. It takes the board from the prompt through parts, schematic, simulation, placement, routing, pours, current and heat checks, silkscreen and fab files, and it produced the timeline and the run video.
  • KiCad (or Fusion, in John's second build) is the actual circuit-board editor AI Flow drives, through Adom Bridge. Adom Fields did the current and heat solve.

So for this board you'd say "it was designed with Adom AI Flow in KiCad, run from Hydrogen". There.

And off it went....

No intervention required from me, no crashes, all my monitors etc remained fully functional throughout, other apps continued to work OK etc while it worked in the background.

You can see the steps in the design process here, part way through. Again, I've not looked at what these steps entail in any detail but they appear to be reasonably convincing:


Having the Kicad window open allowed me to see the process evolving - schematic, layout, simulation, verification etc.

I kicked it off at 2:35pm here and it was all done and dusted by 4:54pm ie 2 hours and 20 mins.

It created an AI-generated video of the process that I've uploaded to my channel here:


What's the final result?

Here's the layout in 2D with all layers visible:


Top side copper:


Bottom side copper:


The silk screen ident is a bit of a mess, with text on top of pads, so it's not clear at this stage how it passed the JLCPCB DFM rule check. I was actually going to take this further, I'd kick somebody's ass and get them to fix that. But more on this shortly....

And then to the really horny bit - the 3D view. 


And flipped over to see the bottom side:


...at which point you realise that half the silk screen characters are on the wrong side of the board, hence there's no text actually placed on the copper pads. Not a lot of use for fault finding or manual placement but at least you can now understand why it passed the DFM check.

How does it compare with John's original design?

Here are John's (top) and mine (bottom):



Beyond the appearances, we have some other differences - and a lot of similarities. 

Here's Claude's comparison of the two designs. Note - the table headings are shifted to the left for some reason only known to Blogger:

John, FusionYours, KiCad + JLCPCB
Fab targetHis "3rd party fab" rules (0.5 mm-class text)JLCPCB 2-layer rules (0.8 mm minimum text)
PartsOriginal parts, including the Abracon AMPLH5030S inductorJLCPCB/LCSC parts, including the YOUCHI HCMA-0530 inductor; 9 swaps checked against both datasheets
PlacementHis KiCad placementThe same placement, with J7, TP7, TP10 and R7 nudged to pass the newer checks
Heatsink vias at U16 (after one rework)3, plus 2 more at its GND pin; this routing's switch-node trace takes the rest of that pocket
Peak current density53 A/mm²40 A/mm²
Hottest rise, still airU1 +49 °C; page summary says 57 °C against a 55 °C budgetU1 +10 °C and L1 +46 °C by AI Flow's estimate (Fields solve peak +46 °C), all under 55 °C
SilkscreenFramed tags on every contact and corner pin, values beside every reference, identity on the bottomNo frames; nets and references at 0.8 mm, most values left off, small parts' references on the bottom
Time, prompt to finish2 h 42 minAbout 1 h 51 min of AI time

His heat figure and mine aren't strictly comparable. His Fusion solve also counted heat through the vias and uses Fusion's copper, and the two boards use different inductors.

The most visible difference is the silkscreen. His Fusion board has framed contact tags and a value on every part; yours is plainer because JLCPCB's 0.8 mm minimum doesn't leave room for that on a 28 × 20 mm board.

Conclusion:

It's a bit premature to give out gold stars but at first sight the result looks almost plausible. The tracking looks OK from a distance. 

As a proof of function, this is a lot more convincing that yesterday's carry on. I've not used Kicad before and perhaps I don't need to learn how to use it. Although I've done a lot of layouts with Mentor, Altium and EasyEDA (JLCPCB's free tool) in the past, each CAD system takes some learning and Kicad is no toy.

So I may need to try it out for real on my TIG button. Previously, I'd used Claude to design the circuit and do Spice simulations and I was expecting to use the autorouting feature within EasyEDA rather than manually route the board myself. Autorouters tend to be best used for digital buses etc rather than analogue and power electronics circuits but this is a simple, small circuit so what could possibly go wrong?

Install Adom - AI PCB designer - Fusion Electronics POS...

Let's try out Adom's AI electronics design tool. On the face of it, you can get it to design a complete PCBA from a fairly broad specification and submit it to your favourite CEM's portal, then receive it through the post a week or so later.


The demo project is a buck converter, built using Fusion Electronics (was Eagle before it was acquired by Autodesk). Reviews are "mixed", so although I've never used it myself, I'm a bit uncertain what I'll find.

The Adom Hydrogen installation walk-through is here 

This product actually runs natively in Linux, so the installation creates a Linux-within-Windows environment called WSL2 ("Windows Subsystem for Linux").


You then connect up your preferred AI agent - in my case this is Claude Code, for which I have a subscription.

And here it is - recognisably Claude Code running in a VSC panel:


Click the logo top left and select Setup Steps under the Admin subsection title. This confirms it's finished:


Select the Fusion bridge (tab on right side of panel).

Intro demo.... ooof!

But - it needs permissions. Is this why it froze?

I have a mid range PC (Ryzen 5600, 32GB RAM, integrated graphics with initially 0.5GB, then increased to 4GB video RAM, 6 cores, 12 threads, 250GB SSD). 2 of the 3 monitors are driven by a USB-C dock (with Displayport drivers). But it didn't like the extra monitors and dock and I wasted several hours trying to stop the graphics freezing up and Fusion not displaying anything of any obvious relevance.

Conclusions:

I used the same prompts given in the demo and after some further messing about, it went off and pretty much recreated the example board (a simple 12V > 5V buck regulator on a double sided board). However, I was unable to manipulate the 3D assembly and Claude had to spend a fair while buggering about trying to figure out why. No matter what I did, with restating Fusion, opening just the 3D PCB assembly etc I couldn't get the thing to pan, tilt, zoom etc. What a pile of crap Fusion Electronics is.

And along the way I had to mess about endlessly with crashed / frozen graphics, messing with display settings etc all to no avail. To be fair to Adom, the problems were almost certainly due to the Fusion Electronics element – the graphics issues persisted after disabling the Adom add-on and running on a single monitor. 

I’ve never used Eagle/Fusion, partly due to the scathing reviews. Apparently Kicad is more robust and is also supported by the Hydrogen bridge, so I will put this ridiculous Fusion Electronics fiasco behind me, several hours of my life I will never get back etc etc.

What next?

I’ll get Claude to install Kicad on my machine, along with the Adom app adom-jlcpcb that checks live stock levels at JLCPCB’s manufacturing partner (LCSC), so I know the parts they choose will be available: I want to be able to simply order the assembled PCBA. Then I’ll try again….

Background:

This whole product  seems to be a example of how all this AI technology could be used. As Claude responded:

The rapid-fire development speed you are seeing is because John Lauer has turned AI agents on his own codebase. He is essentially using the exact technology Adom is building for hardware engineering to build the software itself. Adom’s internal toolchain explicitly relies on a network of coordinated autonomous agents—like Claude Code, Codex, Kimi, and Antigravity—wired directly into their development environment, VS Code extensions, and terminal systems. How this AI-driven development pipeline works under the hood includes:

  • Autonomous Coding & System Tweak: The agents aren't just giving autocomplete suggestions. They have permissions to actively open files, install extensions, execute workspace commands, run build scripts, and live-test the UI.
  • The "One Human, Many Agents" Setup: Lauer acts more like an orchestrator or a "central broker" directing a swarm of AI threads. While his name is stamped on hundreds of recent commits and package updates across Adom's repositories, AI agents are writing vast swathes of the actual code under his direction. [1, 2, 3]
  • AI Flow Tools: Adom even built a dedicated utility called adom-aiflow strictly to optimize how their custom AI agents navigate and build their software packages. 

It's a meta way to build a company: he is using a swarm of AI software agents to accelerate the development of an AI workbench (Hydrogen), which will eventually dictate how robotic workcells build physical hardware. He is practicing exactly what he preaches regarding "Shenzhen speed in the cloud".

If the CEO John Lauer’s name is vaguely familiar, it may be due to his previous work developing Chillipeppr which is a browser based g-code sender http://chilipeppr.com/tinyg And as Claude reported the myriad bugs to Adom’s swarm, updates were also being generated. I’m more used to software engineers working 9-5 (or possibly 10-6), whereas these agents are at it 24-7.

So, let's try again, this time with Kicad instead of Fusion and see if there's a cigar....

Sunday, 11 October 2026

Setting up Home Assistant on the RPi5

Home Assitant installation:

Here's the RPi5 with the Compact M.2 hat alongside it. This "hat" is designed to fit inside that official RPi5 case without modification.


This is it all installed and ready to go. That M.2 SSD is a "2230" size ie 30mm length (many are 80mm), so that it fits in the case. The capacity is "only" 256GB, which is more than adequate for Home Assistant.


I used the Raspberry Pi Imager tool to load the correct image for Home Assistant 18.3 and after a bit of inevitable buggerage it installed and is up and running. But now what? I need to install some devices etc for it to monitor and possibly even control....

EMS gateway installation:

This gateway ECU connects to the Worcester Bosch boiler control board and the Home Assistant (RPi), translating the messages from their proprietary format to something HA can understand and vice versa.

As mentioned previously, I ordered this BBQKees ECU a week ago and it arrived (from Holland) soon enough. 

As for installation, it has Wifi, so I don't need to run a network cable to it from the RPi, which is situated under the stairs next to the main modem/router/mesh stuff. But it needs its own PSU (supplied) and has to wire into the WB controller.


The PSU is routed in through the side of the cabinet.


There's limited space (depth) behind the pull-down panel on the front of the boiler, so I've removed this dummy panel to gain a few more mm of depth. This must have been provided for an optional programming unit or somesuch.


The 2-wire serial bus connects to the 2 wires at the bottom of that green 7-way connector block. There's already some twin-and-earth cable that an unknown cowboy (not me for a change) has used to wire the original wall-mounted thermostat to the boiler.


Done - and the orange connector is where it plugs into the gateway. I've actually mounted the ECU with its back facing outwards in the hope it will be slightly better ventilated, having noticed the cooling slots.


There - you can't see the vandalism unless you open that cover panel.


Zigbee gateway:

In order to control the radiator TRVs, I need a Zigbee interface and aerial. This looks like some form of witchcraft - or possibly a form of bedroom aid. It glows blue when you plug it in (fnaaaar) but once it's installed (it was seamless), it has no light.


This is the original WB "Easycontrol" CT200 thermostat. It has wifi and talks to the external WB website to acquire stuff like the time and local weather. Now that I've also wired the gateway into the boiler, it's about to find that it has been elbowed aside by the Home Assistant.


I've chosen the Sonoff TRVs. These are the Gen 2 version. They communicate with the Home Assistant using that Zigbee aerial. The power is provided by 3 AAA batteries (provided) that are said to last about a year in typical operation.

Here's the TRV I fitted to the dining room radiator. It comes with a variety of adaptors to suit most of the common TRV bodies. This one was a Danfoss "TV" model before I replaced the mechanical (wax) head.


Setup was quite simple if you had read the included instructions (ahem). You connect up the batteries (by pulling out a slip of plastic), then turn the set temperature down until it reads OFF. It then searches for Zigbee contacts. Similarly, in HA, you open the Zigbee card in the settings area and it finds and sets up any new devices it finds.

So now that I have (initially) got the boiler, thermostat, Zigbee aerial and 2 TRVs connected up, I have the basis of a home automation system.

Next I may need to make them do something vaguely useful:
  • Set up the TRVS and room thermostat to regulate their local temperatures.
  • Bugger about with the boiler settings eg mess with set temperatures, max power levels etc.
  • Create some dashboards to show metrics such as water and gas used, boiler duty cycles etc.
  • Allow thermostats to be set from the dashboard (for the TRVs and the CT200)
  • Install the TV remote control so I can control the LG smart TV (only because I can).
  • Install Music Assistant so I can use a music streamer box to stream music from my NAS, Google Music and internet radio to the workshop audio system.
  • Set up some schedules for the thermostats eg turn the heating in the office and kitchen off (or down) during the night and the bedroom heating on (or up) at night.
  • ...and so on.

Finishing off the PCBA package and placing the order with JLCPCB

Well that's all done and dusted now, design-wise.  Here's some detail: Part of the costed BOM: Placement review: Assembly cost break...