IRIS demo's on youtube:
Streaming on internal speaker:
Streaming on bluetooth speaker:
Waking up, preparing and reading RSS channel:
Hardware components:
- Rasbperry Pi A+
- NVRAM+RTC module (separate PCB): Atmel 24C512+DS1397
- Internal speaker amp module (separate PCB): NE5532
- Balanced PSU for internal amp (separate PCB): LM2577 S ADJ + ICL7660, with on/off switch controlled by GPIO pin (via solid state relay)
- Display: Winstar WEH001602 16x2 OLED in SPI mode
- Keyboard module: original keyboard PCB from the clock, with modifications
- Internal speaker: Visaton FRWS 5R 5cm wideband speaker
- WiFi and bluetooth access: any Raspberry Pi compatible WiFi/bluetooth USB sticks
Software:
IRIS is appliance built on Nard Linux (http://www.arbetsmyra.dyndns.org/nard/)
- System runs from initrd with minimal necessary configuration: kernel and a few essential processes
- No filesystems are mounted during normal operation - you can switch IRIS on and off at will without damaging filesystems
- All system settings are stored in NVRAM chip (Atmel flash)
- IRIS firmware can be easliy updated using firmware images. (Initial sdcard image is about 40MB, firmware images are about 35MB).
- 70MB of RAM is used out of 256 avaliable in RPi A+ model. Most of RAM is taken by resident Initrd image (about 40MB).
Core of IRIS is application developed in C, using following technologies:
- BASS library for streaming music
- libXML for parsing RSS feeds
- Pico TTS for TTS features
- libmicrohttpd and GNU TLS for secure web admin interface
IRIS runs Kernel 3.18.12 with RT-PREEMPT patches.
Todo’s:
- finish admin web interface
- implement REST-like API for config/control (possibly from android/IOS app)
- add Spotify support and possibly support for other music services
- add nice spectrum analyzer
- maybe add voice recognition/voice command support