---
title: "NeuroFab Z1 Neuromorphic Cluster Management System"
url: "https://maker.wiznet.io/josephsr/projects/neurofab-z1-neuromorphic-cluster-management-system/"
markdown_url: "https://maker.wiznet.io/josephsr/projects/neurofab-z1-neuromorphic-cluster-management-system/md"
type: "UCC: User Created Content"
author: "ahtx"
author_url: "https://github.com/ahtx/neurofab-z1-cluster"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "ahtx"
original_url: "https://github.com/ahtx/neurofab-z1-cluster"
published: "2025-11-19"
language: "en"
hardware: ["Raspberry Pi RP2350", "WIZnet W5500", "SOLOMON SYSTECH SSD1306 OLED Display", "AP Memory Technology APS6406L QSPI PSRAM"]
likes: 0
views: 571
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# NeuroFab Z1 Neuromorphic Cluster Management System

> A production-ready embedded cluster framework for spiking neural networks built around the NeuroFab Z1 platform.

Original author: ahtx (source: https://github.com/ahtx/neurofab-z1-cluster)

## Components

- **Raspberry Pi RP2350** x 1
- **WIZnet W5500** x 1 ([docs](https://docs.wiznet.io/Product/Chip/Ethernet/W5500))
- **SOLOMON SYSTECH SSD1306 OLED Display** x 1
- **AP Memory Technology APS6406L QSPI PSRAM** x 1
- Software: **Python** ([docs](https://docs.python.org/3/))

WIZnet parts: W5500 ([Datasheet](https://docs.wiznet.io/Product/Chip/Ethernet/W5500/datasheet?utm_source=maker&utm_medium=project&utm_campaign=w5500), [product hub](https://maker.wiznet.io/products/w5500/))

## Documents and links

- [neurofab-z1-cluster](https://github.com/ahtx/neurofab-z1-cluster) (code)

## Article

[PROJECT OVERVIEW]

![](https://maker.wiznet.io/upload/ckeditor5/1039089334%5F1763739585%2Epng)

The creator built a distributed spiking neural network (SNN) cluster named NeuroFab Z1, composed of RP2350B-based controller and compute nodes.
The controller node integrates W5500 Ethernet, an SSD1306 status OLED, and 8 MB of PSRAM to manage the cluster and expose a RESTful HTTP API.
Each compute node runs firmware that executes LIF (Leaky Integrate-and-Fire) neurons with STDP learning, using PSRAM as the backing store.
Nodes communicate over a 16-bit parallel “matrix bus” with collision detection, multi-frame transfer, and a dedicated command/data protocol.
The structure is meaningful because it shows a fully worked-out path from hardware topology to firmware, API, and CLI-level tooling for a neuromorphic cluster.

[KEY FEATURES (as implemented by the creator)]

- Production-ready RP2350B controller firmware with W5500-based HTTP server and OLED status display

- RP2350B compute node firmware implementing LIF neurons, STDP learning, and PSRAM-backed neuron tables

- 16-bit matrix bus for inter-node spike routing with collision avoidance and multi-frame payload support

- Unix-style Python CLI suite (nls, nping, ncat, ncp, nstat, nconfig, nsnn, etc.) for managing and observing the cluster

[TECHNICAL COMPOSITION]

Languages / Software Used

- Embedded C for controller and node firmware UF2 images

- Python 3 for CLI tooling and HTTP API interaction

- Standard HTTP/REST over Ethernet for management and monitoring

Hardware / Boards / Modules

- RP2350B-based boards (controller and compute nodes) with GPIO-strapped node IDs

- W5500 Ethernet controller for the controller node

- APS6404L 8 MB QSPI PSRAM on controller and compute nodes

- SSD1306 128x64 I2C OLED display (controller status)

- Parallel 16-bit matrix bus between nodes (GPIO0–15) plus dedicated node ID and LED pins

External Libraries & SDKs

- Raspberry Pi RP2 / Pico-class SDK toolchain (implied by UF2 flashing and RP2350 workflow)

- Python packages: requests, numpy (as listed in the README for tools)

Structure Overview (text diagram)

Controller Node
→ W5500 Ethernet (HTTP REST API, 21 endpoints)
→ SSD1306 OLED status display
→ Matrix bus master (16-bit GPIO)
→ PSRAM-backed cluster metadata and routing state

Compute Nodes (multiple)
→ RP2350B MCU
→ PSRAM storing neuron tables
→ SNN engine (LIF + STDP)
→ Matrix bus slave interface

Host / Operator
→ Python CLI tools using HTTP API
→ Shell-style commands for listing, pinging, deploying, and monitoring nodes

Technical Observations

- The project cleanly splits concerns: controller networking, SNN execution, and inter-node bus are distinct firmware responsibilities.

- The HTTP API is relatively large for an embedded controller (21 endpoints), which is unusual but powerful in this class of hardware.

- PSRAM is used as a capacity multiplier for neuron tables, combined with an LRU cache on-chip, showing careful memory hierarchy design.

- The use of Unix-like CLI tool names and behavior increases operator familiarity and keeps the cluster feel “server-like” despite MCU constraints.

[INDUSTRIAL & PRACTICAL RELEVANCE]

This type of cluster is relevant to low-power, edge-deployed neuromorphic systems where GPUs or large SoCs are impractical.
It maps well to embedded robotics, sensor fusion, and event-based processing where SNNs can exploit temporal sparsity.
The distributed design is also a strong teaching and prototyping platform for hardware engineers looking to scale beyond a single MCU.
Because the controller exposes a REST API, integration into existing monitoring stacks, lab infrastructure, or test harnesses is straightforward.
The structure mirrors industrial SCADA-style patterns while targeting neuromorphic workloads instead of classical control loops.

[NOVELTY IN THIS PROJECT]

The project’s novelty lies in its combination of:

- A fully defined neuromorphic cluster architecture on commodity RP2350B hardware

- PSRAM-backed neuron storage with LRU caching across multiple nodes

- A surprisingly rich HTTP control plane plus Unix-style CLI interface for an MCU-based SNN system

- A production-ready flavor, with explicit QA verification, release binaries, and a clear network configuration model

[ORIGINAL CREATOR PROFILE]

Name / Handle: AH ATX (GitHub: ahtx)
Background: Appears to be a developer with experience in embedded C, Python tooling, and general application development.
Interests: Neuromorphic computing, embedded systems, search tools, and AI-related projects (based on other public repositories).
Notable previous works: AHDiskSearch (desktop search with content awareness) and various language experiments (C#, JavaScript, Python).

[LINKS]

- Project / Repository: [https://github.com/ahtx/neurofab-z1-cluster](https://github.com/ahtx/neurofab-z1-cluster?utm_source=chatgpt.com)

- RP2350 MCU overview: [https://www.raspberrypi.com/products/rp2350/](https://www.raspberrypi.com/products/rp2350/?utm_source=chatgpt.com)

- W5500-EVB-Pico2 board: [https://docs.wiznet.io/Product/Chip/Ethernet/W5500/w5500-evb-pico2](https://docs.wiznet.io/Product/Chip/Ethernet/W5500/w5500-evb-pico2?utm_source=chatgpt.com)

- APS6404L PSRAM (vendor info): <https://www.apmemory.com/>

- SSD1306 display info: [https://www.datasheethub.com/ssd1306-128x64-mono-0-96-inch-i2c-oled-display/](https://www.datasheethub.com/ssd1306-128x64-mono-0-96-inch-i2c-oled-display/?utm_source=chatgpt.com)

---

[PROJECT OVERVIEW]

NeuroFab Z1은 RP2350B 기반 컨트롤러·컴퓨트 노드들로 구성된 분산 뉴로모픽 클러스터로,
MCU 환경에서 스파이킹 뉴런(SNN)을 다중 노드로 실행하도록 설계된 고급 임베디드 시스템이다.

뉴로모픽 컴퓨팅은 **뇌의 뉴런 작동 원리를 전자 방식으로 모방한 계산 방식**이다.
특징은 다음과 같다:

**스파이크 기반 처리(SNN)**: 신호가 지속적으로 흐르지 않고, 사건이 일어날 때만 발화

**초저전력**: GPU 대비 매우 낮은 전력 소비

**시간 정보 활용**: 이벤트·로봇·센서·신호처리에 최적

**엣지 환경에 적합**: MCU에서도 충분히 동작 가능

즉,
“신경망을 MCU에서 돌리는 방식”이 아니라
“신경세포의 시간적 발화 패턴을 모방한 새로운 컴퓨팅 패러다임”이다.

컨트롤러는 W5500 이더넷, SSD1306 OLED, 8 MB PSRAM을 사용하여 클러스터를 관리하고 RESTful HTTP API를 노출한다.
각 컴퓨트 노드는 LIF 뉴런과 STDP 학습을 수행하는 펌웨어를 실행하며, 뉴런 테이블은 외부 PSRAM에 저장된다.
노드 간 통신은 16비트 병렬 “매트릭스 버스”를 통해 이루어지며, 충돌 감지와 다중 프레임 프로토콜을 포함한다.
이 구조는 하드웨어 토폴로지부터 펌웨어, API, CLI까지 역할이 명확히 나뉘어 있어 임베디드 분산 시스템 설계에 좋은 참고가 된다.

[KEY FEATURES (as implemented by the creator)]

- RP2350B 컨트롤러 펌웨어: W5500 기반 HTTP 서버, OLED 상태 표시, 매트릭스 버스 마스터

- RP2350B 컴퓨트 노드 펌웨어: LIF 뉴런, STDP 학습, PSRAM 기반 뉴런 테이블, LRU 캐시

- 16비트 매트릭스 버스: 명령/데이터 프로토콜, 충돌 회피, 대용량 데이터 다중 프레임 전송

- 유닉스 스타일 Python CLI 도구군: nls, nping, ncat, ncp, nstat, nconfig, nsnn 등

[TECHNICAL COMPOSITION]

Languages / Software Used

- 임베디드 C (컨트롤러·노드용 UF2 펌웨어)

- Python 3 (HTTP API 및 클러스터 관리 CLI)

- 이더넷 기반 HTTP/REST 통신

Hardware / Boards / Modules

- RP2350B 보드(컨트롤러·컴퓨트 노드)

- W5500 이더넷 컨트롤러(컨트롤러 노드)

- APS6404L 8 MB QSPI PSRAM (컨트롤러·노드 공통)

- SSD1306 128x64 I2C OLED (컨트롤러 상태 표시)

- 16비트 병렬 매트릭스 버스 (GPIO0–15) 및 노드 ID/LED용 GPIO

External Libraries & SDKs

- RP2 / Pico 계열 SDK (UF2 플로우, RP2350 기반 보드 사용으로 추정)

- Python: requests, numpy (README에 명시)

Structure Overview (text diagram)

컨트롤러 노드
→ W5500 이더넷 (HTTP REST API, 21개 엔드포인트)
→ SSD1306 OLED 상태 표시
→ 매트릭스 버스 마스터
→ PSRAM 기반 클러스터 메타데이터·라우팅 관리

컴퓨트 노드(여러 개)
→ RP2350B MCU
→ PSRAM에 뉴런 테이블 저장
→ LIF 뉴런 + STDP 학습 엔진
→ 매트릭스 버스 슬레이브

호스트 / 운영자
→ Python CLI 도구
→ 노드 목록 조회, 핑, 배포, 상태 모니터링, 스파이크 주입 등 수행

Technical Observations

- 컨트롤러/컴퓨트/버스가 역할별로 잘 분리되어 있어, 유지보수와 성능 튜닝 포인트가 명확하다.

- MCU 기반 시스템 치고 HTTP API 엔드포인트 개수가 많은 편이라, 상위 시스템 연동이 매우 유연하다.

- PSRAM + LRU 캐시 구조로, MCU 환경에서 뉴런 수를 공격적으로 늘리기 위한 메모리 계층 설계를 보여준다.

- CLI 명령 이름과 UX를 유닉스 서버 느낌으로 맞춰 둔 덕분에 “MCU지만 서버처럼” 다루기 쉽다.

[INDUSTRIAL & PRACTICAL RELEVANCE]

GPU나 대형 SoC를 쓰기 어려운 엣지 환경에서 뉴로모픽 처리를 하고 싶은 경우 유용한 구조다.
로봇, 이벤트 기반 센서, 시간 정보가 중요한 신호 처리 등 SNN이 적합한 영역에서 응용 가능성이 크다.
REST API를 통해 기존 모니터링/오케스트레이션 시스템에 붙이기 쉽기 때문에 연구용뿐 아니라 PoC 장비로도 쓸 수 있다.
SCADA 스타일의 감시·제어 패턴을 뉴로모픽 워크로드에 적용한 사례로도 해석할 수 있다.

[NOVELTY IN THIS PROJECT]

- RP2350B + PSRAM + 매트릭스 버스로 구성된 완결형 뉴로모픽 클러스터 아키텍처

- PSRAM 기반 뉴런 저장소 + LRU 캐시라는 메모리 계층 설계를 MCU 레벨에서 구현한 점

- MCU를 컨트롤 플레인(HTTP)과 데이터 플레인(SNN 실행)으로 분리한 구조

- QA 리포트, PRODUCTION_READY 이미지를 포함한 “제품 지향” 스타일의 공개 프로젝트라는 점

[DEMO SUMMARY (based on creator's materials)]

- 사용자는 컨트롤러·노드 보드를 RP2350B 기반 보드로 준비하고, 제공된 PRODUCTION_READY UF2 이미지를 플래싱한다.

- 컨트롤러 기본 IP(예: 192.168.1.222)로 ping 및 /api/status HTTP 요청을 보내 동작을 확인한다.

- Python CLI에서 환경변수로 컨트롤러 IP를 설정한 뒤, nls, nping, nsnn 등을 통해 노드 검색·배포·상태 조회를 수행한다.

- OLED에는 클러스터 상태가 표시되고, 노드들은 매트릭스 버스를 통해 스파이크를 주고받으며 SNN을 실행한다.

[ORIGINAL CREATOR PROFILE]

- Name / Handle: AH ATX (GitHub: ahtx)

- Background: 임베디드 C, Python 도구, 데스크톱 검색/AI 관련 프로젝트를 함께 다루는 개발자.

- Interests: 뉴로모픽 컴퓨팅, 검색 시스템, AI/툴체인, 다양한 언어(C, C#, JS, Python) 활용.

- Notable previous works: AHDiskSearch, 여러 언어 실험용 레포지토리.

[LINKS]

- 프로젝트 / 레포: [https://github.com/ahtx/neurofab-z1-cluster](https://github.com/ahtx/neurofab-z1-cluster?utm_source=chatgpt.com)

- RP2350 MCU: [https://www.raspberrypi.com/products/rp2350/](https://www.raspberrypi.com/products/rp2350/?utm_source=chatgpt.com)

- W5500-EVB-Pico2: [https://docs.wiznet.io/Product/Chip/Ethernet/W5500/w5500-evb-pico2](https://docs.wiznet.io/Product/Chip/Ethernet/W5500/w5500-evb-pico2?utm_source=chatgpt.com)

- APS6404L PSRAM: <https://www.apmemory.com/>

- SSD1306 디스플레이: [https://www.datasheethub.com/ssd1306-128x64-mono-0-96-inch-i2c-oled-display/](https://www.datasheethub.com/ssd1306-128x64-mono-0-96-inch-i2c-oled-display/?utm_source=chatgpt.com)

---

Source: https://maker.wiznet.io/josephsr/projects/neurofab-z1-neuromorphic-cluster-management-system/
