working on a auto-signal generator