The Pi Heart of the echOmods

What does it look like?


What is it supposed to do?

The aim of this echOmod is to digitalize the signal, and to control the pulser, servo, ...

How does it work: block diagram

Block schema

  • ITF-15_GPIO21->RPi
  • ITF-4_RawSig->Jumper->ADC Cape (elmo)
  • ITF-3_ENV->Jumper->ADC Cape (elmo)->RPi
  • RPi->ITF-16_POn3
  • RPi->ITF-17_POff3
  • ITF-11_OffSig->Jumper->ADC Cape (elmo)
  • RPi->ITF-N_cc_motor_pwm
  • RPi->/dev/charnode->Wifi

About the module


  • Building on an existing wireless device, the RPi 0 or RPi W
  • Wireless server and documentation server


  • To be tested!

Constraint and limits

  • @todo



  • The image of the SD card for a PiW, along with the kernel module, scripts and all, is available here. Login 'pi' and password 'root'. Bad, I know. Change your wifi details in the /etc/wpa_supplicant/wpa_supplicant.conf. Once the pi has booted, you can ssh [email protected] to connect to it. This procedure rocks to get your ssh keys on the device and not be bothered anymore.

  • The image was created using the following commands:

 sudo dd if=/dev/sdc of=./rpi_kernel_module.img bs=1M
 gzip rpi_kernel_module.img

to flash it, (replacing the rdisk1 by the appropriate disk)

 gzip -dc rpi_kernel_module.img.gz | sudo dd of=/dev/rdisk1 bs=1m

The module is already compiled. It must be inserted by


The module on the image creates the two pulses and listens to the ADC (if plugged in). It can be used as a standalone tool to test the pulser module, provided both jumpers on Doj v2 J2 jumpers connect Pon to Pon3 and Poff to Poff3.

Checking if it works with the pulser

It does! Pulses are :

and the ouput of the pulser is:

(see the worklog here).

Using an oled screen

exploration is detailed here.

Mapping the pins



  • Save images as DICOMs


  • Mapping the pins shared between PWM, pHAT and tracks
  • Developping a CA3306E version of the 10Msps ADC pHAT for testing.
  • Testing the limits of ADC acquisition (speed / bits)
  • Understand why some GPIOs do not have lower values at 0..
  • Set pins to down on boot
  • Dev a version of the ADC08200
  • Create a kernel module
  • (Still to be explored) MixedGadget => Storage + ethernet or this or that.
  • Test the PWM


  • Kelu124

results matching ""

    No results matching ""