The Solar Oracle Walkman

From SGMK-SSAM-WIKI
Jump to navigation Jump to search

太陽能神喻隨身聽(chinese version)

Abstract

This experiment was realized as a working prototype during the SGMAK Hacker-in-Residency Programme. The Solar Oracle Walkman is an exploration of energy trading and sound sculpture, adapted from an I–V tester to transform handmade DSSCs (“solar mini discs”) into sound. Each solar mini disc’s TiO₂ layer is patterned by cyanotype or screen printing to deliberately introduce defects, generating a unique I–V voiceprint V. This voiceprint is submitted via an oracle, a mechanism that securely bridges off-chain data to the blockchain, to a smart contract for verification. Once verified on-chain, V is rendered on the Walkman as reproducible generative music. The device functions like a cold wallet: each DSSC corresponds to a verifiable on-chain identity (panel_id) and its commitment value. The panel_id can serve as an anchor for future tokenization. In the completed v1 prototype, the measured I–V curve is decomposed into seven dimensionless features [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, Σκ, A*], reduced with PCA, then manually mapped to the latent inlets of an independently trained nn~ RAVE decoder, producing reproducible sonic identity without explicit semantic structure. In the planned v2 experiment, continuous I–V data under varied illumination will be recorded, and an I–V encoder will be trained to learn compact, illumination-robust latent embeddings for each cell. These embeddings will pass through an off-chain fuzzy extractor pipeline (quantization → error correction with helper data (ECC) → hashing) to derive a stable key K. On-chain, only the commitment and panel_id derived from K are anchored, preserving privacy while enabling verification. If vector-space preservation (VSP) can be maintained, distances in the latent space will reflect differences in photovoltaic behavior, establishing a richer semantic space. From artistic and philosophical perspectives, this “divinatory machine” links the physical and informational worlds, exploring the distillation and realization of “truth” through the lenses of philosophy of perception and blockchain. Currently the sound in this prototyping is not a mere reproduction: theoretical frameworks are integrated into composition as guides and reflective tools, linking technical processes (measurement, feature extraction, on-chain verification) with philosophical frameworks (perception, reality, hallucination).

Experiments

The solar oracle walkman is mainly made of 3 components: a I-V curve tester, a patterned solar mini disc and a smart contract. The I-V curve of each solar mini disc is measured and uploaded to a smart contract deployed on Sepolia Testnet to be verified, once its I-V data passes the verification, the corresponding music will be generated and allowed to play from the walkman accordingly. The sound of each "solar mini disc" are expected to be reproducible, generative and semantic, like a period of generative music with clear mechanism rather than completely randomness. To make each solar mini disc a generative device, I firstly assume I need to design a hash operation to gain a “ voiceprint (V)” for each solar glass; A hash operation is the process of feeding input data such as numbers, text, files, or a set of I-V curve parameters—into a mathematical function or algorithm to produce a hash value. Hash algorithms can take input of any length but always generate a fixed-length output. They are designed to be fast to compute, yield the same output for the same input, and produce drastically different outputs when the input changes even slightly.

The first prototype v1

A DIY I-V curve tester is connected to computer and the 16 points of I-V curve measurements are sent to the Max/MSP via serial communications. I-V curve is often used to analysis the characteristics of a solar cell, therefore it is ideally the "voiceprint" of the panel, especially the DSSC with cyanotyped and screen printded TiO2 layer. In this research, the shape of I-V curve is deconstructed in:to seven features that are often used to measure different characteristics of the panel, and then apply machine learning to each feature so the shape can be learned by the computer. This method is expected to ensures the irradiance invariance, so the reproducibility of the audio output of the solar mini disc will be resilient even it's put under different light exposure. The voiceprint V consists seven features of the I-V curve: V = [FF (Fill Factor), Vmpp/Voc, Impp/Isc, Rs (series resistance), Rsh (shunting resistance), sum of curvature, total area of the I-V curve]. Noticing the calculation made here are dimensionless. A dimensionless feature vector is a set of numerical descriptors that have been normalized so they no longer carry physical units such as volts, amperes, or ohms. By converting raw measurements into dimensionless quantities—for example, by taking ratios like Vmpp/Voc or Impp/Isc, the features capture only the relative shape or behavior of the data, independent of its absolute scale. This process is crucial when comparing or classifying I-V curves under varying light intensities, as it ensures that differences in the vector reflect intrinsic device characteristics rather than changes in measurement conditions.

Solar Oracle Walkman v1 — Overview

[Light]
   ▼
[Patterned DSSC “Mini-Disc”]
   ▼
[I–V Scanning / ESP32-S3 Tester]
   ▼
[Feature Extraction, 7D]
F = [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, Σκ, A*]
   ▼
ml.scale normalization
   ▼
ml.principle (PCA)
   ▼
input RAVE nn~ decoder
   ▼
Real-time audio output
Cross-modal mapping: I–V latent → audio latent
(mapping chosen by artistic / compositional context)

The 7-D voiceprint

V = [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, Σκ, A*] All features are computed on a 64-point resampled I–V trace and normalized by Voc and Isc to be invariant to irradiance and device size.

FF (fill factor)
FF = (Vmpp * Impp) / (Voc * Isc)
Vmpp/Voc and Impp/Isc
Scale-free ratios capturing the operating point at maximum power.
Rs* and Rsh* (dimensionless ohmic estimates)
First estimate the local slopes on the resampled curve:
Rs ≈ -ΔV/ΔI (evaluated near I ≈ Isc)
Rsh ≈ -ΔV/ΔI (evaluated near V ≈ Voc)
Then report dimensionless forms:
Rs* = Rs * (Isc / Voc)
Rsh* = Rsh * (Isc / Voc)
Σκ (curvature_sum)
Sum of absolute turning angles along the 64-point polyline of the I–V trace: for each consecutive pair of segments s_i = (ΔV_i, ΔI_i), accumulate
|angle(s_i, s_{i+1})|, and report Σκ = Σ |angle(s_i, s_{i+1})|.
(Intuition: larger Σκ indicates a more “bent” I–V shape.)
A* (normalized area under the I–V curve)
Definition: area from V=0 to V=Voc divided by (Isc * Voc).
Discrete approximation on the resampled trace:
A* ≈ (Σ I[i] * ΔV[i]) / (Isc * Voc)

The preprocessing of fuzzy extraction with ml.scale and ml.principle

To make the sound of every solar mini disc reproducible and solid for smart contract verification, ml.* library in Max/MSP is a solution. Ml.* is a toolbox of machine learning algorithms implemented in Max to enable real-time interactive music and video with unsupervised machine learning, aimed at computer musicians and artists. The raw seven features are first sent to ml.scale object for the normalization in range from 0 to 1. The values are then passed to ml.principle, which performs Principal Component Analysis (PCA). This converts the seven values into a new 7-dimensional PCA space which is a mathematical method that rotates and compresses data into fewer dimensions while preserving as much variance as possible. ml.principle is the Max/MSP object that implements PCA: it learns the principal axes from training data, and then projects new data into that reduced space. I am not familiar with how fundamentally the mathematics works, however, I got an okay explanation from GPT below in the photo gallery.

Second Prototype v2: RAVE as Intermediate Layer and Fuzzy Extractor

In the v1 version, using ml.scale and ml.principle for PCA provided only linear dimensionality reduction; it could not guarantee “reproducibility under varying illumination” or “error correction for a binary key.” Therefore, I propose v2, which adopts a fuzzy extractor: it converts the continuous latent vector z into an error-correctable, verifiable bitstring and outputs a stable key K, simultaneously meeting the requirements of identity reproducibility and on-chain verification. Solar Oracle Walkman v2 — Overview

[Light]
   ▼
[Patterned DSSC “Mini-Disc”]
   ▼
[Continuous I–V Scanning / ESP32-S3 Tester]
   ▼
[I–V Encoder (Conv1D trained in Colab) — off-chain]
Input: 7-D sequence [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, curvature_sum, area]
Output: latent vector z = (z1, z2, …, zn)
Training: triplet loss + prior matching
Augmentation: gain scaling / noise / temporal jitter
   ▼
[Fuzzy Extractor — off-chain]
z → normalization / quantization
  → ECC + helper data → stable key K
  → commit = keccak256(K || salt)
Enrollment: panel_id = keccak256("panel-id" || K)
Verification: new K′ → keccak256(K′ || salt) → compare with stored commitment
   │
   ├───────────────► [Oracle / On-chain Path]
   │                   Package {pubkey, panel_id, commitment, timestamp, nonce, signature}
   │                   Smart contract: verify EIP-712 signature, timestamp, nonce
   │                   Smart contract: check keccak256(K′ || salt) == commitment (on verify calls)
   │                   Smart contract: store panel_id, commitment, metadata; emit events
   │                   Feedback: OK / FAIL
   │
   ▼
[input RAVE nn~ decoder]
   ▼
Real-time audio output
Cross-modal mapping: I–V latent → audio latent
(mapping chosen by artistic / compositional context)

I–V Encoder Training (Off-chain)

  1. Platform: Google Colab
  2. Architecture: Conv1D (since the RAVE encoder cannot directly process curve data)
  3. Input: continuous 7-dimensional “voiceprint” [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, curvature_sum, area]
  4. Output: latent vector z = (z1, z2, …, zn) (dimensionality aligned with downstream audio decoder)
  5. Training objective: triplet loss (pull samples of the same cell closer, push different cells apart) + prior matching (make z follow the decoder’s Gaussian prior)
  6. Data augmentation: gain scaling / small noise / temporal jitter

