Polaroid Photo

Bilder från Daniel Nylander.se

Daniel Nylander.se

Ubuntu, Debian, Translation Project, GNU, Linux, UNIX, VoIP, IT-Säkerhet, experiment, väl valda ord och delvis sinnesnärvaro

Välj ett ämne:

tis
1
Nov '05

e-Badge för Linux

Hade för lite att göra så jag köpte en Rullande textskylt (artnr 36-2070)
med infraröd överföring på Clas Ohlson för 198:-

Den heter e-Badge på engelska och är väl tänkt för att skriva sitt namn på den
och gå på nördkonferenser(!). Det tänkte ju inte jag ha den till.
Tänkte att man kanske skulle kunna skicka bra meddelanden till den (påminnelser etc.).

e-Badge

Programvaran som hängde med var så klart för Windows. Eftersom sändaren är inkopplad
på en seriellport så tog det inte många sekunder att sniffa av trafiken mellan programmet och
sändaren.

Den skickar helt enkelt 01xx2104 är xx är det hexidecimala värdet för antal upprepningar av texten och sedan själva texten. Exempelvis ”01012104test” för att skicka texten ”test” 1 gång.

Exempel:
01002104 – alltid
01012104 – 1 gång
01022104 – 2 gånger
01ff2104 – 255 gånger

Här är en OTESTAD Perl-kod för att skicka meddelande till mojjängen:

#!/usr/bin/perl

# Exceptionally bad Perl code by Daniel Nylander
#
# Usage: e-badge.pl <device> <repeats> <text>
#

use Device::SerialPort ;

if ($ARGV[1] eq ””) {
print ”Usage: e-badge.pl <device> <repeats> <text>\n”;
print ”Example: \”e-badge.pl ttyS0 0 hello\” (0=repeat endlessly)\n”;
exit 0;
};

chomp $ARGV[2];

$PortName=”/dev/$ARGV[0]”;

$PortObj = new Device::SerialPort ($PortName, $quiet, /tmp/lockfile.ebadge)
|| die ”Can’t open $PortName: $!\n”;
$PortObj->user_msg(ON);
$PortObj->databits(8);
$PortObj->baudrate(9600);
$PortObj->parity(”none”);
$PortObj->stopbits(1);
$PortObj->handshake(”rts”);
$PortObj->write_settings || undef $PortObj;

if ($ARGV[1] eq ”0”) {
$prefix=”01002104″;
}
if ($ARGV[1] eq ”1”) {
$prefix=”01012104″;
}
if ($ARGV[1] eq ”2”) {
$prefix=”01022104″;
}
if ($ARGV[1] eq ”3”) {
$prefix=”01032104″;
}

$output=”$prefix$ARGV[2]”;

print ”Debug: Writing \”$output\”\n”;
$PortObj->write(”$output”);
$PortObj->close || warn ”close failed”;

# Die with a smile
exit 0;

4 comments »

4 kommentarer på “e-Badge för Linux”

  1. Anders Says:

    Jag var på jakt efter något sätt att visa info från datorn när min skärm/LCD-TV är avslagen. Testade därför denna trevliga produkt och har skrivit (under utveckling) en applikation som fungerar med iTunes, Messenger, RSS mm. Formatet ska vara (i all fall på min E-badge):

    01XXY1ZZMessage

    XX – Repeats (0 = Infinity)
    Y – Scroll speed (0-4, 0 = Fastest)
    ZZ – Length of Message in HEX

    Sedan var Baudraten 1200 på mitt protokoll.

    Ditt inlägg var från November 2005 (dvs. långt tillbaka i tiden) men jag skriver en kommentar här i all fall om någon annan är ute efter informationen.

    /Anders

  2. Roger Says:

    Hittade den gamla e-bagden men saknar min PC-programvara!
    ?re nån som har den?
    Classe har visst slutat sälja prylen…

  3. Jan-Olof Johansson Says:

    Hej !
    Har lyckats slarva bort programmet för ”Rullande textskylt” som jag också köpt på Claes Ohlssons.
    Den jag söker är Windows versionen, har du möjligtvis denna och skulle du vilja maila över denna fil till mig ? Tack i så fall.
    Mvh.
    Jan-Olof

  4. m huret Says:

    Hello,

    I lost the software disk for my e-badge It is the red one with the scrolling message.

    Where can I get new software.

    Thank you

Skriv ett svar