středa 15. února 2012

Regulární výraz

Pro začátek jen jeden:

 " -.*$"
Najde text začínající řetězcem " -" potom následuje libovolný text a končí koncem řádku.

pátek 6. ledna 2012

Oscam na OpenWRT

Je nutné doinstalovat balíčky pro vlákna (libpthread)
opkg install libpthread
Chyba se projevuje takto:
oscam: can't load library 'librt.so.0'

oscam je nutné spouštět s parametrem -c /etc/oscam

libusb
usbutils

// konfigurace čtečky v oscam.server
[reader]
label = Phoenix1
protocol = mouse
device = /dev/ttyUSB0 # pod windows /dev/ttyS0 (COM1)
device_out_endpoint = 0x81
detect = none
mhz = 357
cardmhz = 357
group = 1
emmcache = 1,3,2
deprecated = 1

http://www.ab-forum.info/viewtopic.php?p=299502#p299502
Pro správnou funkci Oscamu s FTDI převodníkem pro čtečku je nutné zkompilovat OpenWRT s podporou výpočtů s pohyblivou čárkou (FPU), chyba se projevuje v dmesgu hláškou:
FPU emulator disabled, make sure your toolchainwas compiled with software floating point support (soft-float)

pondělí 2. ledna 2012

Hrátky i image IPBoxu 910HD

"Rozbalení" img souboru:

./dgsimg-dump usb_update.img
reading: usb_update.img
writing: "config_welcome" [0x00000000:0x00020000]
writing: "kernel" [0x00020000:0x00220000]
writing: "root" [0x00220000:0x015c0000]
writing: "db" [0x015c0000:0x01fc0000]
Dump image DONE.

Přístup k paměti IPBoxu při nabootování z jiného média. Namountujeme část paměti /dev/mtdblock4 do složky /pokus.
mount -t jffs2 /dev/mtdblock4 /pokus

http://www.denktenk.com/forum/cube-revo-twin-tuner-software/how-to-open-an-dgs-based-img-file
http://ab-forum.info/viewtopic.php?f=85&t=9153

čtvrtek 1. prosince 2011

ATmega8(L)

16 MHz (16MIPS)
8 KB FLASH, 1KB RAM, 512 B EEPROM
ISP, 2x 8-bit Timer, 16-bit Timer, RTC, PWM, 8-bit ADC, USART, SPI, Watchdog, komparátor
vnitřní RC oscilátor 1, 2, 4, 8 MHz

neděle 6. listopadu 2011

První hrátky s IPBoxem 99 HD

Přístup k VFD displeji: echo " Pokus " > /dev/dbox/vfd (date '+    %H:%M' > /dev/dbox/vfd)
Příkazy pro zapínání a vypínání piktogramů na VFD:
ipbox /> /usr/sbin/vfdctl
vfdctl v0.5 - usage:
        vfdctl [[-c] text] [+sym] [-sym] ...
        -c      centered output
        to set symbols use e.g. +power or -power
        available symbols are power, play, pause, rec, stereo,
        480p, 480i, 720p,1080i, 1080p, 576i, 576p, mp3
        type "vfdctl deep" to set box in deep standby
        type "vfdctl setttime" to set system time
        type "vfdctl timer" to set wakeup system time
        type "vfdctl clearicon" to clear all icon
        type "vfdctl cleardisplay" to clear display
        type "vfdctl standby" to set standby
        type "vfdctl demo" to start demo
