SlabPi: Difference between revisions

From NURDspace
No edit summary
mNo edit summary
Line 9: Line 9:
}}
}}
==What==
==What==
SlabPi is the replacement for [[Slab]] on a [https://www.raspberrypi.org/products/raspberry-pi-3-model-b/ Raspberry Pi 3]. It has been moved, because of [[downscaling]].
SlabPi is the replacement for [[Slab]] on a [https://www.raspberrypi.org/products/raspberry-pi-4-model-b/ Raspberry Pi 4]. It has been moved, because of [[downscaling]].
It will be challenged with as much infra a Raspberry Pi can handle.
It will be challenged with as much infra a Raspberry Pi can handle.



Revision as of 19:09, 7 March 2020

SlabPi
Slabpi2.jpg
Owner Invict
Status Infra
Hostname slabpi.dhcp.nurd.space
Location Near the amp
Tool No
Tool category

SlabPi

Slabpi2.jpg {{{InventoryOwner}}}Property "Tool Owner" (as page type) with input value "{{{InventoryOwner}}}" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process. Near the amp

What

SlabPi is the replacement for Slab on a Raspberry Pi 4. It has been moved, because of downscaling. It will be challenged with as much infra a Raspberry Pi can handle.

It runs the MPD Server and espeak, other audio related things and a label printer. It is running on Raspbian Stretch Lite.

A DAC+ Hat has been added for better audio quality.


Recently we switch to using Pulseaudio which allows us to have multiple-streams, multi-room audio, and somehow allow people to send audio to the slabpi (Untested).

Networking

It is hooked up with UTP. WLAN has been disabled.

DAC+

PiFi HIFI DAC+ Digital Audio Card added for better audio quality.

Installation:

Edit /boot/config.txt

Disable the line

#dtparam=audio=on

add

dtoverlay=hifiberry-dacplus

MPD

Currently runs through LiquidSoap, so there is a +- 30 second delay. Ask r3boot ;).

Fixed an issue where MPD hangs on song change. Fix it by uncommenting "device" option in the "audio_output" block (in my case ALSA) in mpd.conf. This is a common error.

Connection through client.

Host: slabpi.dhcp.nurd.space

Port: 6600

It is integrated with Home Assistant view on Jarvis.

HTTPD outputs:

  • port 6666 (8000:16:1) used by the VOIP system
  • port 7777 (44100:16:2) used by Audiophiles

PulseAudio

The SlabPI is now running PulseAudio, this allows multiple streams to be play simultaneously without having to stop/kill MPD.

Eventually, PulseAudio will be made accessible through the network so everyone can dump their audio to the Slabpi. Pulseaudio should be accessible over the network, I don't really know yet if it really works though.

Icecast

There is an icecast server running again on port 8050. It's a direct feed from Pulseaudio so all sounds (Entrance themes, speak commands) will be heard on the stream. Perhaps I'll eventually make MPD send to icecast as well for a "clean signal"

Mount point(s):

  • /nurds (Pulseaudio)

Stream will also display the current playing song or the state of MPD (if paused and such).

Script can be found here

MPD Control

For those not wanting to install a MPD client, there now runs a small MPD client on port 80 (ypmd) that can be used to directly control MPD.


Youtube

This project now has it's own wiki page, MPDTube

espeak

Espeak is now functional, there were ALSA problems. We Pulseaudio now!

Motion webcam

Running motion for webcam, see this link

Possible resolutions:

  • 160x120
  • 320x240
  • 640x480

Can be checked with:

v4l2-ctl --list-formats-ext

It is included in the Home Assistant view of Jarvis.

Labelprinter implementation

Labelprinter is up and running. See Labelprinter.

Entrance Themes

It has a script running which plays a part of a song for each individual member entering the space. See Entrance themes.

Vu Meter

hass-systemd-manager

Start with (but should start after reboot now):

systemctl start manager

WIP

  • espeak Nurdbot implementation Seems to work!
  • Moar cams
  • Move logging to mounted location to preserve the micro SD card quality.
  • Backups
  • Icecast server? running!
  • Scrobble to last.fm? (Believe we had some privacy concerns with this)