Fuzzy Extraction (Off-chain)

  1. z → normalization, quantization
  2. Pass through ECC (error-correcting code) → derive stable key K
  3. Compute commitment: commit = keccak256(K || salt)

Panel ID and Enrollment

  1. Initial enrollment: panel_id = keccak256("panel-id" || K)
  2. Subsequent verification: reconstruct K′ → compute keccak256(K′ || salt) → compare with on-chain commitment
  3. Feature: the contract automatically associates the record with panel_id, without uploading any human identity information

Audio Decoder (Off-chain)

  1. Training: independently on musical data, or reusing an existing RAVE decoder
  2. Function: sonify z
  3. Stability: because the encoder enforces geometric stability in z, repeated measurements of the same cell yield reproducible timbre and dynamics
  4. Cross-modal mapping: I–V → audio latent: semantic order is preserved only on the encoder side, while the decoder-side mapping is determined by artistic/compositional context

Verifiable Semantic Space (VSP)

According to Jha et al. (2025), semantic stability relies on three core constraints:

  1. Reconstruction: the transformed representation can be mapped back to the source
  2. Cycle-consistency: round-trip transforms preserve meaning
  3. Vector space preservation (VSP): pairwise distances among embeddings remain preserved after mapping

Smart Contract Verification System

The smart contract of the Solar Oracle Walkman is deployed on Ethereum Sepolia Testnet (contract address: 0xeF19a90e5786dd0e89264F38f52CF81102db938e). The contract functions as a decentralized digital notary, responsible for: verifying signatures and data integrity (EIP-712), managing submissions keyed by panel_id, storing and publishing commitments and metadata associated with I–V voiceprints. Note: Fuzzy extraction and derivation of the key K are all performed off-chain; the contract does not execute FE. Download the related code on GitHub here.

Verification Flow (On-chain)

Inputs (submitted from off-chain):

  1. panel_id: generated off-chain as panel_id = keccak256("panel-id" || K)
  2. commitment: computed off-chain as commitment = keccak256(K || salt)
  3. Signature: signed according to EIP-712 standard
  4. timestamp, nonce
  5. (Optional) 7-dimensional voiceprint [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, curvature_sum, area], for visualization or research

Contract responsibilities:

  1. Verify EIP-712 signature, timestamp, and nonce
  2. Manage submissions indexed by panel_id; check commitment consistency with existing records (or update by business rules)
  3. Store panel_id, commitment, timestamp, and (optional) 7-D voiceprint; emit events for subscription

Panel ID and Identity Management (On-chain Perspective)

  1. Origin (off-chain): panel_id = keccak256("panel-id" || K)
  2. On-chain archiving: measurements are indexed and queried by panel_id
  3. Identity verification: off-chain reconstruction of K', compute keccak256(K' || salt) and compare with on-chain commitment; contract only accepts the minimal required submission for proof and notarization

Security Mechanisms

EIP-712 Structured Signatures

The contract implements EIP-712 standard, providing verifiable structured signatures for measurement submissions:

struct IVMeasurement {
    uint256 timestamp;
    bytes32 panelId;
    bytes32 commitment;
    uint256[7] voiceprint;
    bytes32 nonce;
}

Data Integrity Checks

  1. Timestamp verification: prevent replay attacks
  2. Nonce mechanism: ensure uniqueness of each transaction
  3. Voiceprint range check: if 7-D voiceprint is provided, validate feature ranges
  4. Commitment consistency: check consistency of commitment for the same panel_id

Storage Structure

Measurement Records

Each verified measurement record includes:

  1. Panel ID: anonymized identifier of the DSSC (derived off-chain)
  2. Commitment: Keccak-256 commitment hash (computed off-chain)
  3. Timestamp: measurement time
  4. Voiceprint (optional): 7-D I–V voiceprint features
  5. Verification Status: verification result

Oracle Mechanism (On-chain Role)

The contract acts as one end of a Blockchain Oracle, verifying and notarizing signed data submitted from off-chain:

  1. Data verification: signature, timestamp, nonce, and data integrity
  2. Identity confirmation: compare commitment by panel_id
  3. State update: update on-chain data structures
  4. Event emission: emit events upon successful verification


Truth-sonified Sculpture: on the similarity between perception and computation as generative Systems

