This week things move towards conclusion as we find ourselves thoroughly in testing phase. I’ve prepared a questionnaire and a queue of test-users to play with the device. We initially planned to conduct user-testing this week, but experienced challenges with the MIDI-keyboard connectivity.
The design uses the HPS ARM core on the dev-board to parse MIDI input over USB. At present, the linux kernel advertises support for ALSA, which the core was to parse, and pass as input to the FPGA in order to save LE’s for spending on the synthesis data-path instead of on decoding USB communication. While this worked for demonstration, streaming to the FPGA from a .mid file, the kernel we were running didn’t support the technology to accept the MIDI keyboard input.
Daniel and I are in the midst of trouble-shooting this block. I tried using the linux-socfpga github repository to rebuild the kernel with the functionality we need, makingĀ boot-images and device tree structures that would work for the device, then sending them to the device over UART.
Daniel managed to get the keyboard working with a relaying with a terminal that does have ASLA for now to begin. I took FFTs of the each oscillator in time using VISA to stream SCPI commands to an oscilloscope over USB and verified correctness by looking at the FFT. In this way, we also verified that the filters were removing the appropriate spectral content.
As I’ve designed this semester, I’ve learned a great deal about Linux systems, and bringing up verilog. I’ve learned about VCS, and DVE as well as how musical synthesis is achieved. I’ve learned mostly through reading data-sheets for the DE10 standard online, watching other people’s projects online through youtube or instructables, and asking AI to explain mathematics, or source me things to read.
