GithubHelp home page GithubHelp logo

furrtek / precir Goto Github PK

View Code? Open in Web Editor NEW
257.0 11.0 16.0 13.43 MB

You know what this is for ;-)

Home Page: http://furrtek.free.fr/index.php?a=esl

License: GNU General Public License v3.0

Makefile 0.10% C 98.45% Python 0.15% Assembly 0.29% Visual Basic 6.0 0.54% Batchfile 0.01% Java 0.46%
infrared electronics optical-communications esl electronic-shelf-label price-tag hack e-paper lcd e-ink

precir's Introduction

PrecIR

Collection of software and hardware tools, their source code and design files for communicating with infrared based Electronic Shelf Labels.

See http://furrtek.free.fr/index.php?a=esl for reverse-engineering of the system, the protocol and electronics.

Thanks to @david4599 for infos about color tags.

Hardware

  • ir_tx_serial: Simple DIY serial port transmitter, requires an USB-serial adapter.
  • esl_blaster: Compact USB transmitter/remote. Build it yourself or buy one from Tindie.

Tools

  • img2dm.py: Sends an image to an e-paper ESL. Run without parameters for help.
  • rawcmd.py: Send arbitrary data to ESL.
  • setsegs.py: Set display of segment ESL.
  • flashtest.py: Test tool to program the remote control frames of the ESL Blaster (more work needed).
  • vb6: Windows GUI client and VB6 source (sorry).
  • PriceHax: Android app, doubles as a barcode scanner for quick ESL updates.

FAQ

What can this be used for ?

To have fun experimenting with mass produced devices ! Compatible ESLs can be found on eBay, or directly from stores shelves ;)

The e-paper ones can make cool badges:

DM badge

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.

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.

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.
  • 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 ?

There's no cracking, exploit, patent or copyright infrigement going on so IMO it's safe to assume this is perfectly legal. Just don't try changing price displays so you can get discounts, the price in the store's database obviously remains unchanged so you'll end up having to pay the correct price anyways.

My tricolor-capable ESL shows red garbage after an image update Transmit the image in tricolor mode. Transmitting black and white images to tricolor ESLs doesn't clear the red layer.

precir's People

Contributors

furrtek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

precir's Issues

Android app does not detect the ESL blaster

With the latest app version, the blaster still reads "Disconnected" and the TX is greyed out.

On the screenshot, you can see the red light in the middle of the 5.

(Included usb-A to usb-C cable)
image

port for flipper

Is there any plans to port this to flipper zero? It will be epic tool ;)

Barcode format?

Can you explain (maybe with an image) how to pull the "17-digit barcode string" from a label device? I recently got an HD150 model, the barcode on the screen is in the format 5-2 2-4-4-2-4 (# of digits). The barcode on the back has a 17 digit barcode starting with "A" - although I assume it's probably the barcode on the front. I got an ESL Blaster and tried it with the 17-digit barcode string on the back, but no luck. Full disclosure: I'm on Linux and had to modify tx.py to search for /dev/ttyACM* instead of COM*, but it appeared to work after that.

Information/Feature Idea

I understand from the ReadMe that the data-rates are unusually high so I don't know the feasibility of this idea, but thought I would ask.

The Flipper Zero has an IR emitter and can support custom made applications as well as GPIO output signals. Have you explored if this could be ported to run on that device either with built-in IR emitter or a simple GPIO addon, allowing with a dynamic input of the required serial/ID to select from more than one "picture" to send to a different tag "on-demand"?

No schematics for ESL_BLASTER

Hi,

I do not know if I should wait; but the repo has no schematics for the esl_blaster.
Will it be published ?

thx !

Some images aren't accepted by ESLs

Python or Android app, compression or not.

  • 152x152 ok
  • 24x24 ok
  • 128x64 ok
  • 48x48 ok
  • 64x63 dm test ok
  • 74x69 nok

Working images seem to have a pixel count multiple of 8. Maybe something to do with bit to byte packing.

Android app size issues

Is it going to be same as FW2? Also, I wondering how does the ESL Blaster connects with the app?

Flipper Zero app?

Hello,
Do you think that it can be implemented in Flipper Zero as an app?

Thank you,
Z3r0L1nk

Gherber Design file?

Any chance of a gherber file to get the PCB printed I would like to send to a YouTube tech reviewer (EEVBlog) all credit would be given I would just assemble it

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.