Caleb’s Status Report for 3/14

In this week I was able to link the pad system to the transmitter and then have it transmit the correct hit levels to the central hub. I am still calibrating the sensitivity and I will most likely have to increase the voltage threshold for the sending to make sure that noise is not caught. Currently it’s at 50 mV but will bring it up to 80 mV as most soft hits are around 100 mV on its first peak. I have started implementing the Multiceiver functionality of the Nordic nRF24L01+ where it can bin incoming messages to make it seem as if they come simultaneously and allow the receiver to hear on multiple channels. Also have started working on the DSP to make sure the audio is produced and heard on the user end.

I would say I am a little behind in terms of the schedule so I will definitely be in the lab this week to finish up these last few features and connect it with the software side. However, I feel as though this will not be too much of an issue as the synchronization can be made up with a sliding window of 5 ms to make sure that the hits are registered on time for the game.

I also have to measure end to end latency and notify the team so that they can create a game with enough of a leeway to accommodate for the delay.

Team Status Report for 3/7

We are almost done with a very rough end-to-end system from pad hit detection all the way to gameplay. Recently, we received our hardware parts and got most of our communications and developments rolled out for testing and further synchronization. Receiving our hardware parts almost 1.5 weeks late does push our schedule back slightly but with some of the work we did over the break we would say that we are almost on track. We just have to handle the interfacing between the central hub and the computer with a standardized communication protocol using MIDI format to convey our notes.

Some changes that occurred, is that we had to switch our transmitter modules from the Ebyte E01ML01S to the Aidepeen nRF24L01+PA+LNA modules because of some shipment hiccups but we were able to circumvent any large disruptions because these chips are all from Nordic and thus their libraries are mostly similar. Besides that we were still wondering if we should outsource our audio generation to our computer interface or through the Daisy Seed which has onboard DAC as well as SDRAM for storing our wav files for our DSP.

Part A: The main global impact of this project is how it reduces the barrier to learning drums for beginners. Typically, you would need to buy an expensive drum kit, an expensive teacher, and know how to read sheet music, etc. With PadL1, all that is needed are the few pads and access to a personal computer, which makes learning drums much more accessible on a global scale.

Part A was written by Abishek

Part B: This project attempts to accommodate cultural factors by having the learning platform not use any specific language and instead using universally understandable symbols and colors. For example, we identify the pad that needs to be hit matching each pad with a given color and the timing is shown by a note falling towards a designated hit zone. Also, in the case a missed note, we use an audio “error note” to designate this mistake. All of these features are culture agnostic and thus allows people for all cultures to enjoy our product.

Part B was written by Rishabh

Part C: This project does require a bit of resources from the environment for the hardware development of the pads such as rubber sheets, acrylic sheets, foam dampeners, and plywood backings. But in the future, with access to industry standard materials, I feel like we can make our system a lot more compact and thus avoid all the excess materials from prototyping. However, our system does not require further natural resources and is pretty compact without releasing any emissions thus presenting not much of a threat on the environment itself.

Part C was written by Caleb

Caleb’s Status Report for 3/7

In the past two weeks, I was able to successfully communicate between pad and central hub transceivers using the code with low latency on LPA mode (low power) meaning that it will most likely see an increase in throughput and decrease in lossy-ness if we increase the Power and transmission settings. Additionally, I was able to assist in developing our drum pad system with the voltage regulators. I am currently working on the MIDI format as well as the audio system playback from the central hub after being able to process the incoming packets.

Some things that are to note: On startup and flashing both the RX and the TX code need to be powered on and off otherwise it does not work correctly off of boot. I am trying to debug that currently but for now the simple fix is to disconnect the power source and reconnect it. It’s important to note that the TX circuitry requires and operates on 3.3V logic. I am still figuring out the Daisy Seed Library as it has a lot of documentation and capabilities for digital signal processing, audio output, and MIDI format outputs via USB.

I would say that I am pretty on schedule with my progress but could do a bit more research on the daisy seed to put our team ahead of schedule.

The Link Lost message printed because the transmitter only activates every second to send a packet and otherwise sleeps to save on battery prompting the loss of connection.

