This commit is contained in:
Furrtek
2025-03-31 03:58:32 +02:00
3 changed files with 30 additions and 4 deletions
+11 -3
View File
@@ -32,16 +32,24 @@ The e-paper ones can make cool badges:
***Which brands of ESLs are compatible ?***
You'll have to guess from the picture and the page on my website. Hint: there's only one.
You'll have to guess from the picture above and the page on my website. Hint: it's an anagram of this repo's name.
***Can my phone/tablet/handheld/IrDA-capable device work as a transmitter ?***
No. The carrier is in the MHz range and the symbol timing must be very precise. IrDA controller limitations and OS latency makes it impossible.
No. The proprietary protocol uses a carrier in the MHz range and the symbol timing must be very precise. IrDA controller limitations and OS latency makes it impossible.
It's possible with an [overclocked Gameboy Color](https://youtu.be/WlDua4l27Do), but who wants to do that ?
***Can this be ported to the Flipper Zero ?***
Yes. However I have very little interest in doing free work for beggars who get excited by remotely opening Tesla charge ports.
All the info you need is here. DIY :)
***Can I change the display of all ESLs in a store at once ?***
No. For two reasons:
* Unlike radio waves, optical communication must be line-of-sight. Even if the walls are painted white, reflections from an unique transmitter has no chance of reaching all of the hundreds or thousands of ESLs in a store.
* Unlike radio waves, optical communication must be line-of-sight. Even from wall and ceiling reflections, an unique transmitter has no chance of reaching all of the hundreds or thousands of ESLs in a store.
* Each ESL has an unique address which must be specified in update commands. There's no known way to broadcast display updates.
***Is possession and use of such devices legal ?***
+2 -1
View File
@@ -4,7 +4,7 @@
import pr
import tx
from imageio import imread
from imageio.v2 import imread
import sys
bytes_per_frame = 20
@@ -91,6 +91,7 @@ if arg_count >= 9:
pp16 = 0
# Medium size is 208*112
# Large size is 296*128
print("Image is %i*%i in %s mode, please make sure that this suits your ESL's display." % (width, height, "color" if color_mode else "black and white"))
# First pass for black and white
+17
View File
@@ -3,6 +3,12 @@
# See LICENSE
import serial
import os
import re
if os.name == 'posix':
from serial.tools.list_ports_posix import comports
def try_serialport(comport):
try:
@@ -43,6 +49,17 @@ def search_esl_blaster():
found = True
break
# Mac
if found == False:
r = re.compile('usbmodem', re.I)
for info in comports():
comport, desc, hwid = info
if r.search(comport):
result = try_serialport(comport)
if result[0]:
found = True
break
if found == False:
print("Could not find ESL Blaster.")
else: