talkiepi

package module
v0.0.0-...-f5b2c9a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 31, 2024 License: MPL-2.0 Imports: 17 Imported by: 0

README

NOTE

This fork tries to make the talkipi working with the "Raspbian GNU/Linux 11 (bullseye)" an an current go version "go version go1.22.1 linux/arm" The original project is no longer maintained. It was archieved 17 June 2020.

talkiepi

assembled

talkiepi is a headless capable Mumble client written in Go, written for walkie talkie style communication on the Raspberry Pi.

This project is a fork of Daniel Chote's original talkiepi project. It is different because it uses only off-the-shelf components and requires no soldering.

Hardware

The hardware is based around a Raspberry Pi Zero and SeeedStudio ReSpeaker 2-mic Pi HAT. A full bill of materials with links to suppliers will be added shortly.

3D printable enclosure

The case was designed by Paul Van Gaans - PrintVeryGood.com. The geometry files are available in the stl directory.

3D wall mount adapter

A wall mount adapter was designed by @schneekluth. Instructions and files can be found here.

Installing talkiepi

I have put together an install guide here.

License

MPL 2.0

Author

Documentation

Index

Constants

View Source
const (
	OnlineLED       int    = 0
	ParticipantsLED int    = 1
	TransmitLED     int    = 2
	OnlineCol       string = "FF0000"
	ParticipantsCol string = "00FF00"
	TransmitCol     string = "0000FF"
	OffCol          string = "000000"
)
View Source
const (
	OnlineLEDPin       uint = 18
	ParticipantsLEDPin uint = 23
	TransmitLEDPin     uint = 24
	ButtonPin          uint = 17
	SeeedStudio        bool = true
)

Raspberry Pi GPIO pin assignments (CPU pin definitions)

Variables

This section is empty.

Functions

This section is empty.

Types

type LedStrip

type LedStrip struct {
	// contains filtered or unexported fields
}
var MyLedStrip *LedStrip

func NewLedStrip

func NewLedStrip() (*LedStrip, error)

type Talkiepi

type Talkiepi struct {
	Config *gumble.Config
	Client *gumble.Client

	Address   string
	TLSConfig tls.Config

	ConnectAttempts uint

	Stream *gumbleopenal.Stream

	ChannelName    string
	IsConnected    bool
	IsTransmitting bool

	GPIOEnabled     bool
	OnlineLED       gpio.Pin
	ParticipantsLED gpio.Pin
	TransmitLED     gpio.Pin
	Button          gpio.Pin
	ButtonState     uint
}

func (*Talkiepi) ChangeChannel

func (b *Talkiepi) ChangeChannel(ChannelName string)

func (*Talkiepi) CleanUp

func (b *Talkiepi) CleanUp()

func (*Talkiepi) Connect

func (b *Talkiepi) Connect()

func (*Talkiepi) Init

func (b *Talkiepi) Init()

func (*Talkiepi) LEDOff

func (b *Talkiepi) LEDOff(LED gpio.Pin)

func (*Talkiepi) LEDOffAll

func (b *Talkiepi) LEDOffAll()

func (*Talkiepi) LEDOn

func (b *Talkiepi) LEDOn(LED gpio.Pin)

func (*Talkiepi) OnACL

func (b *Talkiepi) OnACL(e *gumble.ACLEvent)

func (*Talkiepi) OnBanList

func (b *Talkiepi) OnBanList(e *gumble.BanListEvent)

func (*Talkiepi) OnChannelChange

func (b *Talkiepi) OnChannelChange(e *gumble.ChannelChangeEvent)

func (*Talkiepi) OnConnect

func (b *Talkiepi) OnConnect(e *gumble.ConnectEvent)

func (*Talkiepi) OnContextActionChange

func (b *Talkiepi) OnContextActionChange(e *gumble.ContextActionChangeEvent)

func (*Talkiepi) OnDisconnect

func (b *Talkiepi) OnDisconnect(e *gumble.DisconnectEvent)

func (*Talkiepi) OnPermissionDenied

func (b *Talkiepi) OnPermissionDenied(e *gumble.PermissionDeniedEvent)

func (*Talkiepi) OnServerConfig

func (b *Talkiepi) OnServerConfig(e *gumble.ServerConfigEvent)

func (*Talkiepi) OnTextMessage

func (b *Talkiepi) OnTextMessage(e *gumble.TextMessageEvent)

func (*Talkiepi) OnUserChange

func (b *Talkiepi) OnUserChange(e *gumble.UserChangeEvent)

func (*Talkiepi) OnUserList

func (b *Talkiepi) OnUserList(e *gumble.UserListEvent)

func (*Talkiepi) OpenStream

func (b *Talkiepi) OpenStream()

func (*Talkiepi) ParticipantLEDUpdate

func (b *Talkiepi) ParticipantLEDUpdate()

func (*Talkiepi) ReConnect

func (b *Talkiepi) ReConnect()

func (*Talkiepi) ResetStream

func (b *Talkiepi) ResetStream()

func (*Talkiepi) TransmitStart

func (b *Talkiepi) TransmitStart()

func (*Talkiepi) TransmitStop

func (b *Talkiepi) TransmitStop()

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL