What is the buzzer?
A small device that beeps when stuff happens
How do I get one?
Any device that emits noise (or light if you prefer that) when 3.3V is applied and is silent when 0V is applied can be used. The one I like is a Grove Active Buzzer:
How to hook it up?
I'm using the servo pin for this purpose. So the servo pin controls the beep, while GND/5V power the beeper. It is also possible to power it straight from the servo pin but some buzzers may not be loud enough at 3.3V.
You will need a 3-pin JST-PH connector, see the first comment for how to wire it.
What firmware do I need?
Any 6.x firmware with the float package supports it
**Also: to enable it: Beeper=TRUE in Float Config - Specs (6.0+) - or in App-General set Enable Servo to TRUE (in 5.3) or **
What's the behavior?
Here's the list of situation when it beeps:
Constant beep when foot sensor fault detected at speed (beeps only exactly as long as you’re off the pads), consider checking your sensors or lowering your adc switch values
Duty tiltback angle set to 0? It will beep instead whenever you hit or exceed your duty cycle tiltback threshold
Beep on surge when surge is enabled
Triple-beep when high voltage tiltback triggered, triple-beep on low-voltage
Beeping when 2-3 degrees away from overtemperature throttling
On boot: short beep when VESC boots, long beep when balance app is ready (and each time you write app config!) or triple-beep when float package is disabled
LV beeps on boot: Are we less than 5V above LV tiltback threshold? Issue 1 beep for each volt below
10 seconds after you step off your board: if you’ve ridden 100m or more you’ll hear one short beep telling you that the odometer has been updated in permanent storage (it’s not a good idea to update it there constantly because the type of memory used has a limited number of times it can be written to, hence this behavior)
Only in ATR23+: 6 short beeps when you mount your board with an ERPM limit of <= 10k configured
Board still-on reminder: 30 minutes after disengaging it will start beeping - double-beep every minute, also serves as a “charging finished” notification, it triggers when the measured voltage has not increased in the past 60 seconds
Can I configure it?
In Specs you can disable the beeper entirely
Since Float Package v1.0 you can configure some of it:
- footsensor beeping can be disabled now
- duty beeping can be enabled (beep at same time when tiltback starts)
Here’s how to wire the LFOC servo connector to the Seeed Grove Buzzer:
Any reference for the JST connector :}?
A standard JST connector (2mm pitch) will do, correct?
Also, looks like 4-pin to 3-pin is needed to connect to LFOC v3+? Any alternative to going all in w/ having to purchase crimping tool + 100s of wires/connectors :}? E.g. would it make sense to depin/repin existing separate already wired (crimped) 4-pin and 3-pin connectors, thus avoiding the crimping headaches ;)?
Thanks for any insight…
3-pin, no? Servo, 5V, GND. Don’t have a buzzer myself, just going off the diagram. But yes, JST-PH with 2mm pitch
3-pin for the LFOC yes. The buzzer clearly has a 4-pin connector, one is unused I guess.
Ah my bad, misread your reply. Honestly, dont take this as an official recommendarion lol, but for these JST connectors I’ve just cut them with cutting pliers to be the right number of pins before lol. Just need to make sure you dont take out the wall of the 3rd pin, and might need to trim material off the top/bottom of the connector so it fits the port. Again, huge grain of salt on that advice
Proper way would be acquiring a 3pin connector and just re-pinning it, which is extremely easy with these connectors. I just lift the tabs with an exacto knife and pull the wires from the connector, then push them into the new one and they click in
I got the buzzer in the link and just cut the cable it came with and grabbed a 3 pin JST harness that must have came with something I ordered. I soldered the wires based on the diagram and was done.
I would like to see buzzer 4kHz options in Vesc float package for cheap buzzer like (LCSC#: C255309
Now only option is ON/OFF for buzzer, but that cheap buzzer need ~4kHz square wave. Could anyone please add that feature in Vesc float package.
Why though? Sounds like a waste of time. Good luck finding someone to do it
This feature will also support all passive buzzers, not only active ones. So people won’t have to pay attention to which buzzer they will buy VESC already has a servo pin then there should be a pwm function already written but I can’t find it. My programming skills are :(. If I’m not mistaken all that needs to be changed is that when the EXT_BUZZER_ON() function is called a ~4kHz square signal with a 50% duty cycle appears.
Why not include the active buzzer in your open source design?
Because it is soldered on a VESC PCB and it is much smaller cheaper and can be pitched from ~2kHz to 5kHz
will active low buzzer setting be added?
these ones would be plug and play and are cheaper
You can add whatever you want when you build your own package. As far as I’m concerned the buzzer problem is done and I’m not touching it anymore until I have a very good reason to do so.