drowe67 / freedv-gui

GUI Application for FreeDV – open source digital voice for HF radio
https://freedv.org/
GNU Lesser General Public License v2.1
206 stars 52 forks source link

Freedv on Raspberry Pi implementing external PTT input via GPIO pin #247

Closed pukspriit closed 2 years ago

pukspriit commented 2 years ago

Interestingly, no one asked how to connect the Raspberry Pi Freedv to an external ptt button. I assume through the GPIO pin.

tmiw commented 2 years ago

Currently FreeDV supports PTT input via the CTS pin on a serial port. On the Pi 3, at least, CTS seems to be on GPIO 16. I haven't tested this particular configuration, though, so YMMV.

pukspriit commented 2 years ago

thank you for advice. Tried this - no success. Is it UART CTS on RPI board or can it be used with USB to serioal adapter's CTS too? Active is HI ol LO level? Maybe the UART must be somehow prepared? Best regards.

Kontakt Mooneer Salem @.***>) kirjutas kuupäeval K,

  1. juuni 2022 kell 11:16:

Currently FreeDV supports PTT input via the CTS pin on a serial port. On the Pi 3, at least, CTS seems to be on GPIO 16 https://forums.raspberrypi.com/viewtopic.php?t=241623. I haven't tested this particular configuration, though, so YMMV.

— Reply to this email directly, view it on GitHub https://github.com/drowe67/freedv-gui/issues/247#issuecomment-1162794651, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKOQMKRM4S6OXRA3QEXRQTLVQLDVJANCNFSM5ZPAKC7Q . You are receiving this because you authored the thread.Message ID: @.***>

tmiw commented 2 years ago

The feature was originally developed with a FTDI USB to serial adapter, so I'd expect it to at least work with that. If not, let me know and I can look further.

pukspriit commented 2 years ago

Dear friend, Now I describe my experiments : My conditions: Raspberry Pi 3 model B v1.2 Raspberry Pi OS (32 bit) FreeDV GUI 1.4.3 devel API Version 12 Debian pakcage version 1.4.3-1gdc71a1c-1+b1 2x USB audio dongles USB <-> serial converter with DTR and CTS pins, type BTE13-009B from eBay Radio. Wouxun KG-UV8D handheld

Soundcards are working well PTT to radio on DTR works Made some experiments with external PTT: tried CTS on serial adapter, put pullup resistor 10k between CTS pin and Vcc 3v3, CTS to Ground-- nothing. Then pulldown 10k between CTS pin and ground, CTS to Vcc -- nothing. Then tried UART0 on Raspi board (ttyS0): At first disabled console as was recomended. Then repeated all I had done with adapter CTS, now the CTS pin is GPIO16, and again - no effect. I have no more good ideas. Best regards. de ES5PI 73!

tmiw commented 2 years ago

What setting do you have for "CTS = +V"? Have you tried the opposite setting to what you used for the above tests?

Also, I haven't heard of the BTE13 adapter before. In the past, I've done my testing with a TTL serial adapter using an FTDI chip, though this shouldn't necessarily matter. It might be worth trying another USB to serial adapter to rule that out.

pukspriit commented 2 years ago

This BTE13 adapter has CH340G chip. Don't know is it compatible with FTDI devices or not. About CTS settings: I am more Arduino man and operate with C++, not very clever with Linux programming. Can you tell me more about CTS settings in Linux and Raspi?

Best regards.

Kontakt Mooneer Salem @.***>) kirjutas kuupäeval R,

  1. juuni 2022 kell 10:39:

What setting do you have for "CTS = +V"? Have you tried the opposite setting to what you used for the above tests?

Also, I haven't heard of the BTE13 adapter before. In the past, I've done my testing with a TTL serial adapter using an FTDI chip, though this shouldn't necessarily matter. It might be worth trying another USB to serial adapter to rule that out.

— Reply to this email directly, view it on GitHub https://github.com/drowe67/freedv-gui/issues/247#issuecomment-1165294747, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKOQMKVAWOAJV3V6RNOUHKDVQVQZPANCNFSM5ZPAKC7Q . You are receiving this because you authored the thread.Message ID: @.***>

tmiw commented 2 years ago

This BTE13 adapter has CH340G chip. Don't know is it compatible with FTDI devices or not.

For this use case, compatibility with FTDI probably doesn't play into it. However, if there's a driver issue, that could be why there's an issue.

About CTS settings: I am more Arduino man and operate with C++, not very clever with Linux programming. Can you tell me more about CTS settings in Linux and Raspi?

There's no specific setting (other than the "+V" polarity setting in the application above).

Though I just realized--can you check the permissions of the device you're using for PTT input? You may need to add yourself to the dialout group in order to have access (more info on that: https://unix.stackexchange.com/questions/14354/read-write-to-a-serial-port-without-root).

pukspriit commented 2 years ago

Hi Mooneer, I solved the problem - as FreeDV on Raspberry Pi accept space key on keyboard to switch TX/RX, I wrote simple code on Arduino Nano. It outputs space code to USB port when I press button connected to Arduino's GPIO pin. All works wonderfull!

Have a nice day!

de ES5PI

Kontakt Mooneer Salem @.***>) kirjutas kuupäeval K,

  1. juuni 2022 kell 11:16:

Currently FreeDV supports PTT input via the CTS pin on a serial port. On the Pi 3, at least, CTS seems to be on GPIO 16 https://forums.raspberrypi.com/viewtopic.php?t=241623. I haven't tested this particular configuration, though, so YMMV.

— Reply to this email directly, view it on GitHub https://github.com/drowe67/freedv-gui/issues/247#issuecomment-1162794651, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKOQMKRM4S6OXRA3QEXRQTLVQLDVJANCNFSM5ZPAKC7Q . You are receiving this because you authored the thread.Message ID: @.***>

tmiw commented 2 years ago

Sounds good! I'll go ahead and close this issue, then.

pukspriit commented 2 years ago

Hallo, one last remark: Iied, sorry. maybe somebody wands to copy my projekt and will be in trouble ... this could not be done with NANO

I discovered this later.Then I took Sparkfun Pro Micro. It worked. Sorry again.

Regards!

Kontakt Mooneer Salem @.***>) kirjutas kuupäeval R,

  1. juuli 2022 kell 11:03:

Closed #247 https://github.com/drowe67/freedv-gui/issues/247 as completed.

— Reply to this email directly, view it on GitHub https://github.com/drowe67/freedv-gui/issues/247#event-7000017996, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKOQMKXWACNZT5CAV6K4QW3VUELOXANCNFSM5ZPAKC7Q . You are receiving this because you authored the thread.Message ID: @.***>