Caleb’s Status Report for 2/21

I developed the nRF24L01 communication protocol on C++ for both the receiving logic and the transmitting logic that should be on both the  Ebyte E01-ML01DP5 and the transmitter. We had to quickly order a new set of transmitters because our order for ML01S were cancelled. I am currently testing the code on the pair of ML01DP5 modules I have right now and it seems as though the protocol is working with consistent 5 ms latency. I did this by taking timestamps of both transmission and reception of ack packets from the transceiver. My only concern would be the ability to supply power to the pads but for now it should be sufficient to plug in 9V batteries with a step down convertor to 5 or 3.3V which should last a couple of hours (2-3 hrs).

Furthermore, I am working on the assembly of the pad and will get to cutting up the wood backing, acrylic impact plate, both backing and padding foam.

One of the big bottlenecks is not having the receiving & central hub modules on hand to actually implement and test the code; additionally, we don’t have the piezo discs to actually test the implementation and threshold. So instead of waiting to develop the pad until the piezos come I started with the implementation of the wireless communication protocol allowing for us to still be on schedule. 

Team Status Report for 2/14

Overall, the project is moving along and we are adapting to the delay in the material acquisition well by developing our software side and some hardware code which we find hard to verify without the presence of the actual circuitry we are implementing on. The biggest risk is not being able to verify our coding constructs because we do not have the hardware aspect to build upon for our interfacing between all of our respective areas of design. We are trying to mitigate this risk by unit testing our functionality of software and hardware systems with similar products such as the Arduino Uno to mock that of the Arduino Pro Mini developing our data packaging algorithm. In the case we are unable to acquire the necessary parts for the project we can change from our miniature model to a bit larger model using the Raspberry Pi’s in the inventory instead of our small Daisy Seed for processing and changing it so that our logic can be moved between RPi and the computer rather than having it fully onboard as in the Daisy Seed.

We made a few changes to the hardware requirements/design choices of this design. We moved from ESP32 to the Ebyte E01-ML01 series because of the nRF24L01+ performances compared to the performances of the ESP32 on average latency. This article provided a comprehensive study comparing the costs of the different Wireless transmitting modules and I found that the Ebyte E01-ML01 most closely aligns with our hardware requirements for low latency. We just need an additional, inexpensive Arduino Mini Pro 3.3v chip to communicate with this transceiver module and send data and power accordingly. Also the E01-ML01DP5 comes with a multiceiver functionality where they can receive packages from multiple channels simultaneously.

Another change to the hardware design is the change from FPGA to the Daisy Seed Microcontroller. After listening to feedback on our proposal presentation, we found that the complexity in the code was not enough to offset the tradeoff of the low latency it provides. Furthermore, the Daisy Seed is specifically a microcontroller built for audio mixing with 64 MB of onboard RAM, an onboard Audio output pin, SPI pins for the receiver, FPU compliant, and usb port to communicate and receive power from the computer. This is a relatively fast microcontroller capable of handling some expensive or complicated operations which gives us the same advantages of an fpga but this microcontroller has a lot of RAM to allow us to store our audio samples. The SPI pins allow us to communicate with our receiver module and the usb port allows for communication with the computer to alter game state.

 

PART A:

From a psychological health and welfare perspective, the interactive learning platform promotes motivation, engagement, and sustained skill development through structured feedback and clear progression. The level-based system and performance summaries provide users with measurable goals and positive reinforcement, which can reduce frustration and performance anxiety often experienced by beginners. By allowing users to practice at home with portable, configurable equipment and even upload their own music, the system lowers barriers to musical participation and supports long-term learning regardless of access to formal instruction or dedicated practice spaces. Overall, the product aims to enhance user well-being by making music education safer, more approachable, and more inclusive.

Part A was written by Abishek

PART B:

As mentioned in our use case audience we are targeting beginner / intermediate musicians who want both the authenticity of certain instruments coupled with a portable and engaging learning experience to grow. So our game experience allows the user to be able to interact with our system in a manner conducive to education and improvement. The use of partitioning the system into distinctive pads, central hub, and computer allows for the user to configure different amounts of pads, instrumental sounds, and bring anywhere compared to the clunky electronic drums now. This will lower the barrier of entry for musicians into any field allowing there to be a greater intake and participation of the musical arts. I would say our system tries to provide the closest real world feedback while maintaining the benefits of the portable electronic pads.

Part B was written by Caleb

PART C:

When design our product and considering economic factors, we had the benefit of having several previously made products which implement various drum pad features at prices ranging from $60 to several hundreds of dollars. We want our product to improve the configurability and usability of the cheaper existing products, and thus many of our components had to available at low cost. This decision to use cheaper products caused us to make several component changes such as moving our processing from an FPGA to the Daisy Seed Microcontroller and moving our networking from an ESP32 to the Ebyte E01-ML01 series. Additionally, our mission to reduce cost also caused us to adjust our product solution to have each distributed pad be as simple as possible with the central hub being where most processing takes place. Since each pad is extremely simple, they can be made cheaply and thus most of our costs will come from the central hub. Here we’re also able to reduce costs since our interface is able to plug into commonly available devices such as a computer and audio speaker. We have our interactive learning platform can be hosted on any computer and after simple processing from our MCU, the output can be played from existing speakers. Since these are commonly available items, it’s unlikely that consumers will have to bear these costs, reducing the expense of our product. Thus, by using highly modular components and taking advantage of existing products and interfaces, we’ve been able to design our product to reduce costs while maintaining the fundamental learning experience.

Part C was written by Rishabh

Caleb’s Status Report For 2/14

This week I got (1) the BOM finalized and ordered the items for the very first prototype of both the pad and central hub system, (2) found online free drum sample libraries to load onto the central hub microcontroller for real time convolution to mimic real drum audio, and (3) developed the specific circuitry and connectivity of all hardware systems.

I don’t really think that the central hub will have too much variation in architecture so I feel confident that we don’t have to change the architecture/design. However, for the pads I ordered the very preliminary design which uses a rubber head and piezos to detect impact. This might not give the sensitivity we require to pinpoint location and impact characteristics so we might have to look for a different configuration but this requires the prototype to be tested using FSR, PVDF, and mesh head.

I started developing the base bootloader code for the Arduino Pro Mini  & Daisy Seed that we will be using for data packaging and central hub logic respectively. The Arduino Pro Mini can be flashed using an Arduino Uno so that should be fine but in the Daisy Seed I need to flash both the RAM with the audio samples on boot as well as the code I want to flash it with. So I am reading the datasheets currently to figure out the setup code for each of these.

I feel as though my process is only a couple days behind because we cannot start developing or testing the code until we have the hardware components and that is our biggest bottleneck in this project. However, the software side seems to be making some progress in their translation.

By next week we hopefully receive the materials we ordered so that we can develop a working prototype of our central hub ecosystem with the hardware and basic unit testing code for the audio output and the SPI interconnect with the receiver hub.

Team Status Report for 2/7

We have developed our presentation and reviewing our design, adding new information from research papers that have developed augmented drum pads before and going to be developing our network protocol soon. We are finalizing our BOM over this weekend and having our design checked by the faculty and TA soon.

The largest risk at this moment is not getting our parts on time to get prototyping to allow significant leeway for our versions in due time. In order to combat this we need to get our design checked and BOM finalized as soon as possible.

Attached is the link to our BOM currently as we begin to make adjustments and order backups in case our design needs additional requirements. There are no additional changes to our design as of now.

Caleb’s Status Report for 2/7

I spent this week mostly preparing for the proposal presentation on Wednesday and researching papers from the NIME that have done previous percussive augmented designs to draw inspiration from. After researching I have compiled a basic list of parts for the hardware aspect that are not specific yet.

I plan to finalize the hardware portion of the BOM by Sunday or Monday but after finalizing this I would say I am slightly behind schedule for prototyping. I can get on schedule only once I obtain the materials to start the prototyping.

I need to converse with the faculty and TA more to get more specifics on the designs and vendors for our product.