Autore Topic: OpenWRT su AGPF  (Letto 6934 volte)

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #15 il: Febbraio 08, 2011, 10:34:17 am »
Un piccolo problema con il sensore di temperatura: la prima volta che leggo la temperatura mi da -60 gradi. E' normale? C'? un metodo per risolvere?

truthahn

  • Global Moderator
  • Hero Member
  • *****
  • Post: 1546
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #16 il: Febbraio 08, 2011, 01:10:40 pm »
Dipende da dove abiti! Lapponia? :-D
Si vede che deve in qualche modo inizializzarsi...
metti uno sleep nello script
leggo temperatura
sleep 1
rileggo temperatura

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #17 il: Febbraio 13, 2011, 07:58:00 pm »
Sto andando avanti col progetto della centralina sull'AGPF. Mi sono accorto che eseguendo SayDigits o SayNumber in Asterisk, il file audio viene riprodotto con interruzioni. Ho provato ad installare il modulo ztdummy sperando di risolvere ma .... ancora niente.

Come potrei eliminare questo fastidioso problema?

« Ultima modifica: Febbraio 16, 2011, 12:39:33 pm da fpaliuc »

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #18 il: Febbraio 14, 2011, 10:15:49 am »
Qualcuno aveva chiesto nel forum come avere con una chiamata su Asterisk lo stato dei rel?. Ecco una soluzione non molto elaborata che restituisce lo stato dei rel? con SayDigits  (lo stato pu? essere 0 o 1). Si potrebbero registrare dei file audio con i nomi dei dispositivi (tipo: Luce, Riscaldamento ... ecc) e altri 2 file: "Accesso" e "Spento" da utilizzare con la funzione Playback().

Ho creato dentro /etc/centralina il file astpassword che contiene la password per avere accesso allo stato dei rel? tramite telefono

In /etc/astrerisk/extensions.conf:
Codice: [Seleziona]
[macro-stato]
exten => s,1,Ringing()
exten => s,n,Answer()
exten => s,n,Read(INPUT|agent-pass|8||3|10)
exten => s,n,SayDigits(${INPUT})
exten => s,n,AGI(verifica.sh,${INPUT})
exten => s,n,GotoIf($[${answer} = 0]?exit:continua)
exten => s,n(exit),Playback(vm-goodbye)
exten => s,n,Hangup()
exten => s,n,Wait(2)
exten => s,n(continua),SayNumber(${answer9})
exten => s,n,Wait(2)
exten => s,n,SayNumber(${answer10})
exten => s,n,Wait(2)
exten => s,n,SayNumber(${answer25})
exten => s,n,Wait(2)
exten => s,n,Playback(vm-goodbye)
exten => s,n,Hangup()

 

exten => numero_VoIP,1,Macro(stato)

In /usr/lib/asterisk/cgi-bin/verifica.sh:
Codice: [Seleziona]
#!/bin/sh
/usr/sbin/stato.sh $1
exit 0

Che mi esegue lo script: /usr/sbin/stato.sh :
Codice: [Seleziona]
#!/bin/sh
#
###############################################################
###############################################################
#File: /usr/sbin/stato.sh #
###############################################################
###############################################################

passwd="$(cat /etc/centralina/astpassword | sed -n 1p)"

if [ $passwd != $1 ]; then
VALUE=0
echo -e "SET VARIABLE answer $VALUE"
exit 0 > /dev/null
fi

VALUE=1
echo -e "SET VARIABLE answer $VALUE"

for n in 9 10 25; do

gp="$(gpioctl get $n | sed -n '/Pin/p'| awk '{ print $4 }')"

if [ $gp == "HIGH" ]; then
              VALUE2=0
echo -e "SET VARIABLE answer$n $VALUE2"
fi

if [ $gp == "LOW" ]; then
VALUE2=1
echo -e "SET VARIABLE answer$n $VALUE2"
fi
done

Il codice, ovviamente, pu? essere elaborato per gestire in modo migliore i GPIO ...
Visto che oggi mi ? appena arrivata la scheda relay, dovrei riscrivere il codice per poter gestire tutto tramite il bus i2c  :-D
« Ultima modifica: Febbraio 14, 2011, 03:06:58 pm da fpaliuc »

marco1979

  • Novellino
  • *
  • Post: 34
    • Mostra profilo
    • E-mail
Re: OpenWRT su AGPF
« Risposta #19 il: Febbraio 14, 2011, 04:51:09 pm »
 :-) ok grazie!,
ero arrivato a fare un ivr che mi comandava le varie utenze ma non sapevo come leggere le variabili degli stati delle uscite....
...tanto x la cronaca questo ? il mio extension.conf  di asterisk sul router che con un trunk iax comunica con un altro asterisk...
Codice: [Seleziona]
[general]
static=yes
writeprotect=no
autofallthrough=yes
extenpatternmatchnew=yes
priorityjumping=yes
clearglobalvars=no

