- Add a slammer button
- Get sound output working
- Hook up buzzer via mosfet?
- Proper wiring
- Proper volume from speaker
- Missing screw
- Add rotary detector
- Rotary connector
- Get microphone input working
- Why is there so much distortion? oscilloscope time -> mic is broken
- Hook up all buttons
- who makes the bluetooth connection? -> chatgpt says that the HF should initiate the connection when powering up
- Create timer framework
- Add battery
- prevent default echoing (if needed?)
- Add battery indicator
- Figure out interface (buttons, slammer, )
- Add "Operator" sound
- Add chatgpt integration? Talk to GPT-4o
- debounce horn lift
- fix the
The device emits a clock and a word-select channel (for left/right). Then an input and output pin are used to send/receive the data.
xTimerCreate can be used.
Automatically set by the proprietary bluetooth stack, when configured via PCM.
Alternatively we can use HCI and get/set it ourselves.
Ctrl ] or Ctrl x seems like it should work?
https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/tools/idf-monitor.html
We have 6 buttons
- Red
- Black
- 4x white
And two more inputs:
- Rotary dial
- Horn slammer if current call: hang up if no call:
And then three indicators:
- Flashing indicators
- Buzzer
Pick up and get Google assistant right away?
It would be really cool if we could make it say "Operator" in a cool voice.
And if so, can we use the black and red buttons to switch between them? Also red / black could be assistant vs actual call?
Yes, but only when the same GPIO for PCM input and output is used
ESP_HF_CLIENT_COPS_CURRENT_OPERATOR_EVT probably the mobile network operator name
Pin 25 is hooked up to a low-power configuration or something, so I had quite some trouble figuring out whether there was a short in the circuit or not.
Debugging th
This is currently not possible
The esp stack needed to be modified to disable high quality audio in the bluetooth negotiation. TODO add link