← Back to Blog

How Battex Simplified Their BESS Infrastructure

How Battex Simplified Their BESS Infrastructure
July 9th 20264 min read

Battex is a Chilean company that develops industrial battery energy storage projects (BESS) and operates them intelligently with AI. Their software, Batt-AI, decides when to charge and discharge industrial batteries based on grid prices, demand forecasts, weather, and the health of the system itself. Their engineering team runs deep on regulation, ML forecasting, and market optimization, and their customers today include AMF Group, Pulmahue, Pudidi, and Synertec.

A Battex-branded BESS installation on-site in Chile

That's the part Battex wants to focus on. What they didn't want to be focused on was maintaining infrastructure.

The battery monitoring stack they were maintaining

Before Control Seat, Battex's battery monitoring stack looked like a lot of industrial SCADA setups do today, stitched together from more than half a dozen separate pieces:

  • Field. An edge device in the field talking to the batteries over an industrial protocol.
  • Edge. A local flow on the edge device publishing telemetry to an MQTT broker.
  • Broker. A self-hosted broker on a cloud VM, plus a managed broker they were evaluating on the side that was getting expensive.
  • Bridge. Another cloud VM running a bridge that subscribed to MQTT and wrote into a time-series database.
  • Historian. An external hosted time-series database.
  • Dashboards. A cloud dashboarding tool pointed at the historian.
  • Commands. A custom API service that pushed command messages back through the broker, which the edge flow subscribed to and executed on the battery.

Every piece worked. Together, they were exactly the kind of stack that a small engineering team ends up spending most of its time babysitting instead of building.

Alejandro Bañados, Battex's CTO, put it plainly in our first email:

My pains are that I don't want to maintain all the communication infrastructure. I'd rather be focused on designing the optimal instructions for each battery.

What Control Seat replaced

We started by connecting Control Seat to Battex's existing MQTT broker. Two days later we sent Alejandro a short video showing live values streaming into our platform from his batteries in Chile.

From there, each piece of the old stack got absorbed into the platform.

Broker. Control Seat includes a built-in MQTT broker, so Battex could drop the managed broker and the extra cloud VMs entirely. One less thing to run, one less bill to pay.

Bidirectional MQTT. MQTT reads and writes are first-class in the platform, so operators can send commands to the batteries directly from Control Seat. That replaced the custom API service Battex had been maintaining.

Historian. Battex kept their existing external historian and let Control Seat manage the schema for them, though our built-in historian is available whenever they want to consolidate onto one platform.

Interactive dashboards. Control Seat's dashboards are fully customizable with HTML, CSS, and JavaScript, and they're interactive: buttons and controls on the dashboard can write to tags to command field devices. Alejandro's take, after asking Claude to build a couple of them for him:

It feels way more flexible than what I was using before.

Operating a battery in Chile from Hawaii

Alejandro's take, after running the end-to-end demo on our platform:

So in the demo I showed that we can do everything we need inside one software.

A few days ago he sent us a video. He was on vacation in Hawaii, operating a battery in Chile from his laptop. The command traveled from Hawaii to a Control Seat MQTT broker in Virginia, out to the edge device in Chile, and back through the same pipe as telemetry. One platform, three continents, no bridge code, no external broker, no custom API.

A Battex control box next to the GREAT POWER battery cabinet at the deployment site

If you only existed a couple of months ago you would have saved me so much time I lost self-hosting my brokers and bridging the info between databases and dashboards.

What's next

The stack Battex runs today is Control Seat, the edge device, and the batteries. Going deeper is on our roadmap: Control Seat as the intelligence layer, then SCADA, then PLC development, then the controllers on the floor. One integrated stack, all the way down.

Battex is doing something similar on the storage side, unifying their software (Batt-AI) with their own hardware (BattCom) so the whole optimization loop lives in one place. Consolidating fragmented stacks is where a lot of the leverage in industrial automation software lives right now, and Battex is what that looks like in practice.

If you're running battery monitoring, industrial SCADA, or any industrial automation system and losing engineering hours to infrastructure that isn't your differentiator, we'd love to talk. Get in touch.

— Jack & Warren