Info o zařízení http://ip_adresa/web/about ve formátu XML
o hlasitosti http://ip_adresa/web/vol?set=state
změna hlasitosti http://ip_adresa/web/vol?set=set23
seznam audiostop http://ip_adresa/web/getaudiotracks a výběr stopy http://ip_adresa/web/selectaudiotrack?id=2
seznam nahrávek http://ip_adresa/web/timerlist
seznam kanálů http://ip_adresa/web/getservices?sRef=1:7:1:0:0:0:0:0:0:0:FROM%20BOUQUET%20%22userbouquet.dbe04.tv%22%20ORDER%20BY%20bouquet
EPG  http://ip_adresa/web/epgservice?sRef=1:0:1:1F43:BC6:3:EB0000:0:0:0: pro ČT1
přepnutí na ČT1 (DVB-T) http://ip_adresa/web/zap?sRef=1:0:1:101:111:20CB:EEEE0000:0:0:0:
zapnutí streamování ČT1 (DVB-T) http://ip_adresa/web/stream.m3u?ref=1:0:1:101:111:20CB:EEEE0000:0:0:0:
režim ve kterém se Enigma nachází http://ip_adresa/web/powerstate
Vypnutí/zapnutí/restart atd.: http://ip_adresa/web/powerstate?newstate={powerstate_number}
Načtení informací o příjmu http://ip_adresa/web/signal?
Info o aktuálním kanálu http://ip_adresa/web/getcurrent
Ostatní na http://e2devel.com/apidoc/webif/

0 = Toogle Standby
1 = Deepstandby
2 = Reboot
3 = Restart Enigma2
4 = Wakeup form Standby
5 = Standby
seznam nahrávek http://ip_adresa/web/movielist
Více na http://dream.reichholf.net/wiki/Enigma2:WebInterface

Přehrávání nahrávek z HDD
http://ip_adresa/web/ts.m3u?file=%2Fhdd%2Fmovie%2F20121016%200510%20-%20Discovery%20HD%20CZ%20-%20Science%20of%20the%20Movies.ts

seznam nahrávek v rss formátu
http://ip_adresa/web/movielist.rss

Konfigurace, nastavení časovače i seznamy programů jsou v /etc/enigma2/
  • timers.xml - seznam pořadů které se mají nahrát
<?xml version="1.0" ?>
<timers>
<timer begin="1320697200" end="1320702600" serviceref="1:0:1:201:209:20CB:EEEE0000:0:0:0:" repeated="1" name="Dr. House VII (10)" description="(House VII) Cukr nebo bi T+m l+ꦏ+ instruktora z n+�avn+ꨯ chlapeck+ꨯ t+�ra s urin+�+mi probl+ꭹ. Zd+�e, +e instruktor mohl b+t nkter+m ze sv+ch chovanc+ otr+�n+. Jen+e ve chv+li, kdy se v nemocnici" afterevent="deepstandby" eit="106" location="/hdd/movie/" tags="" disabled="0" justplay="0">
</timer></timers>
·        profile, blacklist, whitelist
·        settings – soubor s nastavením
config.av.policy_43=nonlinear
config.av.videomode.HDMI=1080i
config.av.videoport=HDMI
config.misc.rcused=1
config.misc.firstrun=false
config.misc.initialchannelselection=false
config.misc.startCounter=5
config.misc.languageselected=false
config.misc.defaultchosen=false
config.misc.videowizardenabled=false
config.misc.isNextRecordTimerAfterEventActionAuto=true
config.timezone.val=(GMT+01:00) Belgrade, Bratislava, Budapest, Prague
config.Nims.0.diseqcA=235
config.Nims.0.diseqcMode=single
config.Nims.0.configMode=simple
·        bouquets.radio – soubor se seznamem oblíbených rádií
·        bouquets.tv – soubor se seznamem oblíbených tv programů
#NAME User - bouquets (TV)
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe01.tv" ORDER BY bouquet
#SERVICE 1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "userbouquet.dbe02.tv" ORDER BY bouquet
·        userbouquet.dbe00.tv
#NAME HDTV
#SERVICE 1:0:1:36f6:c8e:3:eb0000:0:0:0:
#SERVICE 1:0:19:13cf:c8a:3:eb0000:0:0:0:
#SERVICE 1:0:1:3332:c89:3:eb0000:0:0:0:
#SERVICE 1:0:19:1770:c81:3:eb0000:0:0:0:

složka WebInterface /usr/local/lib/enigma2/python/Plugins/Extensions/WebInterface
složka konfigurace emulátorů /usr/local/tuxbox/config

Co ještě prozkoumat:
#define VFDBRIGHTNESS 0xc0425a03 // možnost řízení jasu VFD?

Odstranění problému s TimeShiftem (soubor /usr/lib/enigma2/python/Screens/InfoBarGenerics.py):
http://www.ab-forum.info/download/file.php?id=40924

IRDETO karta, do souboru /var/keys/oscam.dvbapi přidat:

P: 0D96 1
P: 0D96

Ikonky pro DVB-T programy:

cd /usr/share/enigma2/picon/
ln -s 1_0_1_36F6_C8E_3_EB0000_0_0_0.png 1_0_1_1F43_BC6_3_EB0000_0_0_0.png # CT1 (DVB-S)
ln -s 1_0_1_1F43_BC6_3_EB0000_0_0_0.png 1_0_1_101_111_20CB_EEEE0000_0_0_0.png # CT1
ln -s 1_0_1_1F44_BC6_3_EB0000_0_0_0.png 1_0_1_102_111_20CB_EEEE0000_0_0_0.png # CT2
ln -s 1_0_1_3352_C93_3_EB0000_0_0_0.png 1_0_1_201_209_20CB_EEEE0000_0_0_0.png # Nova
ln -s 1_0_1_1F42_BC6_3_EB0000_0_0_0.png 1_0_1_301_209_20CB_EEEE0000_0_0_0.png # Prima
ln -s 1_0_1_3353_C93_3_EB0000_0_0_0.png 1_0_1_202_209_20CB_EEEE0000_0_0_0.png # Nova Cinema
ln -s 1_0_1_3338_C89_3_EB0000_0_0_0.png 1_0_1_302_209_20CB_EEEE0000_0_0_0.png # Prima COOL
ln -s 1_0_1_13AB_C85_3_EB0000_0_0_0.png 1_0_1_801_209_20CB_EEEE0000_0_0_0.png # Barrandov TV
ln -s 1_0_1_1F46_BC6_3_EB0000_0_0_0.png 1_0_1_103_111_20CB_EEEE0000_0_0_0.png # CT 24
ln -s 1_0_1_1F47_BC6_3_EB0000_0_0_0.png 1_0_1_104_111_20CB_EEEE0000_0_0_0.png # CT4


