A randomized sequencer that converts an audio source into a melody.
Jannik Aßfalg & me
Research, Ideation, Concept, Prototyping, User-Testing, Product Design, Rendering
study project, second semester
Many music producers struggle with writer's block and are constantly looking for new ways to stay inspired. Ran.Seq helps producers to get new ideas by quickly providing them with a variety of random melodies, generated from environmental sounds.
Ran.Seq has an integrated microphone that continuously captures sounds from the environment and displays their waveforms on a screen. Should a melody be generated, the recording can be stopped, and new sounds are generated based on the amplitudes of the waveform. The results are organic and almost random. The melodies can be generated rapidly and iteratively until a suitable sequence of tones is found, providing a starting point for further refinement.
We developed a minimal viable product using Arduino microcontrollers, which we iteratively expanded and improved based on user testing insights.
The microphone input is captured and stored in an array for further data processing. The array is constantly overwritten until the Generate button is pressed. The acoustic data is mapped to the MIDI note range and transmitted to music software on a connected laptop via the USB interface. A second Arduino, connected via the I2C protocol, controlled the displays and read the buttons, rotary encoders, and switches. For the final version of the prototype, a case was created using laser-cut plastic. For the final version of the prototype, a housing made of laser-cut acrylic was created.
We conducted usability testing with four testers. Our main objectives were to identify any weaknesses in the product and address unresolved questions. The tests were insightful, and overall we received highly positive feedback. All users expressed a desire to use our device when it undergoes further development. We were able to confirm that the connections between ambient sounds, the oscilloscope, and the generation of new sequences are comprehensible. Lastly, our product encourages experimental and iterative work in most cases. There was also negative feedback from which we drew conclusions and subsequently further developed our prototype.
Ran.Seq was intended to have a technical and precise appearance. It should have a clear and understandable design to contrast with the randomness of the output. The arrangement of elements is based on a square grid. The controls are semantically grouped and ordered according to their usage sequence.
We initially worked on the design prototype in a two-dimensional format using Figma and later converted it into a three-dimensional model using Blender. Throughout the process, we created test prints consistently to evaluate sizes and arrangements.
The functional prototype did not achieve the full range of functionality originally conceptualized. However, we managed to develop a quite usable instrument that meets our objectives. Ran.Seq can iteratively generate new random sequences. Its usage is enjoyable and quickly leads to good results. The design prototype has resulted in aesthetic design, and we have succeeded in making the true vision of the product more tangible. The enthusiastic reactions during usability testing have shown us that Ran.Seq is a highly promising concept.