ElixirConf 2023 - Alfonso Gonzalez - Embedded System w/ Elixir for millions AI-based point of sales

Discover how Elixir and NERVS were used to create an embedded system capable of handling millions of AI-based point-of-sale transactions, with insights into challenges faced and solutions implemented.

Key takeaways
  • Elixir and NERVS were chosen for their accessibility, real-time capabilities, and ability to handle millions of AI-based point-of-sale transactions.

  • The initial challenge was to customize the system with a specific version of Docker inside a Docker image and integrate it into the build process.

  • To improve response time for devices connecting to the server, a WebSockets API gateway was implemented in the cloud.

  • The team faced issues with slow software startup and data corruption, which were resolved by optimizing the software, using a low-cost device, and integrating with a wallet.

  • To improve video quality and reduce memory usage, the team experimented with different encoding methods and hardware configurations.

  • They also implemented remote upgrades to ensure that devices could be updated without manual intervention.

  • The final solution involved using NERVS, Elixir, and Phoenix to create a custom design of their board, which ran on top of an API gateway to their Phoenix WebSocket solution.

  • The team emphasized the importance of choosing the right tools, measuring and collecting data, and getting support from the community.

  • They also highlighted the challenges of working with hardware, the need for expertise, and the importance of training and support for the team.