Georgios Balaouras
← Back to projects Pi Messenger

Pi Messenger

June 2019

A distributed messaging system where Raspberry Pi 0 devices communicate over Wi-Fi. Each device acts as a node, generating and forwarding messages to ensure information reaches all devices.

Key Features:

  • Multi-threaded TCP architecture: Server, Client, and Creator threads running simultaneously
  • Energy-efficient: Client sends messages at 1-minute intervals to conserve power
  • Synchronization: Mutexes prevent race conditions when accessing shared resources
  • Event-driven messaging: Interrupts trigger new message creation at random intervals

The system uses passive-mode server threads waiting for connections, and clients that periodically check for active devices and deliver pending messages.

BaseLayout>