Sig Gen Save

Android Signal Generator

Project README

Logo Signal Generator .github/workflows/main.yml Release

Get it on F-Droid

A signal generator for Android. The app can be downloaded from F-Droid and here.

  • Frequency range 0.1Hz - 25KHz
  • Level range 0dB - -80dB
  • Set exact frequency
  • Frequency bookmarks
  • Square wave duty cycle
  • Shortcut
  • External control

Using

The frequency knob responds to finger twirling. The duty cycle, fine frequency and level sliders allow for adjustments of square wave duty cycle, fine frequency and output level. The frequency knob is also adjustable using the left and right arrow buttons above. The two bookmark buttons below the frequency knob show if there are bookmarks, and will go to the next lower or higher bookmark if it exists.

The toolbar items are, from left to right:

  • Exact - Prompt for an exact frequency
  • Bookmark - Save the current frequency as a bookmark
  • Sleep - Prevent the device from sleeping

To remove a bookmark, go to it and touch the toolbar bookmark button.

Shortcut

A shortcut may be created to set the parameters shown below. Empty frequency, duty cycle and level values and unchecked waveform values will not be included. The mute value will always be included. The name of the shortcut will be composed from the set values if the name field is empty.

External Control

The app may be started, the frequency, level, duty cycle, waveform and mute set externally by sending a suitable Intent from an automation app. The app package/activity is org.billthefarmer.siggen/org.billthefarmer.siggen.Main. The parameters may be:

Parameter Action/Category/Extra Type Value
Action android.intent.action.MAIN
android.intent.action.DEFAULT
Category android.intent.category.LAUNCHER
android.intent.category.DEFAULT
Extras org.billthefarmer.siggen.SET_FREQ int, float 0.1 – 25000
org.billthefarmer.siggen.SET_LEVEL int, float -80 – 0
org.billthefarmer.siggen.SET_DUTY int, float 0 – 100
org.billthefarmer.siggen.SET_WAVE int 0 = Sine
1 = Square
2 = Sawtooth
org.billthefarmer.siggen.SET_MUTE boolean true, false

Any combination of extras or none may be sent. Subsequent intents sent will update the values from the included extras.

This may be tested using the Android Debug Bridge.

$ adb shell am start --ef org.billthefarmer.siggen.SET_FREQ 257.3 --ef org.billthefarmer.siggen.SET_LEVEL -25.2 org.billthefarmer.siggen/.Main
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=org.billthefarmer.siggen/.Main (has extras) }
$ adb shell am start --ez org.billthefarmer.siggen.SET_MUTE true org.billthefarmer.siggen/.Main
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=org.billthefarmer.siggen/.Main (has extras) }
Warning: Activity not started, its current task has been brought to the front
Open Source Agenda is not affiliated with "Sig Gen" Project. README Source: billthefarmer/sig-gen
Stars
113
Open Issues
0
Last Commit
6 months ago

Open Source Agenda Badge

Open Source Agenda Rating