Shop OBEX P1 Docs P2 Docs Learn Events
Been gone since 2018 — came back with a PLC runtime that runs on the P2 — Parallax Forums

Been gone since 2018 — came back with a PLC runtime that runs on the P2

fixmaxfixmax Posts: 93
edited 2026-04-04 20:07 in PASM2/Spin2 (P2)

Hey folks,
fixmax here.
Some of you may remember me — probably not — but I've been lurking around here since 2010, back when I was asking Parallax for more P2 YouTube videos before the chip even existed. 😄
Last post was 2018. Life happens.

Well, I've been heads down for the last several months on a project and I really think it's going to be a good thing — something I've been wanting for a long time. The P2 is a big part of what this will end up being — it became a very important part of what I built.
I should mention — I've been building this with Claude Code since November. 200k+ lines of Go in a few months. The AI age is real, folks.

That being said, I built a soft PLC runtime called GoPLC. It's a full IEC 61131-3 ST code runtime written in Go. Think CoDeSys but without the licensing headaches, running as a single binary under 60MB on basically anything. I've been messing with CoDeSys/Pi integrations with the Propeller for a LONG time — this is that idea, taken all the way.
I chose Go for a reason — single binary deployment, compiles in seconds, true concurrency built in from the ground up, and garbage collection that actually behaves. For a runtime that needs to be deterministic and deployable anywhere, it was the obvious choice for me.

The P2 HAL
The P2 HAL (hardware abstraction layer) uses a Firmata-style CMD byte architecture. You write Structured Text in GoPLC's web IDE and it drives P2 hardware directly — servos, OLEDs, sensors, whatever you've got.
I'm going to demo GoPLC on a little animatronic dachshund I built — 4 servos, OLED eyes with naturalistic blink patterns, all driven by ST code talking to a P2. Deterministic IO front end on the P2, full industrial PLC runtime behind it. Perfect storm and fun to play with. 😄

The Runtime

14 industrial protocols, 25 client/server implementations (Modbus TCP/RTU, EtherNet/IP, OPC UA, BACnet, DNP3, and more)
Native AI integration via MCP
Boss/minion clustering
Web IDE with Monaco editor
Single binary under 60MB — runs on Raspberry Pi up to enterprise hardware. My preferred is on Linux - but I've also run it a lot in Docker it runs great - especially with it built with the integrated Node Red

I just launched a crowdfunding campaign — officially starts Monday 4/6/26 but the prelaunch page is live now if you want to take a look.

Indiegogo link
https://indiegogo.com/en/projects/fixstuff555/goplc-the-plc-runtime-built-for-the-ai-age

GitHub Showcase
https://github.com/fixstuff/GOPLC-Showcase/tree/main

Happy to dig into the P2 HAL architecture, CMD byte design, or how ST maps to P2 hardware. Good to be back.

PS: I would love to buy some P2 FLIP modules — P2 Edge is good but bulky for me. 😄
fixmax (James Belcher)

Comments

  • fixmaxfixmax Posts: 93
    edited 2026-04-04 20:16

    PS: I also plan to support the P1 and even Stamps (I have to dig through some stuff to see if I have my old collection around) - I would use a $4 USB-C RP2040 as a bridge for this probably on the stamp for programming.

  • RossHRossH Posts: 5,734
    edited 2026-04-05 04:16

    @fixmax

    That being said, I built a soft PLC runtime called GoPLC. It's a full IEC 61131-3 ST code runtime written in Go. Think CoDeSys but without the licensing headaches, running as a single binary under 60MB on basically anything.

    A 60MB binary running on the Propeller2? How? Also, what is a P2 FLIP module?

    And you also want to support the Propeller 1? How?

    I guess I must be missing something here.

Sign In or Register to comment.