[fromiax]
exten => s,1,Goto(menu_ivr,s,1)
exten => 1000,1,Goto(menu_ivr,s,1)

;******IVR******
[menu_ivr]
exten => s,1,Answer()
exten => s,n,Wait(2)
exten => s,n,Authenticate(passwd)
exten => s,n,Wait(1)
exten => s,n,Playback(benvenuto)
exten => s,n,Background(scelta_utenza)
exten => s,n,WaitExten(3)
exten => s,n,Goto(s,4)

exten => 1,1,Goto(riscaldamento,s,1)
exten => 2,1,Goto(luci_interne,s,1)
exten => 3,1,Goto(luci_esterne,s,1)
exten => 4,1,Goto(reboot_server,s,1)

[riscaldamento]
exten => s,1,Background(riscaldamento)
exten => s,n,WaitExten(3)
exten => s,n,Goto(s,1)
exten => 1,1,System(/usr/ivr/gpio25_on.sh)
exten => 1,2,Playback(riscaldamento_on)
exten => 2,1,System(/usr/ivr/gpio25_off.sh)
exten => 2,2,Playback(riscaldamento_off)
exten => 3,1,Goto(menu_ivr,s,4)

[luci_interne]
exten => s,1,Background(luci_interne)
exten => s,n,WaitExten(3)
exten => s,n,Goto(s,1)
exten => 1,1,System(/usr/ivr/gpio7_on.sh)
exten => 1,2,Playback(luce_on)
exten => 2,1,System(/usr/ivr/gpio7_off.sh)
exten => 2,2,Playback(luce_off)
exten => 3,1,Goto(menu_ivr,s,4)

[luci_esterne]
exten => s,1,Background(luci_esterne)
exten => s,n,WaitExten(3)
exten => s,n,Goto(s,1)
exten => 1,1,System(/usr/ivr/gpio24_on.sh)
exten => 1,2,Playback(luce_on)
exten => 2,1,System(/usr/ivr/gpio24_off.sh)
exten => 2,2,Playback(luce_off)
exten => 3,1,Goto(menu_ivr,s,4)

[reboot_server]
exten => s,1,Background(reboot)
exten => s,n,WaitExten(3)
exten => s,n,Goto(s,1)
exten => 1,1,System(/usr/ivr/gpio6.sh)
exten => 1,2,Playback(reboot_server)
exten => 3,1,Goto(menu_ivr,s,4)

exten => t,n,Hangup()

exten => i,n,Hangup()

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #20 il: Febbraio 14, 2011, 05:49:13 pm »
Con il bus i2c dobbiamo modificare tutto il codice  :-D

marco1979

  • Novellino
  • *
  • Post: 34
    • Mostra profilo
    • E-mail
Re: OpenWRT su AGPF
« Risposta #21 il: Febbraio 15, 2011, 07:55:44 pm »
..ma quali sono i vantaggi secondo te ad usare una scheda relay comandata dal bus i2c rispetto a comandare il tutto direttamente dai gpio?
e quale hai acquistato??

truthahn

  • Global Moderator
  • Hero Member
  • *****
  • Post: 1546
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #22 il: Febbraio 15, 2011, 08:41:41 pm »
beh, su un bus i2c, sullo stesso bus, ci puoi collegare decine di rel?, termometri, rtc , sensori ecc ecc.. ed ? facile facile da costruire.

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #23 il: Febbraio 16, 2011, 09:32:14 am »
..ma quali sono i vantaggi secondo te ad usare una scheda relay comandata dal bus i2c rispetto a comandare il tutto direttamente dai gpio?
e quale hai acquistato??
Truthahn h aragione: sul bus I2C puoi collegare una serie di sensori - temperatura, pressione, umidit?, infrarossi, fotocelle ...ecc. In pi?, puoi collegare tanti dispositivi. La scheda relay che ho comprato ? quella consigliata da Truthahn ... da futurlec (anche se trovi in giro tanti altri siti da dove comprarla).

Mi servirebbe un idea su come gestire la luce di una stanza, sia dall'interruttore che dalla centralina di controllo remoto. Il problema che ho ? che accendendo la luce dall'interruttore al muro....lo stato del relay corrispondente non cambia. So che potrei cambiare lo stato del pin mettendolo a massa ... ma dovrei avere l'interruttore normale pi? un pulsante (per cambiare lo stato del pin) - soluzione che non mi piace molto.

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #24 il: Febbraio 23, 2011, 05:54:42 pm »
Sono 2 giorni che provo a compilare chan_datacard per la piattaforma Broadcom BCM63XX. Appena sistemo un'errore ... mi esce un'altro. C'? qualcuno che potrebbe provare a ricompilare utilizzando questo makefile:

Codice: [Seleziona]
#
# Copyright (C) 2011 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=asterisk16-chan-datacard
PKG_REV:=286
PKG_VERSION:=1.0.r$(PKG_REV)
PKG_RELEASE:=170

