"Make Your Own Device":
When Digital Education Marries Reform Pedagogy


Prof. Daniel D. Hromada, PhD. et PhD.

Order of the day

Bildung Digitale

Reform Pedagogy


some examples

further advices

All which shall be presented is work-in-progress.

Bildung Digitale

Bildung Digitale = digitalisation + education + humanism

Reform Pedagogy

Waldorf Pedagogy

"Thinking / Feeling / Willing"

artistic / creative practice integral part of an epoch-based curriculum

older students or parents create instruments for younger kids

preference for natural (wood, clay, wool) materials

more φαντασία -oriented than Montessori or Freinet

Montessori Pedagogy

"Help me to do it myself !"

four domains of focus: Practical Life, Sensing, Language and Math

free choice from didactic instruments pre-selected by the Teacher

importance of classrom's spatial setup

more "cognitive" (e.g. Polarization of attention) than Steiner or Freinet

Freinet Pedagogy

"Through Life - for Life - through Work."

learning by doing work or providing services

usefulness-oriented activity

"Expression libre"

printing press plays important role / pupils create their own tangible media

more "hands-on" and anti-authoritarian than Waldorf or Montessori

Commonalities among Waldorf / Montessori / Freinet

"Head. Heart. Hand"

child-oriented and NOT market-oriented attitude ("We are teachers and not businessmen.")

integrative, holistic and synthetic

increased amount of manual, haptic or corporal activity

higher amount of parent and pupil participation

egalitarian interaction between classes and ages

own instruments and media


Make Your Own Device (MYOD) is a didactic approach aiming to increase student's digital literacy by inviting (him|her) to MAKE an own digital artefact addressing a concrete individual, social, scientific or artistic Goal.

MYOD procedure (v0.01)

  • Teacher introduces main concepts (Computer, Input, Output, Sensor, Motor, Display, Interaction etc.)

  • Student / Pupil defines a goal (WHY?), a recipient of the final result (FOR WHOM?) and a vision (WHAT?)

  • Teacher provides hardware & software components and material which are necessary to achieve the goal

  • Students / Pupil works on attainment of the goal, assisted by other students and supervised by the Teacher

Our inventory

HW :: Raspberry Pis (A+, B+, Zeros, Compute modules), Arduinos, Touchless interaction sensors (Skywriter theremin, PAJ7620U2), e-ink displays

OS :: Linux (collaborative coding with terminal + ssh + screen -x )

Code :: Python, C++ (mostly copy & paste code reuse, of course), HTML

Making :: cardboard, old music instruments, old books, wood, acryl ...

Some examples

Avatar 0

(with Chris Schmidts, Akif Sari)
Head-shaped tridecahedral (13-plane) wooden shell crafted by Chris Schmidts and filled with Raspberry pi 3A+, Seeed Respeaker (4mic circular array, ac108 converter; APA102 12-LED RGB pixel ring) enriched with UltraSonic Ranger System sending UDP packets to "active wall" installation by architecture student Akif Sari.

6-inch e-ink displays page 4. of McGuffey's Ecclectic Primer, a well-known Fibel of Victorian Era. Display is currently powered off and as such has zero carbon dioxide trace (hallo Gretha!) while still teaching Alphabet. To see more interactive e-ink setup please check the artefact CardboardFibel0.


(with Nikoloz Kapanadze)
sonic is an experiment on the topic of screenless computers. what would our smart devices look like, and act like if they were not bound by the rectangular standard of the screen. sonic is a pair of headtracking headphones powered by a Raspberry Pi. the headtracking information is used to control a supercollider program that performs binaural processing. in  other worrds the spatial positions of sound sources are  decoupled from the listeners frame of reference. so to say the sounds stay in place as the user changes the orientation of their head. its like VR but for your ears not your eyes.

the device can also record stereo audio using the two microphones mounted on the two earcups. having microphones so close to where one's ears would be gives the sound a lot of presence.  the componnts are mounted on a pair of headphones that i've had for around five years now and the whole assembly is modular, meaning that faulty components can be easily swapped out.

sonic uses twin i2s mems microphones( SPH0645) for audio recording and a accelerometer+gyroscope+magnetometer(LSM9DS1) ic for head-tracking.

developed by Nikoloz Kapanadze

Carboard Primer

(with Astrid Kraniger)
First functional cardboard-embedded artefact combining touchless gesture-based recognition (Seeed Grove Gesture Recognition Sensor PAJ7620U2)with an e-ink controlled by IT8591 board and some ANSI C coded  for the purpose of diagnostics of difficulties in acquisition of learning and writing (Leserechtschreibschwierigkeiten - LRS).