Driven by the motivation of energy traceability, this experiment attempts to materialize “the real” and argues that it carries a dual sense: on the one hand, the truth/veracity of blockchain transactions—verifiable and tamper-proof; on the other hand, the reality/the real of perceptual philosophy—how we generate and experience reality itself. To support this view, we must discuss how conceptual models and analogical mechanisms are formed. Following Stinson (2020) on the notion of a generic mechanism, the comparability between computational models and human cognition does not lie in the similarity of their representations, but in whether both can be regarded as instances of an abstract category of mechanism. This provides a legitimate basis for designs that aim to map generative art and cognitive systems onto one another. Many studies already treat AI perception and human perception as two sides of the same process, redeveloping perceptual philosophy through the structure of generative models. For instance, Buckner (2023) proposes that human imagination and memory are closely related to the variational autoencoder (VAE). Andy Clark’s (2023) predictive brain theory further suggests that both perception and artificial intelligence can be understood as generative mechanisms: they do not merely receive signals passively, but actively predict and correct them. In this framing, “reality” is not an objective given but a prediction generated by the brain—a controllable illusion. These theories provide a structural bridge for debates in philosophy of mind and philosophy of perception. However, the “reality” of perceptual philosophy and the truthfulness of measurable energy trajectories do not belong to the same ontological category, and thus cannot be straightforwardly juxtaposed within a single framework. Yet the operative mechanism of the artwork creates an initial common ground: the Solar Oracle Walkman can likewise be seen as a perceptual system. Through the oracle mechanism, it extracts “the real” from two worlds—intracranial/on-chain and extracranial/off-chain—while within its algorithms, prediction and error become tools for locating truth. “This sound originates from this solar cell, here and now, under these conditions.” Ultimately, the Solar Oracle Walkman evolves from an exercise in sonifying a traceable energy system into a generative musical sculpture grounded in the sonification of the real and the semantic alignment and translation work between two different systems. Conservatively, the project should still be regarded as an operational sketch of cognitive science, rather than a testable theory of consciousness; it remains at a considered distance from formal consciousness science and the philosophy of mind.

Discussion

  1. Where things are now At its present stage, the Solar Oracle Walkman functions as an artistic device that fuses energy measurement with sound generation. The I–V curve of a patterned DSSC is mapped into a latent sonic state, while a fuzzy extractor produces a verifiable key for on-chain registration. In this way, sound becomes not only an aesthetic event but also a traceable energy label. The work emphasizes the dual nature of generation and verification: sound retains creative drift, while the oracle serves as an external anchor, ensuring that each sonic decision remains traceable to a concrete energy trajectory.
  2. What the theory is doing now Stinson’s (2020) notion of the generic mechanism provides a framework for analogy: both the DSSC–oracle–sound pipeline and human perception can be regarded as instances of generative systems. Andy Clark’s theory of the predictive brain further frames sound here not as mere reproduction but as a controllable illusion generated through prediction and error correction. These theoretical perspectives are not final claims but rather design heuristics and reflective tools, helping us connect technical processes (measurement, feature extraction, on-chain proof) with philosophical frameworks (perception, reality, hallucination).
  3. Next steps The next challenges concern the expansion of data and semantic structure: Build a controlled dataset of DSSC voiceprints under varying light and temperature to test reproducibility. Explore how proximity in sonic latent space can correspond to proximity in energy curves. Assess the failure modes and anti-counterfeiting limits of the fuzzy extractor, registering voiceprint hashes as energy certificates. Deepen the dual meaning of the oracle: as long as it functions only as a verification gatekeeper, it merely authenticates; but once it begins to reveal structural relations between energy curves and translate them into sound, it takes on the ancient role of the oracle—transforming physical signs into messages from another world.

References

  1. Buckner, Cameron J. 2023. From Deep Learning to Rational Machines: What the History of Philosophy Can Teach Us about the Future of Artificial Intelligence. 1st ed. Oxford University PressNew York. https://doi.org/10.1093/oso/9780197653302.001.0001.
  2. Stinson, Catherine. 2020. “From Implausible Artificial Neurons to Idealized Cognitive Models: Rebooting Philosophy of Artificial Intelligence.” Philosophy of Science 87 (4): 590–611. https://doi.org/10.1086/709730.
  3. Jha, Rishi, Collin Zhang, Vitaly Shmatikov, and John X. Morris. 2025. “Harnessing the Universal Geometry of Embeddings.” arXiv:2505.12540. Preprint, arXiv, June 25. https://doi.org/10.48550/arXiv.2505.12540.
  4. Schmudde, David. 2024. Between Chaos and Order. https://doi.org/10.34626/2024_XCOAX_019.
  5. “What Is Complexism? Generative Art and the Cultures of Science and the Humanities | Semantic Scholar.” n.d. Accessed September 5, 2025. https://www.semanticscholar.org/paper/What-is-Complexism-Generative-Art-and-the-Cultures-Galanter/90da494215c460a8f8b7e518b75795f2177d269d.