Gene Chang’s Status Report for Feb 14

This week focused on exploring and implementing communication methods between the ESP32 and the software layer, while continuing hardware integration for the LumiKeys system. Specifically, I focused on evaluating different connection methods, integrating LED control with the ESP32, and prototyping communication between the ESP32 and a Python-based interface.

Hardware Integration and Communication Prototyping

  • Researched and evaluated multiple communication approaches for connecting the ESP32 to a computer and software layer, including Bluetooth and MQTT-based web services.
  • Selected Bluetooth as the primary method for the proof of concept due to its simplicity, low setup overhead, and suitability for short-range communication.
  • Integrated NeoPixel LEDs with the ESP32 and implemented basic LED control using the Arduino IDE to verify that LEDs can be addressed and controlled reliably.
  • Investigated methods for transmitting note and color data between Python and the ESP32, including the use of structured data formats such as JSON for communication.
  • Focused on prototyping the connection between the ESP32 and the Python layer to establish a stable communication workflow before full hardware assembly.

System Planning and Preparation

  • Planned the transition from prototyping to full assembly by identifying components that will need to be ordered once the communication architecture and hardware configuration are finalized.
  • Prepared for scaling from breadboard prototyping to a complete physical model after validating communication and control workflows.

Schedule

I am currently on schedule, as communication methods have been evaluated, LED control has been successfully integrated with the ESP32, and the architecture for Python-to-ESP32 communication has been defined.

Deliverables for Next Week

  • Fully integrate Bluetooth communication between the Python program and the ESP32.
  • Develop the first prototype demonstrating LED control through Bluetooth commands sent from Python, including color coding and structured message formats.Test transmission of force-sensitive resistor (FSR) input data to the Python layer and verify that key presses are detected and recorded reliably.

Part B – Social FactorsThe LumiKeys system is designed with consideration of social factors, particularly accessibility to music education and differences in how people learn in modern social environments. Many beginner piano learners rely on online tutorials or self-guided learning due to limited access to formal lessons, which may be influenced by cultural, geographic, or financial constraints. By providing real-time visual guidance and note verification on any existing piano, LumiKeys supports learners who may not have access to private instruction or structured music programs, helping to reduce barriers to participation in music as a social and cultural activity.

In addition, the system is intended to support collaborative and informal learning settings, where friends, family members, or online communities share music learning experiences. Because the device is portable and designed to work with standard acoustic pianos, it can be used in homes, schools, and shared spaces without requiring specialized instruments. This flexibility allows the product to fit into diverse social contexts and encourages music learning as a shared and engaging activity rather than an isolated or resource-intensive one.

Leave a Reply

Your email address will not be published. Required fields are marked *