Signal generator board

The signal generator board produces sine waves at voltages up to 20 Vpk-pk and frequencies ranging from 100 Hz to 50 kHz. It communicates with the Control Board over the Communication Bus Ribbon Cable.


You can download the firmware here.


  1. If you have not previously burned a bootloader to the ATMega328P chip, follow these instructions.
  2. To flash the firmware using the Arduino IDE, the package needs to be extracted to a folder called "signal_generator" (the folder has to have the same name as the "*.ino" sketch file contained within it).
  3. Connect the SignalGeneratorBoard to your computer using the FTDI cable making sure that you have the header in the right orientation (see photo below):

Signal generator board programming

  1. If the signal generator is being powered by the DropBot's power supply (i.e., if you're updating the firmware in an assembled system and it is being powered over the communication bus ribbon cable), make sure that the "USB_POWER" jumper is removed. If the board is not being powered (i.e., the power LED is off), you will need to connect the "USB_POWER" jumper to supply power from the FTDI cable.
  2. Open the sketch file ("signal_generator.ino") in the Arduino IDE (either 1.0.x or 1.5.x versions should work).
  3. Choose the port corresponding to the SignalGeneratorBoard in the "Tools/Port" menu and select "Arduino Uno" from the "Tools/Board" menu. 7. Press the "Upload" button to compile and upload the firmware to the board.


You can download the KiCAD designs for the signal generator board here.


The signal generator board has 2 jumpers:

  1. The "USB_POWER" jumper powers the board from the +5V line of the FTDI programming headers. This should only be connected if the communication bus ribbon cable is disconnected or if the DropBot power supply is off.
  2. The "5Vp-p/20Vp-p selection jumper" sets the output voltage range. Normally, the "20Vp-p" option should be selected, however, this relies on having +/- 12V supplied over the signal generator power cable.


  1. Make sure the "USB Power" jumper on the signal generator board is not connected, i.e., jumper should not be connecting the two pins.
  2. Power to the board is provided by the DropBot's power supply. In order for the power supply to be enabled, you must connect to the control board from your PC (e.g., by plugging in the USB cable and launching MicroDrop).
  3. Connect the signal generator board to the computer using the FTDI cable.
  4. Reset the configuration to the default values
  5. Use a serial terminal (e.g., the one provided by the Arduino IDE) to set the waveform frequency and voltage, to 1 kHz and 1 Vrms
  6. Using an oscilloscope, measure the RMS voltage of the output.
  7. If the voltage on the scope does not match the specified waveform RMS voltage, adjust pot 3 using the serial interface, i.e., set_pot(3, x, 1). Increasing x will reduce the voltage.
  8. Now set the frequency to 10 kHz: set_waveform_frequency(10e3)
  9. Adjust the high frequency amplitude correction until the output voltage is 1 Vrms, i.e., set_hf_amplitude_correction(x)
Last modified 2 years ago Last modified on 02/12/18 13:32:37

Attachments (2)

Download all attachments as: .zip