From 2bb3b936b405f4f089d77655aed62903b6ae0a7f Mon Sep 17 00:00:00 2001 From: jaseg Date: Tue, 26 Dec 2023 15:30:15 +0100 Subject: [PATCH] Add 8seg project page and blog post --- content/blog/8seg/8seg-digit-circuit.png | Bin 0 -> 94441 bytes content/blog/8seg/index.rst | 203 +++++++++++++++++++++ content/projects/8seg/index.rst | 215 +++-------------------- 3 files changed, 232 insertions(+), 186 deletions(-) create mode 100644 content/blog/8seg/8seg-digit-circuit.png create mode 100644 content/blog/8seg/index.rst diff --git a/content/blog/8seg/8seg-digit-circuit.png b/content/blog/8seg/8seg-digit-circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..001c896bf507aacb826d3875d8c060b67ab727df GIT binary patch literal 94441 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 z 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 8seg is an experimental textual display. It is made from a 45m by 1.5m large lacework banner that can be put up in a variety of spaces, conforming to the space's size and shape through bending and folding. --- -8seg Technical Overview -======================= +8seg +==== -Prologue --------- +8seg is an experimental textual display. It is made from a 45m by 1.5m large lacework banner that can be put up in a +variety of spaces, conforming to the space's size and shape through bending and folding. -German hacker culture has this intense love for things that light up in colorful ways. Like for many others in this -community, I have always been fascinated by LEDs. One of the first things on my pile of unfinished projects was to build -my own LED matrix and use it to display text. When I started that project, I was still new to electronics. Back then, -commercial LED matrices were limited to red or green color only, and were very expensive, so there was an incentive to -build your own. At the same time, while individual LEDs were'nt expensive anymore, they hadn't started to be cheap yet, -either. On top of the material cost, back then there were no PCB fabs, and especially no PCB assembly houses that a -hobbyist could afford. Ultimately, I ended up never finishing this project because I felt it was more of a feat of -material wealth than of technical prowess. +8seg is currently being set up at 37C3 in the entrance hall, on the second-floor railing in front of Hall X. -Over time, LEDs came down in price, and peoople started using them in all sorts of fun things. Around the mid-2010s, -cheap-ish, ready-made tapes and chains of RGB LEDs that included WS2811 or similar digitally controllable driver chips -led to a cambrian explosion in projects involving large amounds of colorful LEDs since suddenly, all you needed was an -arduino and a beefy power supply to individually control an almost unlimited number of these LEDs. +Posting messages +---------------- -Today, LED technology has advanced even furhter, to a point where now you can buy staggering quantities of the second -generation of these controllable LEDs that provides better color rendering embedded in all sorts of shapes, from tapes -through rings to grids. When I built the first matelight_ in 2013, the matelight's 640 individually-controllable LEDs -were *a lot*. Today, you can buy a roll with several thousand channels for about the price of a nice pizza. +To send messages to the display, please use the web interface linked above. -The idea behind 8seg --------------------- +8seg is a community service run by a sole volunteer. Please respect my work, and please do not post offensive messages, +spam or similar. 8seg is currently open to the congress network on the hope that y'all will behave civilly. Please don't +make me put a login wall in front of this thing, alright? ;) -Living through this amazing escalation of LED technology, in 2018, I looked at a then-obsolete piece of single-color, -dumb, non-controllable LED tape with a simple question in mind: Taking this unsophisticated artifact of yesterday's -technology, what would be the coolest thing I could build from it? Can I buld something that not only rivals, but -outmatches the modern controllable LED stuff? From that question, I set myself two goals. First, I wanted to keep the -project's use of financial and labor resources reasonable. A lot of art consists of taking a simple idea, and simply -extrapolating its implementation to a ridiculous scale at the expense of the artist's time and wallet. That wasn't the -point I wanted to make. I wanted to make something cool from an obsolete technology, not prove how much patience I had -soldering. My second goal was to create something that is meaningfully controllable. Controllability is much harder with -these dumb LED tapes, but it is possible nontheless, and I wanted to test out how far you could go with it. +You may write code to talk to the web interface, but please do not post automated messages at a frequency higher than +one per 20 minutes. No spam, no commercial advertising and absolutely nothing cryptocurrency-related. -After thinking through a number of possibilities, I settled on the basics of the 8seg design I ended up realizing. The -installation would be a banner-style display consisting of a series of characters made from non-controllable LED tape. -The banner can be rigged up in any convenient air space, bending and folding to conform to the space's shape and size. -The key idea behind 8seg is that it makes up for it's lack of control fidelity with sheer size. If nothing else, this -non-controllable LED tape is *cheap*. +Scheduling regular messages +--------------------------- -The design of a single 8seg character -------------------------------------- +If you want your message to be added to the regular "idle rotation" of 8seg, which the display cycles through when no +other messages are queued, please email me at the contact email above. -Each 8seg character consists of 8 *segments* of LED tape that are inter-connected through small circuit boards, four in -the corners, and one in the center. As it turns out, 8 segments arranged in this shape are enough to display all of the -English language's alphabet as well as numbers in a weird, but readable form. +Reporting abuse +--------------- -The electrical design of an 8seg character has one weird trick at its core. To avoid having to run a bunch of wires from -some kind of driver circuit board to each of the eight segments, I thought, why not use the LED tape itself instead for -power and data transmission? Wires are heavy, expensive, and annoying to solder, so if I could find a way to -interconnect the LED tape so that it can all be driven from a driver circuit located at one of the character's -junctions while simultaneously powering that driver circuit, an 8seg character wouldn't need any wires at all anymore. +If you see 8seg being used for something stupid or bad, please email me at the contact email above. -8seg achieves this feat using a circuit as shown in the diagram below. Interconnections between the LED tape segments -are done with a small circuit board in each of the four corners. The design is rotationally symmetric, and all four of -these boards are identicaly. The top right and bottom left corners simply use the back side of the same circuit board -used in the top left and bottom right corners. +Further questions +----------------- -.. image:: 8seg-circuit.svg - -The driver circuit sits at the center of the character and directly connects to the four diagonal segments. The key -thought behind 8seg's driving scheme is that there are two common phases wound through the display in a zig-zag pattern -as shown in red and blue in the schema below. These phases alternate their polarity at a high frequency. Each segment -has its negative pole connected to one of these two phases, and can be turned on by the driver while that phase is low -and the other phase is high. While a phase is high, the LEDs on all segments connected to that phase are reverse-biased, -and thus these segments remain dark. - -The positive poles of all segments are connected to the driver circuit in the center through a spiral pattern. Each arm -of the spiral is made up of two segments, one diagonal on the inside, and one horizontal or vertical on the outside. -The two segments on each spiral arm are on different phases, one on each of the two phases. Thus, during a single cycle -of the two phases alternating polarity, first one of the two segments has its polarity the right way around, then the -other. The driver can turn on the active segment by connecting the spiral control line to the positive LED supply -voltage. - -Both phases cross at the center where the driver circuit is located, so the driver can power itself from the two phases -using a simple full bridge rectifier. - -Saving copper with point of load regulation -------------------------------------------- - -In the beginning, I experimented with the design above, putting 12V AC on the two phases, and letting the driver switch -its derived LED supply using some cheap MOSFETs. This simple design totally works, but it has an important shortcoming. - -8seg is designed to be physically *very* large. This means that not only does it have a large number of LEDs that -together need a lot of current, it also has to transmit all of that current across significant physical distances. The -consequence of this was that in the initial design, I was looking at either needing hundreds of Euros worth of copper -cables, or burning hundreds of Watts of electricity into heat if I were to use thinner cables. In this case, cables act -like resistors. In a resistor, power dissipation rises with the square of the current inside the cable. This is bad for -8seg since it means halving the amount of copper in those wires increases power dissipation in these wires fourfold. - -Despite that downside, this square law does come with an upside, too. If we assume we have wires of a particular fixed -diameter, if we can halve the current through those wires, we can quarter the wires' power dissipation. If we want to -deliver the same amount of power to the LEDs as before, to halve wire current, we have to double the voltage, and add -some circuitry on the drivers to convert that increased voltage back down to close to our LED tape's nominal 12V. - -Alas, simply doubling the voltage leads to one question: How is it that we can pass double the voltage through our LED -tape to the center control circuit? Isn't the LED tape made for 12V operation only, not 24V? The answer to this -apparent problem is that the center is connected to the AC bus voltage only through the negative side of the LED tapes, -and controls their positive sides to turn them on or off. The AC bus voltage never appears directly across any single of -the eight segments. At the same time, a simple buck converter stepping down our new 24V bus voltage to 12V, and feeding -the segment control transistors with that instead of feeding them straight from the rectified AC bus allows us to feed -the segments with 12V. The only difference between this circuit and the straight 12V variant is that now, during OFF -times, the LED tapes see a negative 24 v across them. To make sure that's not a problem, I tested a number of them with -different LED colors and from different manufacturers, and all of them held up past the 50 V I could easily generate -with my lab power supply. - -Synchronous rectification -------------------------- - -I implemented the point-of-load regulation in a new revision of the center circuit, and built a prototype digit. When I -tested this prototype, to my dismay, I noticed some really strange behavior. In my tests, the LED tape did not properly -light up, and when I checked the voltages with my oscilloscope, I noticed that the center circuit's ground was floating -several volts *below* the AC bus voltage's negative phase. How come? - -After some head-scratching, I found that this problem was due to a simple instance of Kirchhoff's current law. Consider -the point where the AC bus voltage's currently negative phase enters the center circuit board. Let's say that we -dissipate 24 Watts in the segments' LEDs. In this case, at 24 Volts, 1 Ampère will flow into the center circuit's -terminal connected to the currently positive phase, and out from the center circuit's terminal connected to the -currently negative phase. - -Now consider the current through the LED tape. During one half-cycle of the AC bus, the center circuit can only address -the four segments that have their negative rail connected to the currently negative phase of the AC bus. If one of these -four segments is currently on and dissipating our 24 Watts, that segment will be fed 2 Ampère of current from the center -circuit through its positive rail. My mistake was that I did not consider what happened to the return current here. -The corresponding 2 Ampère return current of course flows back through the segment's negative rail into the center -circuit, and herein lies the issue: That negative rail is where our center circuit's supply current comes from! This -means that according to Kirchhoff's current law, the 1 A flowing out from the center circuit at its input are adding up -with the 2 A flowing into it. The result of this is that in the currently positive phase's connection, we get 1 A -flowing into the center circuit, while in the negative phase connection, we get (-1) + (+2) resulting in another 1 A -flowing into it! The only terminal where current flows *out* of the center circuit is the positive terminal connected to -the active segment, out of which 2 A of current are flowing. - -The big problem with this confusing scenario is that this means the bridge recitifier in our center circuit cannot work, -since its negative-side diodes are reverse biased while any of the segments are on. We can't just add more diodes here, -since that would just short both AC bus rails together. Instead, the solution is to add one rather chonky MOSFET in -parallel with each of the two negative-side diodes of the bridge rectifier that are controlled by the center circuit to -act as a sort of synchronous rectifier. When we turn on one of the segments, we have to turn on the MOSFET on the -currently negative rail to allow the segment's return current to bypass the bridge rectifier's negative-side diode. Fun -fact: If we turn on the wrong MOSFET out of the pair, we short the AC bus, resulting in a very quick end of life for that -poor MOSFET. - -Power line data communication ------------------------------ - -As we saw above, the driver providing power to a string of digits has to continuously alternate the polarity of its -output voltage to provide one part of the digit circuits' multiplexing. Since we want to provide the control information -to the center circuits through those same two wires, we can choose between a number of viable power line communication -schemes. These schemes usually require a beefy transmitter adding a modulation at a frequency much larger than the -underlying bus frequency, and a filter circuit at each receiver to filter that signal from the much stronger fundamental -AC waveform. In our application, I saw two issues with these classical approaches. First, they require fairly complex -circuitry, especially the beefy transmitter at the driver. Second, they are susceptible to attenuation with either -changing load or over long distances, which could potentially be a problem with the high currents and long(ish) wiring -runs 8seg needs. - -Because of these disadvantages, I decided on another approach entirely. Instead of modulating our control signal on top -of the AC power waveform, we modulate our control data *into* the AC power waveform. To not interfere with the display -and cause outages or flicker, and to avoid having to blank the display during transmissions, we choose a modulating -technique that leaves the proportions of negative and positive half-waves undisturbed. The practical realization of this -is that instead of alternating positive and negative half-waves, we send a positive half wave for each "one" bit, and a -negative half wave for each "zero" bit, effectively creating a phase shift keyed signal with two states with an -180-degree phase shift, with the transmitted bit rate synchronized to twice the underlying carrier frequency. - -The remaining question is how one can encode arbitrary binary data into a continuous stream of ones and zeros that is -precisely 50 % ones and 50 % zeros across any time span longer than a few dozen bits. There exists a near-optimal -solution to this question from ethernet over copper twisted pairs. In ethernet, the encoded and modulated signal passes -through an isolation transformer to protect the ethernet transceiver from interference or dangerous voltages coming in -through the ethernet port. For this isolation transformer to work, the modulated ethernet signal must be exactly -balanced to avoid saturating the transformer's core with a DC offset. Ethernet solves this issue by using an encoding -known as `8b/10b encoding`_. 8b/10b encoding is named like that because it specifies a way to produce a 10 bit codeword -from any 8 bit input data word while guaranteeing that the resulting codewords are always precisely balanced when -looking at two or more consecutively. - -Framing -------- - -Since 8b/10b encoding maps a space of 256 data words to 1024 code words, there necessarily are a number of unused code -words. While for some of them, leaving them unallocated is beneficial because it improves error tolerance by decreasing -the probability of one code word turning into another undetectably when a single one of its bits is flipped, even -accounting for that it leaves some room for other uses. In 8b/10b, these leftover code words are used for synchronizing -the receiver to the transmitter, and for framing transmissions. Synchronization is necessary for the receiver to know -where a code word stards, and 8b/10b has a handful of special "comma" code words that can be uniquely identified in a -continuous stream of received ones and zeros, because no other combination of 8b/10b code words could produce the same -sequence of ones and zeros of the comma code word anywhere. - -The leftover code words that are not commas are useful, too. They can be used, for instance, as filler code words -betwene actual data transmissions, or to act as framing markers denoting things like the end of a protocol message. - -The 8seg driver produces its modulation waveform by translating all data to be transmitted into 8b/10b codes, padding -the result with framing markers and filler codes, and copy-pasting together the corresponding AC waveform from a small -set of pre-programmed waveform transitions. - -.. _matelight: https://github.com/jaseg/matelight -.. _`8b/10b encoding`: https://en.wikipedia.org/wiki/8b/10b_encoding +For further questions, please email me at the email linked above, or message me on mastodon at `chaos.social/@jaseg +`__.