The Solar Oracle Walkman
-
Sony MD player Sony MZ-R55.
-
Sony WM-F107 exhibited in Solar Biennale 2025 in Lausanne.
-
The DIY I-V tester made by Marc Dusseiller.
太陽能神喻隨身聽(chinese version)
Abstract
Solar Oracle Walkman is an exploration of energy trading and sound sculpture, re-engineered from an I–V tester to transform handmade DSSCs (“solar mini discs”) into sound. Each solar mini disc’s TiO₂ layer is patterned with intentional defects via cyanotype or screen printing, producing a unique I–V voiceprint that is submitted through an oracle—a mechanism for securely bridging off-chain data to the blockchain—to a smart contract for verification. Once verified, reproducible generative music is played on the Walkman, with the on-chain verdict serving as the gate for playback.The device functions like a cold wallet: each DSSC corresponds to a verifiable on-chain identity (panel_id) and its commitment, where the panel_id can serve as a future anchor for tokenization. In the v1 prototype of this study, the measured I–V curve is decomposed into seven dimensionless features [FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, Σκ, A*], reduced via PCA, and then manually mapped to the latent input ports of an independently trained nn~ RAVE decoder, achieving reproducible sonic identity without relying on explicit semantic structure.In the next experiment (v2), continuous I–V data under varying illumination will be recorded, and an I–V encoder will be trained to learn compact, illumination-robust latent embeddings of each cell. These embeddings will enter an off-chain fuzzy extractor pipeline (quantization → error correction with helper data (ECC) → hash) to derive a stable key K. On-chain, only the commitment and panel_id derived from K are anchored, preserving privacy while enabling verification. With vector space preservation (VSP), distances in the latent space can reflect differences in photovoltaic behavior, constructing a more complete semantic space. Artistically and philosophically, this “oracle machine” links the physical and informational worlds: a perspective that fuses philosophy of perception and blockchain to explore how “reality” can be distilled and realized.
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. The feature definitions (scale-free) are listed below:
-
DIY DSSC with screen printed pattern and hollyhock dye made by Shih Wei Chieh.
-
DIY DSSC with cyanotype pattern made by Shih Wei Chieh.
-
The measurement of the I-V curve tester is uploaded to Thingspeak and a local server, and can be fetched in Max/MSP.
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.
-
An example Max patch of the machine learning process for the raw seven features: [FF, Vmpp/Voc, Impp/Isc, Rs, Rsh, curvature_sum, area].
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)
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.
I–V Encoder Training (Off-chain)
- Platform: Google Colab
- Architecture: Conv1D (since the RAVE encoder cannot directly process curve data)
- Input: continuous 7-dimensional “voiceprint”
[FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, curvature_sum, area] - Output: latent vector
z = (z1, z2, …, zn)(dimensionality aligned with downstream audio decoder) - 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)
- Data augmentation: gain scaling / small noise / temporal jitter
Fuzzy Extraction (Off-chain)
z→ normalization, quantization- Pass through ECC (error-correcting code) → derive stable key
K - Compute commitment:
commit = keccak256(K || salt)
Panel ID and Enrollment
- Initial enrollment:
panel_id = keccak256("panel-id" || K) - Subsequent verification: reconstruct
K′→ computekeccak256(K′ || salt)→ compare with on-chain commitment - Feature: the contract automatically associates the record with
panel_id, without uploading any human identity information
Audio Decoder (Off-chain)
- Training: independently on musical data, or reusing an existing RAVE decoder
- Function: sonify
z - Stability: because the encoder enforces geometric stability in z, repeated measurements of the same cell yield reproducible timbre and dynamics
- 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:
- Reconstruction: the transformed representation can be mapped back to the source
- Cycle-consistency: round-trip transforms preserve meaning
- Vector space preservation (VSP): pairwise distances among embeddings remain preserved after mapping
-
This figure contrasts the current pipeline with an idealized design that incorporates vector space preservation (VSP). On the left, reproducibility is achieved: each DSSC maps to a stable position in latent space, allowing identity verification but without meaningful relationships across cells. On the right, VSP ensures that pairwise distances in the latent space reflect differences in photovoltaic features, providing not only reproducibility but also relational meaning. In this view, the oracle evolves from a gatekeeper that validates authenticity into a “divinatory machine” that reveals how energy curves relate within a shared semantic structure.
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.
Verification Flow (On-chain)
Inputs (submitted from off-chain):
panel_id: generated off-chain aspanel_id = keccak256("panel-id" || K)commitment: computed off-chain ascommitment = keccak256(K || salt)- Signature: signed according to EIP-712 standard
timestamp,nonce- (Optional) 7-dimensional voiceprint
[FF, Vmpp/Voc, Impp/Isc, Rs*, Rsh*, curvature_sum, area], for visualization or research
Contract responsibilities:
- Verify EIP-712 signature,
timestamp, andnonce - Manage submissions indexed by
panel_id; checkcommitmentconsistency with existing records (or update by business rules) - Store
panel_id,commitment, timestamp, and (optional) 7-D voiceprint; emit events for subscription
Panel ID and Identity Management (On-chain Perspective)
- Origin (off-chain):
panel_id = keccak256("panel-id" || K) - On-chain archiving: measurements are indexed and queried by
panel_id - Identity verification: off-chain reconstruction of
K', computekeccak256(K' || salt)and compare with on-chaincommitment; 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
- Timestamp verification: prevent replay attacks
- Nonce mechanism: ensure uniqueness of each transaction
- Voiceprint range check: if 7-D voiceprint is provided, validate feature ranges
- Commitment consistency: check consistency of
commitmentfor the samepanel_id
Storage Structure
Measurement Records
Each verified measurement record includes:
- Panel ID: anonymized identifier of the DSSC (derived off-chain)
- Commitment: Keccak-256 commitment hash (computed off-chain)
- Timestamp: measurement time
- Voiceprint (optional): 7-D I–V voiceprint features
- 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:
- Data verification: signature, timestamp, nonce, and data integrity
- Identity confirmation: compare
commitmentbypanel_id - State update: update on-chain data structures
- Event emission: emit events upon successful 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)
The sonify oracle as bridge: a minimal cognitive generative system
In the Solar Oracle Walkman project, the I–V curve of a patterned DSSC is measured and mapped into a latent state of sound, while a separate fuzzy extractor derives a verifiable key for on-chain proof. Here, the oracle acts like a bridge: it carries a cryptographic statement (e.g., keccak256(K || salt)) from the physical world into a smart contract, linking the imagination of sound with measurable energy trajectories. This allows the work to be understood as a performative experiment: every sonic decision can be traced back to a measurable transformation on the energy curve. Following Stinson’s (2020) notion of a generic mechanism, the comparability between AI models and human cognition does not lie in the similarity of their representations, but in whether they can both be regarded as instances of an abstract category of mechanism. This provides a legitimate license for designs that aim to map generative art and cognitive systems onto one another. The Solar Oracle Walkman can thus be compared to the generative mechanisms of human cognition: reality or correct physical information exists only in the interaction between two worlds—intra-cranial / extra-cranial, on-chain / off-chain. Andy Clark’s 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. Reality is not an objective phenomenon, but a prediction generated by the brain—a controllable illusion. This makes the Solar Oracle Walkman into a miniature theater, turning prediction and error into artistic material. Conservatively, it should be seen as an operational sketch of cognition rather than a testable theory of consciousness; it still maintains a distance from formal consciousness science and philosophy of mind. Beyond proposing generative systems as a design guideline, the work also explores, under the cover of art, the provocation of inventing new modes of energy trading. Why is the oracle crucial here? Through the oracle and the semiconductor defects of DSSCs, the work can claim: “This sound originates from this solar cell, here and now under these conditions.” Ultimately, it becomes a kind of musical label—a sonified, traceable energy system.
<gallery widths=400 heights=300> File:Stinson's generic mechanism.png|Stinson's "generic mechanism"。 File:controllable hallucinations with RAVE.png|A compositional strategy: train RAVE on DSSC I–V sequences, so that each new measurement produces a latent embedding z1. Pass z1 through the encoder–decoder loop to obtain a reconstructed embedding z2. Compute the residual vector r = z1 – z2. This residual r precisely represents the part that the model cannot explain. While z1 captures the reproducible voiceprint of the DSSC, r can be interpreted as a “hallucination”: the deviation, noise, or anomaly that the model cannot assimilate. Feeding r into another RAVE decoder allows the hallucination to be sonified.
Discussion
- Where things are now The oracle walkman works as a simple art sculpture that sonifies DSSC I–V curves in real time. The 7-feature voiceprint is stable across illumination changes after normalization. The mapping is deliberately minimal, which makes evaluation of reproducibility straightforward. A controlled pipeline from sensing to sound is established in Max/MSP. Perception and AI are treated as two sides of the same generative mechanism. The working definition of hallucination is generation that drifts beyond admissible evidence and priors. Brains predict and correct; hallucination is an extreme case of prediction mismatch. The oracle provides external anchors to keep generation within verifiable bounds while leaving room for creative variance.
- What the theory is doing now Stinson’s generic-mechanism view motivates treating DSSC–RAVE and human perception as different instantiations of a common generative architecture. Feigl’s correspondence model motivates explicit bridges from observation to latent variables, so every design step is tied back to measurable traces. These theoretical lenses are not goals in themselves. They function as design guidelines for dataset building, priors for mapping, and evaluation metrics for drift and variance. Current limitations highlight the absence of vector space preservation (VSP). Without VSP, the latent space serves as a stable registry of identities but cannot guarantee relational meaning across cells. Thus, the oracle functions mainly as a gatekeeper that validates authenticity but offers little semantic interpretation. With VSP, however, the oracle could evolve into a “true oracle machine”: not only verifying truth but also revealing how different energy curves relate, translating physical differences into interpretable structures of another domain.
- Next steps Build a small but clean training set of DSSC voiceprints with controlled illumination and temperature, then test monotonicity and local smoothness priors. Prototype vec2vec-style constraints: simple cycle checks and distance preservation on a held-out set; log when sonic neighborhoods fail to match energy-curve neighborhoods. Investigate lightweight inference targets and compression for future mobile use. Explore whether traceable energy records can be registered as verifiable hashes derived from sonic voiceprint, then evaluate failure modes and anti-counterfeiting limits. In this context, “oracle” refers not only to the blockchain bridge for off-chain data, but also resonates with its ancient meaning—an oracular revelation. When DSSC voiceprints serve only for verification, the oracle acts as a gatekeeper; but once endowed with semantic structure, capable of revealing relations among energy curves and translating them into sound space, it transcends verification and functions as a “machine of divination,” converting physical traces into messages from another world.
References
- 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.
- 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.
- 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.
- https://www.hackteria.org/wiki/A_RAVE_and_starvation_synth_based_generative_sonic_device_powered_by_dye_sensitized_solar_cell
- https://github.com/shihweichieh2023/IVcurve_tester
- https://github.com/rjha18/vec2vec
- https://github.com/shihweichieh2023/solar-oracle-walkman