Co třeba tuning Webinterfejsu (/usr/local/lib/enigma2/python/Plugins/Extensions/WebInterface/web-data/gfx):
Nutno přepsat původní obázek ajaxload.gif (http://www.ab-forum.info/download/file.php?id=39608
Odstranění přepínání videomódů pomocí červeného tlačítka (/usr/share/enigma2/keymap.xml).
<map context="InfobarChannelSelection">
        ...
        <key id="KEY_GREEN" mapto="aspectratio" flags="m" />       
        <key id="KEY_RED" mapto="red" flags="m" />

Jak je to se startem aplikací po startu zařízení?
Odkazy na skripty jsou v /etc/rc.d/rc3.d, rc3 - normální režim bez grafického prostředí [1]
vlastní skripty jsou v adresáři /etc/int.d
#!/bin/sh
/usr/local/bin/oscam

Po čisté instalaci (nainstalované balíčky)

busybox - 1.17.1-r1 -
dropbear - r0 -
enigma2 - r2 -
enigma2-plugin-systemplugins-allinonepanel - 0.8 -
enigma2-plugin-systemplugins-hotplug - r0 -
enigma2-plugin-systemplugins-networkbrowser - r0 -
enigma2-plugin-systemplugins-networkwizard - r0 -
enigma2-plugin-systemplugins-positionersetup - r0 -
enigma2-plugin-systemplugins-satfinder - r0 -
enigma2-plugin-systemplugins-skinselector - r0 -
enigma2-plugin-systemplugins-softwareupdate - r0 -
enigma2-plugin-systemplugins-videomode - r0 -
enigma2-plugin-systemplugins-videotune - r0 -
ethtool - r0 -
ipbox-dvb-modules - r3 -
ipbox-keymaps - r2 -
kernel-module - r0 -
python - r3 -
tuxbox-image-info - r3 -
tuxbox-tuxtxt-32bpp - r0 -
twisted - r0 -
update-etc - r2 -

Defaultní zdroje, po instalaci klientserver pluginu (Download)
src/gz locales http://update.abipbox.com/enigmaupd/abng/e2/locales
src/gz plugins http://update.abipbox.com/enigmaupd/abng/e2/plugins
src/gz settings http://update.abipbox.com/enigmaupd/abng/e2/settings

src/gz settings_e1 http://www.abipbox.com/enigmaupd/abng/e1/settings
src/gz plugins_e1 http://www.abipbox.com/enigmaupd/abng/e1/plugins
src/gz skins_e1 http://www.abipbox.com/enigmaupd/abng/e1/skins
src/gz locales_e1 http://www.abipbox.com/enigmaupd/abng/e1/locales
src/gz addons http://www.enigma.satupdate.net/abng/new
src/gz abforum http://www.ab-forum.info/feed/e2hd 


Přimountování samby do Enigmy2

insmod /lib/modules/cifs.ko
mount -t cifs -o username=root,password=heslo  //192.168.1.3/opt /media/SERVER



Zatím konec.

[1] http://www.linuxexpres.cz/praxe/jak-startuje-system
[2] http://dream.reichholf.net/e2web

pondělí 24. října 2011

SQLite3 na 500gP




Co takhle si hodnoty naměřené domácím teploměrem ukládat do databáze? A co třeba potom malovat grafy?
Nejprve je nutné nainstalovat balíček sqlite3-cli.

A nyní už je možné skriptovat:
#!/bin/bash
sqlite3 /opt/www/Databaze/teploty.db "prikaz;"

Takto vytvoříme tabulku venku, se sloupci ID, čas a teplota.
  
CREATE TABLE 'venku' ('ID' INTEGER PRIMARY KEY AUTOINCREMENT, 'Datum' TIMEDATE NOT NULL, 'Teplota' INT);

středa 12. října 2011

Maskování bitů

#define ZapBit(registr,pin) ((registr)|=1<<(pin))
#define VypBit(registr,pin) ((registr)&=~(1<<(pin)))
#define InvertBit(registr,pin) (registr^=1<<pin)
#define GetBit(registr,pin) ((registr)&(1<<(pin)))


debug &= 0xC;
debug = ~debug;
debug &= 0xC;
pokus ^= ~pokus;
//pokus |= debug;

úterý 13. září 2011

Výpočet ceny za elektřinu pro spotřebiče


Příkon [W]
Cena za kWh [Kč]
Cena za den [Kč]
Cena za týden [Kč]
Cena za měsíc [Kč]
Cena za rok [Kč]

pondělí 12. září 2011

Práce s videm z kamery

Hrátky s kamerou HDR-XR160E

Spojovat MTS soubory je možné pomocí příkazu (binárně sloučí soubory)
copy /b video1.mts+video2.mts vystup.mts


Potom již stačí pomocí programu AVIDemux převést video do požadovaného formátu.


http://avidemux.sourceforge.net/
http://forum.avmania.e15.cz/viewtopic.php?f=1704&t=1084852&st=0&sk=t&sd=a&start=15

Pro lepší komfort je možné použít program TSSniper pro stříhání a editaci
http://www.videohelp.com/tools/TSSniper
Nejprve je nutné nainstalovat ffdshow a Haali media splitter

OpenWRT Flash

cd /tmp/
wget http://downloads.openwrt.org/backfire/10.03.1-rc5/brcm47xx/openwrt-brcm47xx-squashfs.trx
sysupgrade /tmp/openwrt-brcm47xx-squashfs.trx