#PKG_SOURCE_URL:=http://datacard.googlecode.com/svn/trunk/
#PKG_SOURCE_VERSION:=$(PKG_RELEASE)
#PKG_SOURCE_PROTO:=svn
# or
PKG_SOURCE:=chan_datacard-$(PKG_VERSION).tgz
PKG_SOURCE_URL=http://datacard.googlecode.com/files/
PKG_MD5SUM:=6697fece15734f061834cd84182b46d1

PKG_SOURCE_SUBDIR:=chan_datacard-$(PKG_VERSION)
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)

WITH_ASTERISK=asterisk-1.6.2.14

include $(INCLUDE_DIR)/package.mk

define Package/asterisk16-chan-datacard
SUBMENU:=asterisk16 (Complete Open Source PBX), v1.6.x
SECTION:=net
CATEGORY:=Network
URL:=http://www.asterisk.org/
MAINTAINER:=Hans Zandbelt <hans.zandbelt@gmail.com>
DEPENDS:= +asterisk16 +libiconv
TITLE:=Huawei UMTS 3G datacards support
endef

define Package/asterisk16-chan-datacard/description
Asterisk channel driver for Huawei UMTS 3G datacards
endef

MAKE_ARGS:= \
CC="$(TARGET_CC)" \
LD="$(TARGET_CC)" \
CFLAGS="$(TARGET_CFLAGS) -DLOW_MEMORY -D_GNU_SOURCE $(TARGET_CPPFLAGS) -I$(STAGING_DIR)/usr/lib/libiconv/include -I$(BUILD_DIR)/$(WITH_ASTERISK)/include -DHAVE_CONFIG_H -I." \
LDFLAGS="$(TARGET_LDFLAGS)" \
DESTDIR="$(PKG_INSTALL_DIR)/usr/lib/asterisk/modules"

# for svn
#        (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status}; \
#                        autoconf \
#                                );
#        $(call Build/Configure/Default)

define Build/Configure
$(call Build/Configure/Default, \
    --with-asterisk=$(BUILD_DIR)/$(WITH_ASTERISK)/include \
    $(MAKE_ARGS) \
)
endef

define Build/Compile
mkdir -p $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules
$(MAKE) -C "$(PKG_BUILD_DIR)" $(MAKE_ARGS) all install
endef

define Package/asterisk16-chan-datacard/conffiles
/etc/asterisk/datacard.conf
endef

define Package/asterisk16-chan-datacard/install
$(INSTALL_DIR) $(1)/etc/asterisk
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/datacard.conf $(1)/etc/asterisk/
$(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/chan_datacard.so $(1)/usr/lib/asterisk/modules/
endef

$(eval $(call BuildPackage,asterisk16-chan-datacard))

truthahn

  • Global Moderator
  • Hero Member
  • *****
  • Post: 1546
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #25 il: Marzo 01, 2011, 12:08:51 pm »
Compilato senza errori... ma non testato... a te l'ardua sentenza...

qui trovi tutti gli ipk di asterisk 16 compreso il chan_datacard.


fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #26 il: Marzo 01, 2011, 01:58:21 pm »
Compilato senza errori... ma non testato... a te l'ardua sentenza...

qui trovi tutti gli ipk di asterisk 16 compreso il chan_datacard.



Grazie! Appena mi arriva la chiavetta Huawei lo provo (dovrebbe arrivarmi il 20 o il 23 marzo). Se ti pu? essere utile, sono riuscito a compilare chan_datacard per asterisk-1.8.x

Non riesco a capire perch? quello per asterisk-1.6.2.14 non va a buon fine ... Magari mi dici che passi hai fatto per compilarlo sul tuo PC (hai utilizzato lo stesso makefile?).
« Ultima modifica: Marzo 01, 2011, 02:29:45 pm da fpaliuc »

truthahn

  • Global Moderator
  • Hero Member
  • *****
  • Post: 1546
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #27 il: Marzo 01, 2011, 06:30:55 pm »
qui ora non ho il Makefile... ho cambiato i MAKE_ARGS del makefile.
L'hai compilato per il brcm63xx o per x86?

fpaliuc

  • Full Member
  • ***
  • Post: 140
  • www.cristinasurbera.it
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #28 il: Marzo 01, 2011, 09:26:03 pm »
qui ora non ho il Makefile... ho cambiato i MAKE_ARGS del makefile.
L'hai compilato per il brcm63xx o per x86?

L'ho compilato per bcm63xx ma, se ti serve, ti posso inviare il makefile

truthahn

  • Global Moderator
  • Hero Member
  • *****
  • Post: 1546
    • Mostra profilo
Re: OpenWRT su AGPF
« Risposta #29 il: Marzo 01, 2011, 09:40:51 pm »
certo! grazie cos? lo provo! :-)