bioZAP language


 bioZAP script language is used to edit and support user-generated therapy. bioZAP has been implemented in open, free devices based on the ARDUINO platform built to electric current or magnetic and electromagnetic pulsed field therapy. Also alows make other applications eg biofeedback meditation, exteriorization and bioresonance.

Users can exchange their therapy scripts created on the website, modify them themselves and upload them to devices. The database of therapies and devices that support the bioZAP script is available on the portal.

bioZAP scripting language is simple. You can enter commands immediately or upload them to the device's memory.
To communicate with the device, you can use the Arduino serial port monitor (Tools-> Serial monitor) or a free console program, eg Herkules [link]. Next step is configure correct COM port, setting the speed to 9600. See below.  If the program has a line ending setting, it should be configured as Newline (LF) or CR + LF.


The ls command is used to display a script in the device's memory:

#Wizadla i kosci
beep 200
rec 1000 120
chp 1
rec 1000 120
chp 0
rec 700 120
chp 1
rec 700 120
beep 200


The meaning of used commands:

  • rec 1000 120 – generate a 10Hz square signal for 2 minutes. An example of executing the rec command in immediate mode: 7.83 Hz for 30 seconds


  • beep 200 – generate an acoustic signal for 200 ms
  • chp 1 – change the polarity of the signal at the output
  • off - turn off

 New therapy program design should start with deleting the old one by rm command. Next step is entering mem command. Then we give the next lines of the therapy script and end them with the enter. From the write to memory mode, we leave by entering @. To list the new script use ls command. The therapy program can be started in direct mode with the exe command. The script is stored in the EEPROM non-volatile memory so we can use it repeatedly even after switching off the device. For example, in a freePEMF device after disconnecting the USB cable, turning it off and on again, the newly created therapy script will be started after selecting the number 1 therapy. The user-created bioZAP script will replace the standard therapy.

 The software does not support Xon/Xoff data flow control, so if you paste entire parts of the script from the clipboard into the console in programming mode, they should be split into parts up to 127 bytes long. This is the size of the buffer solving the problem of the lack of data flow control in the Arduino NANO module itself. The maximum length of the user program can be up to 1000 bytes. Use the mem @ command if you want to add new commands at the end of the existing memory in the script's memory.

More details you find here: