Bookshelves: Difference between revisions

From Noisebridge
Jump to navigation Jump to search
Lxpk (talk | contribs)
No edit summary
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{library}}
== Construction Plans ==
{{big}}'''The Bookshelves Flaschentaschen''' is an array of LEDs to light up the books in the [[Library]].
[[File:Bookshelves.jpg]]
*'''STATUS:''' It may be out of commission after moving to [[272]] and in need of reconfiguration.
{{/big}}


== LED Strips ==
== LED Strips ==
[[File:Bookshelf_LEDs_layout.jpeg]]


=== Network protocol ===
=== Network protocol ===


The LEDs are controlled by an esp8266 that's on the network.  The network address is listed on the front of the shelves.  It uses the flaschen taschen UDP protocol on port 1337. More info and libraries can be found on [https://github.com/hzeller/flaschen-taschen Github].  The bookcase is addressed as a 810x1 pixel grid. The mapping from this grid to the strips is documented below.
The LEDs are controlled by an esp8266 that's on the network.  The network address is bookcase.noise.  It uses the flaschen taschen UDP protocol on port 1337. The bookcase is addressed as a 810x1 pixel grid.  More info and libraries can be found on [https://github.com/hzeller/flaschen-taschen Github].  Check out client/rainbowbookcase.py or client/squares.py for simple examples of how to write code to control the bookcase.


=== LED Strip Mapping ===
=== LED Strip Mapping ===
[[File:Bookshelf_LEDs_layout.jpeg]]


{| border="1"
{| border="1"
| Strip || Arduino Pin || Number of LEDs
| Strip || ESP8266 Pin || Number of LEDs
|-  
|-  
| Strip 1 || 2 ||  277
| Strip 1 || 1 ||  277
|-  
|-  
| Strip 2 || 3 ||  277
| Strip 2 || 2 ||  277
|-  
|-  
| Strip 3 || 4 ||  24
| Strip 3 || 3 ||  24
|-  
|-  
| Strip 4 || 5 ||  39
| Strip 4 || 4 ||  39
|-  
|-  
| Strip 5 || 6 ||  14
| Strip 5 || 5 ||  14
|-  
|-  
| Strip 6 || 7 ||  9
| Strip 6 || 6 ||  9
|-  
|-  
| Strip 7 || 8 ||  105
| Strip 7 || 7 ||  105
|-  
|-  
| Strip 8 || 9 ||  65
| Strip 8 || 8 ||  65
|}
|}


Line 36: Line 38:
=== LED segments ===
=== LED segments ===


If you want to do animations that take into account the specific locations of the leds on the bookcase, here's a complete mapping of each led segment, where a segment is defined as the strip of led between any intersection with another led strip.
Here's a complete mapping of each led segment, where a segment is defined as the strip of led between any intersection with another led strip. This is handled for you if you use the Bookcase class in bookcase.py.
 
Here's a sample sketch that makes use of these segments: [https://gist.github.com/scottyallen/ecaee28f537cf94e3aa30bb8347e0654 squares.ino]


[[File:Bookcase_led_segments.png]]
[[File:Bookcase_led_segments.png]]


<pre>
<pre>
segment, strip, start_index, num_leds
segment, num_leds
1, strip2, 0, 40
0, 41
2, strip2, 40, 65
1, 26
3, strip1, 0, 41
2, 105
4, strip8, 0, 40
3, 105
5, strip2, 105, 66
4, 40
6, strip4, 0, 24
5, 65
7, strip4, 24, 5
6, 66
8, strip4, 29, 10
7, 106
9, strip1, 41, 26
8, 10
10, strip3, 0, 10
9, 14
11, strip6, 0, 9
10, 24
12, strip8, 40, 10
11, 5
13, strip5, 0, 4
12, 10
14, strip5, 4, 10
13, 4
15, strip3, 10, 14
14, 10
16, strip8, 50, 15
15, 9
17, strip7, 0, 25
16, 25
18, strip7, 25, 15
17, 15
19, strip7, 40, 65
18, 65
20, strip1, 67, 105
19, 40
21, strip2, 171, 106
20, 10
22, strip1, 172, 105
21, 15
</pre>
</pre>
== Construction Plans ==
[[File:Bookshelves.jpg]]

Latest revision as of 03:02, 3 March 2022

Noisebridge | About | Visit | 272 | Manual | Contact | Guilds | Stuff | Events | Projects | Meetings | Donate E
Resources | Where to find things | Storage | Network | AV | Audio | Library | Servers | Printers | Sustenance | Sources E
Library | Digital Archivists | Bookscanner | Bookshelf Flaschen LEDs | Edit


The Bookshelves Flaschentaschen is an array of LEDs to light up the books in the Library.

  • STATUS: It may be out of commission after moving to 272 and in need of reconfiguration.

LED Strips

[edit | edit source]

Network protocol

[edit | edit source]

The LEDs are controlled by an esp8266 that's on the network. The network address is bookcase.noise. It uses the flaschen taschen UDP protocol on port 1337. The bookcase is addressed as a 810x1 pixel grid. More info and libraries can be found on Github. Check out client/rainbowbookcase.py or client/squares.py for simple examples of how to write code to control the bookcase.

LED Strip Mapping

[edit | edit source]

Error creating thumbnail: Unable to save thumbnail to destination

Strip ESP8266 Pin Number of LEDs
Strip 1 1 277
Strip 2 2 277
Strip 3 3 24
Strip 4 4 39
Strip 5 5 14
Strip 6 6 9
Strip 7 7 105
Strip 8 8 65

The LEDs are WS2812B chips, with color order GRB.

LED segments

[edit | edit source]

Here's a complete mapping of each led segment, where a segment is defined as the strip of led between any intersection with another led strip. This is handled for you if you use the Bookcase class in bookcase.py.

Error creating thumbnail: Unable to save thumbnail to destination

segment, num_leds
0, 41
1, 26
2, 105
3, 105
4, 40
5, 65
6, 66
7, 106
8, 10
9, 14
10, 24
11, 5
12, 10
13, 4
14, 10
15, 9
16, 25
17, 15
18, 65
19, 40
20, 10
21, 15

Construction Plans

[edit | edit source]

Error creating thumbnail: Unable to save thumbnail to destination