NGALAC/Subsystems: Difference between revisions
(→Audio) |
No edit summary |
||
Line 2: | Line 2: | ||
[[Category:Maker Faire]] | [[Category:Maker Faire]] | ||
[[Category:NGALAC]] | [[Category:NGALAC]] | ||
---- | ---- | ||
== Subsysterms == | |||
[[File:Component-Diagram.png|640px]] | |||
== Power == | == Power == | ||
[[File:Power_Connections-final.png|none|640px]] | [[File:Power_Connections-final.png|none|640px]] | ||
Revision as of 22:42, 20 April 2018
Subsysterms
Power
Streaming PC
BIOS setting for Auto-on with power-on (e.g. from switch)
Audio
- swap out audio receiver for car amp thing
- Fest autio streaming with mic, cabinet audio, and stream audio
- Found a woofer to test with (tbd)
- Impedance matching circuit
Gainclones are a DIY version of a $3000 audio system called the GainCard.
NGALAC possesses a LM3886TF based dual supply amp which requires a split rail +28/-28 DC supply
Example DIY circuits which are easy to build with clear instructions
DIY PSU price is very high, will compare to purchase options
Using computer PSU may be possible after boosting +/-12 to +/-28, however, current on -12V line may not be enough to rate maximum wattage
Qty | Short Name | Price | Part | Link | Part Total |
---|---|---|---|---|---|
1 | Transformer Dual 28V secondaries, 4.6A Max current | $28.00 | VPS56-2300 | Digikey | $28.00 |
16 | Diode | $1.00 | MUR860 | Digikey | $16.00 |
4 | Linear Voltage Regulator | $2.10 | LM338T | Digikey | $9.00 |
8 | Rectifier Diode | $0.20 | LM4002 | Digikey | $1.60 |
4 | 1200uF Radial Aluminum Electrolytic Caps | $1.00 - $6.00 (depending on current) | EEU-FS1J102B | Digikey | $24.00 |
* | Various Caps and Resistors (1W) | $10.00 | * | * | $10.00 |
Total | $95.00 |
Electrical
- Ground everything and very well, especially anything the human touches.
OBS automation
inputs -> Arduino/RaspberryPi <-> CmdMessenger <-> Serial port <-> USB <-> streaming CPU <-> PyCmdMessenger <-> obs-wc-controller <-> obs
Guardian Process - Windows OBS restart automatically on fail strategy
OBS Web Socket Plugin | Sets up a websocket API for OBS |
obs-wc-rc | Python library to interface with OBS websocket API |
PyCmdMesssenger | Python library for CmdMessenger using serial port |
CmdMessenger for Arduino | Arduino CmdMessenger library to communicate with PyCmdMessenger on server via serial port |
OBS websocket plugin
obs-wc-rc
Query and send commands to OBS from python (can theoretically control everything)
Arduino
- Debounce buttons
- better debounce - digital filter based
- Pressure switch for "player in front of machine"
- Note: arduino.ArduinoBoard(enable_dtr=False) See: ##Known Issues in PyCmdMessenger
Arduino code using CmdMessenger library for talking through serial port to python orchestrator
Python code to pair with CmdMessenger
First 3 states are switches set high or low
Last 3 are LED states (or anything else)
Can trigger LED strips or whatever else as we wish, run pre-defined patterns, etc.
Software
Arduino IDE 1.8.1+ * CmdMessenger Python 3.5.4+ * vitualenv, virtualenvwrapper-win, PyCmdMessenger, obs-ws-rc Git
Config Files
Controllers
- evtest to check inputs from the IPAC-2 on rpi
- add player 2 keys to retropi retroarch config
maybe physically generate a plug/unplug signal via detection to arduino and trigger this: https://zedt.eu/tech/linux/restarting-usb-subsystem-centos/
arduino triggering done by detecting various grounding or other (is there a power? must be.) for each controller, then sending that to arduino, then to pi.
usb stuff - polling on rpi
full jsx linux system https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/tree/Documentation/input/joydev/joystick.rst
notes
keep alives for obs, obs restart on power on, rpi watchdog, faulover OBS instance, switched by obswsrc cannot connect. how will this work with auto start, and how to select which instance is stealing?
static electricity on case
Arduino COM port detection on streaming PC in python
Do we want to record and stream?
Hwinfo for monitoring streaming PC? whyzit shuttin dwn.
4/7/18 added obs to restart on crash and moved lauch_obspy to restart_obs.bat
add rpi input detection and set timer to tell stream PC to stop streaming (probably through Arduino or API call)
udev rules
ACTION=="add", SUBSYSTEMS=="usb", KERNELS=="6-5:1.0", SYMLINK+="input/joy"
udevadm test -a /sys/path or /dev/path
udevadm test /dev/thing i think
udevadm info --name /dev/thing --query=property
udevadm info --a --name= /dev/thing
udevadm trigger --verbose -dry-run --type=devices --subsystem-match=usb
udevadm monitor --kernel, --udev, or --subsystem-match=usb
Networking
- Raspberry Pie not auto-connecting to net by default. Should it?