alexisruccius

alexisruccius

Ht16k33Multi – Easy Multi-Display Support for HT16K33 with 7-Segment Displays

Hey everyone!

I just published a small but handy Elixir library called Ht16k33Multi, designed to drive multiple 4-digit 7-segment displays powered by the HT16K33 LED driver chip via I²C.

What’s It For?

If you’re working with LED displays on Nerves, Raspberry Pi, or any I²C-capable hardware and want to display characters across multiple 7-segment devices, this library makes it super easy to:

  • :white_check_mark: Manage multiple display devices using GenServer names
  • :writing_hand: Write characters and words to one or many 7-segment displays
  • :light_bulb: Control dimming and blinking

:white_check_mark: Features

  • Display numbers on a 7-segment display
  • Display words using a built-in 7-segment font
  • Support for multiple displays (hence the “multi” in the name!)
    → Easily chain HT16K33 chips to show full sentences
  • Use built-in blinking and dimming features of the HT16K33
  • Well-documented with inline examples

:sparkles: Example

# Start the Ht16k33Multi GenServer
iex> Ht16k33Multi.start_link()

# Write to the display
iex> Ht16k33Multi.write("Hola")

# Enable blinking
iex> Ht16k33Multi.blinking_on()

:package: Installation

Add the dependency in your mix.exs:

def deps do
  [
    {:ht16k33_multi, "~> 0.1.0"}
  ]
end

Then fetch it with:

mix deps.get

:books: Learn More

Most Liked

alexisruccius

alexisruccius

HT16K33Multi v0.2.2 – Now with Colon Segment Support

Hi everyone,

I’m happy to announce that HT16K33Multi v0.2.2 is now available!

What’s New

:new_button: v0.2.0

Added support for controlling the colon segment, which is especially helpful for clock-style displays:

  • colon_on/1 / colon_off/1 – toggle colon on a specific display
  • colon_on_all/1 / colon_off_all/1 – toggle colon on for all displays

:hammer_and_wrench: v0.2.1

  • Fixed an issue where displays weren’t fully cleared on startup

:hammer_and_wrench: v0.2.2

  • Fixed an issue with dependency resolution

I’ve been testing this on actual HT16K33 hardware and things seem to be working well so far.
If you try it out, I’d really appreciate hearing how it goes on your end!

Feel free to report issues in the GitHub repo—PRs are always welcome!

Where Next?

Popular in Libraries Top

blatyo
https://www.conduitframework.com/ The best overview for how things are tied together is this presentation. Modules and functions are pre...
New
OvermindDL1
Been making an MLElixir thing (not released yet…) for fun in spare time in the past day. I’m just trying to see how much I can get an ML...
132 13487 106
New
achempion
Hi, I would like to tell about my initiative to further maintain and develop Waffle project which is the fork of Arc library. The progre...
New
Azolo
Hey everyone, I just released WebSockex which is a Elixir WebSocket client. WebSockex strives to work as a OTP special process, be RFC6...
New
arkgil
Hi all! I’m happy to announce that Telemetry v0.3.0 is out! This release marks the conversion from Elixir to Erlang so that all the libr...
New
mcrumm
If you would like to migrate away from node/npm/webpack while still using sass, the dart_sass package provides a installer and runner for...
New
pkrawat1
Hey guyz We at @aviabird are working on a payment library in elixir/phoenix. We are targeting March 2018 to add 56 Gateways to it. Have...
New
mathieuprog
Hello :wave: Allow me to introduce you to Tz, an alternative time zone database support to Tzdata. Why another library? First and fore...
New
Crowdhailer
I have been updating a library that allows you to pipe between functions that use the erlang result tuple convention. Assuming you have...
New
MRdotB
I needed to reuse React components from my Chrome extension in my Phoenix/LiveView backend. I noticed that for Svelte/Vue, there are live...
New

Other popular topics Top

Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3268 119930 1237
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID<0.412.0> terminating ** (Postgrex.Error) FATAL...
New
lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
joaquinalcerro
Hi there, I am working with Ecto-Postgresql and I need to call all of the records from a specific table but the table has 40,000 record...
New
jerry
Good day to you all. I have been struggling to get a query involving like and ilike to work. Can anyone assist me on this, please? pro...
New
KronicDeth
Elixir plugin for JetBrain’s IntelliJ Platform (including Rubymine) This is a plugin that adds support for Elixir to JetBrains IntelliJ...
289 35421 110
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
vac
Hi, I'm quite new in Elixir and I'm trying to format a string to a PEM format. I have the certificate value like MIIDBTCCAe2...... and ...
New
aesmail
Hello guys, I have finally made it. I created an admin interface for a framework. It’s been on my todo list for years and with the curre...
New

Sub Categories:

We're in Beta

About us Mission Statement