Diagnostics focuses on so-called "Rapid Automatized Naming" which is considered to be one among the most important LRS-predictors.

Visual content ("animal pictures") scanned from reedition of Lumen Picturae et Delineationis (Amsterdam, 1660, BE310).

Instead of a signature, this artefact contains a four-leaf clover (harvested in July) attached by duct-tape above the e-ink screen. Bottom of the cardboard shell is photovoltaic, making it possible to transform PappeFibel 0 or one of its derivatives into an energy-autarch ("eutark"; Hromada, 2019, AE49) digital education artefact.

TASK: Identify mismatch between visual and textual modality. 

INSTRUCTION OF USE: You interact with the device by moving Your hand in front of the Gesture Recognition Sensor (to the right from e-ink screen). Movement along vertical axis (up/down) maps to boolean (true/false, JA/NEIN) answers. Movement along horizontal axis (left/right) is used to browse the content. Rotation is used to switch between "learning" and "testing" mode.

CAVEAT: When changing modes of operation, new data has to be loaded into the buffer of the e-ink controller. This takes few seconds. Be patient. Breathe.


(with Kohei Kimura)
Skywriter + raspberry Pi zero + 3W shaker + tibetian singing bowl + physical setup by Kohei Kimura 

Touchless Ukulele

(with Anna Petzer)
This upcycled, portable, cable-less digital artefact combines touchless gesture-based recognition (Skywriter sensor)with a Raspberry pi 3a+ and integrated bluetooth loudspeaker.

TASK: Play with speed (time), position (space) and quality (suspense) of your hand movements. 

INSTRUCTION OF USE: You interact with the device by moving Your hand in front of the Skywriter sensor (above the sound hole of the instrument). Play the string to observe how the string vibration deforms the field measured by Skywriter. 

CyberPlant 0

(with Ozcan Ertek)


#DDH, based on code from Adafruit industries, mrGPL

import os,glob

import pygame

DRUM_FOLDER = "KidsDay/drums2"

BANK = os.path.join(os.path.dirname(__file__), DRUM_FOLDER)


pygame.mixer.init(44100, -16, 1, 512)



files = glob.glob(os.path.join(BANK, "*.wav"))



samples = [pygame.mixer.Sound(f) for f in files]



import sys

import time


import Adafruit_MPR121.MPR121 as MPR121

print('Adafruit MPR121 Capacitive Touch Sensor Test')


# Create MPR121 instance.

cap = MPR121.MPR121()


if not cap.begin():

    print('Error initializing MPR121.  Check your wiring!')



def handle_hit(sensor_id):

    # event.channel is a zero based channel index for each pad

    # event.pad is the pad number from 1 to 8


    print("You hit pad {}, playing: {}".format(sensor_id,files[sensor_id]))


# Alternatively, specify a custom I2C address such as 0x5B (ADDR tied to 3.3V),

# 0x5C (ADDR tied to SDA), or 0x5D (ADDR tied to SCL).



# Also you can specify an optional I2C bus with the bus keyword parameter.



# Main loop to print a message every time a pin is touched.

print('Press Ctrl-C to quit.')

last_touched = cap.touched()

while True:

    current_touched = cap.touched()

    # Check each pin's last and current state to see if it was pressed or released.

    for i in range(12):

        # Each pin is represented by a bit in the touched value.  A value of 1

        # means the pin is being touched, and 0 means it is not being touched.

        pin_bit = 1 << i

        # First check if transitioned from not touched to touched.

        if current_touched & pin_bit and not last_touched & pin_bit:

            print('{0} touched!'.format(i))


        # Next check if transitioned from touched to not touched.

        if not current_touched & pin_bit and last_touched & pin_bit:

            print('{0} released!'.format(i))

    # Update last state and wait a short period before repeating.

    last_touched = current_touched



Further advices


recommended age: secondary level (e.g. 10 years and older)

recommended facilitator / apprentice ratio: 1 facilitator per 5-7 apprentices

recommended Goal: create media / instruments / tools which can be used by primary level pupils

Ideal output

Older students : education-about-digital

Younger students : education-with-digital

Major problem

Component supply chain is strongly China-dependent.

Potential solution: material upcycling and component scavenging

Post Scriptum


MYFD = make Your friend's device

MYSD = make Your sibling's device

MYCD = make Your child's device

Thanks for Your attention