0xCA5A / jbert

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The jbert Project

Idea

The Hörbert (https://www.hoerbert.com) is cool but too expensive and not flexible enough.

The Toniebox (https://tonies.de) is cool, but the tonies are too expensive.

Prototype Hardware #1

Audio player with 9 buttons and a RFID reader to control the audio playback.

jbert prototype #1

Hardware Components

  • Raspberry Pi Zero W (AliExpress)
  • Waveshare WM8960 Hi-Fi Sound Card HAT for Raspberry Pi, with speakers (AliExpress)
  • MFRC522 RFID Reader (AliExpress)
  • RFID chips (AliExpress)
  • Buttons (AliExpress)
  • USB-B jack (AliExpress)
  • Jumper calbes (AliExpress)
  • Samsung Evo+ microSD UHS-I (32GB, Class 10) (https://www.digitec.ch)
  • Micro USB calbes (private stock)
  • Powerbank (present from Spital Uster (https://www.spitaluster.ch))
  • Housing, rotho tupperware (Migros)

Software

The list is not complete.

How-To

Install Raspbian

  • Copy the Raspbian system to the microSD card (Tested with 2019-07-10-raspbian-buster-lite.zip)
    country=EU
    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
    
    network={
        ssid="NETWORK-NAME"
        psk="NETWORK-PASSWORD"
    }
    

Bootstrap jbert

To install all needed software packages / drivers:

sam@guido:~/projects/git/jbert$ ssh-copy-id pi@$JBERT_IP
sam@guido:~/projects/git/jbert$ ./bootstrap.sh $JBERT_IP

Deploy jbert Application

Debian package build (gradle nebula plugin) and deploy is documented in this two scripts:

sam@guido:~/projects/git/jbert$ ssh-copy-id pi@$JBERT_IP
sam@guido:~/projects/git/jbert$ ./cleanBuild.sh && ./deploy.sh $JBERT_IP ./build/distributions/jbert-0.3.0.deb

Manage MPD Audio / Playlists

Connect using a MPD client (http://ario-player.sourceforge.net). Or copy audio files and playlists using scp or rsync.

sam@guido:~/projects/git/jbert$ rsync --chmod=664 --chown=mpd:audio -avh music playlists pi@$JBERT_IP:/var/lib/mpd/

Monitor Target JVM

Due to the fact that the Raspberry Pi Zero hardware is not the most powerful one it might be good to understand what is going on on the target JVM. This can be done using VisualVM.

How to connect using a SOCKS proxy is described here: https://dzone.com/articles/visualvm-monitoring-remote-jvm

About


Languages

Language:Java 96.2%Language:Shell 3.2%Language:Dockerfile 0.6%Language:Scala 0.1%