Benvenuto Christian,
É molto semplice quello che vuoi fare, da Souliss.cpp prendi il codice della funzione DigOut, incollallo nel tuo sketch prima del setup() e rinominalo come RCDigOut.
Nella funzione ci sono due parti, una per comandare l'accensione e l'altra lo spegnimento. Sostituisci le digitalWrite con il codice RCSwitch per accensione e spegnimento.
Usa come sketch di partenza HelloWorld e sostuisci la chiamata a DigOut presente nel loop() con la tua RCDigOut.
Cosí dovresti essere a posto per partire. Considera che in questo modo invii continuamente comandi, successivamente vedremo come ovviare al problema.
Visto che l'applicazione é interessante, ti invito ad aprire un topic in inglese con lo sketch modificato come appena detto.
C'é un topic per le presentazioni, illustra lì come intendi usare Souliss, così teniamo traccia delle idee.
Infine ti chiediamo un paio di cortesie: la prima é quella di votare su GooglePlay e GoogleCode; la seconda, di utilizzare i social network per mostrare i primi passi con Souliss ai tuoi amici, per aiutarci a far crescere la conunità intorno al progetto.
Aggiornaci sui risultati,
Dario.
From mobile.
Se ha voglia di mettere mano all'impianto potrebbe utilizzare i relè da 16A come ho fatto io.
Attento ai pin che usi, ad esempio 13 11 12 sono sempre usati dai transceiver (come ethernet) a cui se ne aggiunge uno variabile, tipicamente il 10 per ethernet.
Mi raccomando, foto e video :)
Grazie,
Dario.
From mobile.
É un modo comodo per non mettersi a tirare fili, a me interessa molto ed avevo pensato a qualcosa del genere.
Il problema é che ne penso 100 e ne faccio una. :)
Dario
From mobile.
Non supportano la rilettura dello stato, quindi puoi avere un valore falsato dello stato su SoulissApp. Prova e poi vediamo i dettagli.
Dario.
From mobile.
Aggiornaci sui risultati.
Come cortesia, se fai qualche foto e qualche video, condividendo i tuoi sketch realizziamo un piccolo tutorial.
Hai fatto l'apprendimento dei codici?
Dario.
From mobile.
--
You received this message because you are subscribed to the Google Groups "souliss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to souliss+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
:)
From mobile.
A parte la limitazione dello stato questo approccio mi sembra semplice ed economico. Potendo, utilizzerei dei sensori luce per leggere lo stato. L'integrazione dovrebbe essere semplice, ma torniamo al problema dei cablaggi..
Complimenti,
Alessandro
L'uso dei sensori di luce é interessante, cosí come potrebbe esserlo quello dei sensori di corrente.
Peró volendo rimanere in una soluzione semplice ed economica si puó inviare periodicamente un comando di allineamento.
Anche a me questa soluzione piace molto.
Dario.
From mobile.
--
Hai provato con lo sketch che ho inserito nel post precedente?
Dario.
From mobile.
La putenza nei bracci :)
Attendiamo tue nuove,
Dario
From mobile.
Per il nome poi vediamo, l'importante é avere del materiale per realizzare una guida.
Grazie,
Dario.
From mobile.
Mi organizzo per trasferire i contenuti nel wiki.
Hai intenzione di sviluppare altre funzionalità (aggiungendo altri nodi o altri dispositivi RF) o hai raggiunto il tuo obiettivo funzionale?
Grazie per il tuo contributo.
Dario.
From mobile.
christian
La prossima release avrà casualmente un baco, tale da accenderti le luci di casa un quarto d'ora dopo esser andato a letto :p
From mobile.
...
Christian per gli esperimenti con foto-resistenza quale tipico hai usato? Ti funzionavano i grafici?
Grazie,Alessandro
--
You received this message because you are subscribed to the Google Groups "souliss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to souliss+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Ciao Christian,
Allega sketch, foto video o qualsiasi altra cosa ti venga in mente, prima o poi uscirà fuori qualcuno che ne avrà bisogno :)
Considera che gli nrf24l01 non sono ancora stati inclusi in vNet, ma guardando alle librerie disponibili dovrebbe essere molto semplice farlo.
Te la senti di lavorarci? Io sto lavorando alla versione 5 di Souliss, rinviata da troppo tempo, ma inizialmente non ci saranno tutte le funzionalità promesse, almeno in prima battuta.
Io ho una coppia di nrf, quindi posso darti supporto.
Fammi sapere,
Dario.
From mobile.
ciao
ho visto che gli nRF24L01 non sono inclusi, infatti pensavo di usarli in modo simile alle prese radidiocomandate, inviando e ricevendo messaggi codificati e fruttando le librerie già esistenti, con il vantaggio di poter utilizzare sketch già fatti.
ciao christian
ok mi metto al lavoro....grazie mille
Christian
per iniziare ringrazio per il vostro interessante lavoro!
premesso che sono alle prime armi con arduino, e che stò studiando la programmazione ...
vorrei aiuto per integrare souliss e l'uso di prese telecomandate ( quelle che si acquistano ai brico )
souliss funziona perfettamente sia in Ethernet che da internet....
sono riuscito a far andare le prese con un trasmettitore a 433 MHz e RC-switch controllato con arduino .
ma non riesco ad integrare i due sistemi!
il problema è che per attivare le prese, devo inviare un codice per accendere e un'altro per spegnerle.
quindi dovrei far si che attivando un canale, arduino possa inviare per pochi secondi il codice di accensione, poi interrompere la trasmissione, per poi inviare il codice di spegnimento alla disattivazione del canale.
penso che poter integrare souliss con questo sistema di prese, possa essere interessante per tanti altri utenti e rendere il sistema estremamente più flessibile.
grazie per eventuale attenzione
christian
Ciao Giulio,
Per quanto riguarda SoulissApp da 3g, devi configurare una VPN e mettere l'indirizzo in indirizzo pubblico di Souliss.....per le prese hai manuale/datasheet?
Flavio
From Mobile Nexus
Dimenticavo.....Benvenuto!
C'è una sezione apposita per presentati e presentare il tuo progetto con Souliss! ;)
Flavio
From Mobile Nexus
A dimenticavo Dario lavoro con la versione A5.0.1 l'ultima. Puoi darmi qualche spunto in più per 3g?
Dovresti usare un servizio di Dynanic DNS,in quanto assumo che la tua connessione Vodafone sia priva di IP statico....questo servizio, tramite un tuo indirizzo, farà girare il traffico di souliss da 3G verso la tua connessione Vodafone di casa....
Lato router devi nattare le porte di Souliss verso l'IP del tuo nodo principale....
Flavio
From Mobile Nexus
A dimenticavo Dario lavoro con la versione A5.0.1 l'ultima. Puoi darmi qualche spunto in più per 3g?
--
É semplice, sul tuo router configura l'opzione di port forwarding per il traffico UDP in ingresso sulla porta 230, in modo che venga indirizzato all'IP locale della scheda Souliss (192.168.1.x immagino).
A questo punto, puoi ricavare il tuo indirizzo IP cercando su Google "my ip address", inserendolo in SoulissApp all'interno del campo "ip pubblico" dovresti essere ingrado di comunicare.
L'indirizzo pubblico é dinamico, ma fai prima questa prova e poi affrontiamo il discorso.
Se riesci a fare degli screenshot in lingua inglese, aggiungiamo una pagina dedicata sul wiki.
Dario.
From mobile.
Ok ci lavoro
gli sms vorrei inviarli gratis con la shiel ethernet inviando un'email tramite virgilio che poi inoltra a google, con un paio di trucchetti sms tramite calendar o un altro servizio che non ricordo sempre di google. Dopo il dsn ci lavoro
Io uso da anni http://dyn.com
Al momento per usarlo gratuitamente è necessario il login al sito almeno una volta ogni 30 giorni, oppure basta cliccare sul link che si riceve via email un po' di giorni prima della scadenza.
Io uso da anni http://dyn.com
Al momento per usarlo gratuitamente è necessario il login al sito almeno una volta ogni 30 giorni, oppure basta cliccare sul link che si riceve via email un po' di giorni prima della scadenza.
--
Ciao ragazzi,
Ciao ragazzi,mi sfugge qualcosa mi sono iscritto e ho settato il router al servizio dlinkddns (offerto da dynDns che ora non è più free ma a pagamento, gratuito solo pe utenti dlink) ma proprio souliss non và. A questo punto sull' indirizzo pubblico dell' app cosa dovrei mettere, l'host creato? l'IP rimane sempre dinamico e sarei sempre disponibile all'host creato ma se lo inserisco nel campo ip pubblico dice indirizzo non valido. Dario gli shotscreen in inglese non è possibile perchè la lingua del router è italiano o spagnolo.
--
Ciao Dario,si il ping dell' host va a buon fine. probabilmente non ho ben chiaro il funzionamento.Il servizio di DDNS mi da un host e la possibilità di cambiare l' IP che mi dà il provaider con un IP sempre uguale!Accedo al servizio e posso configurare come screenshotnel campo NEW IP ADDRESS metto un ip a mio piacimento che poi viene salvato in IP in DNS.
Questo ip in dns dovrei metterlo nell'indirizzo pubblico dell'app souliss.
Ho fatto alcune prove ma non va ne inserendo l'host ne con l'ip dns. Poi comunque ad agni riavvio del router l' IP in DNS non viene mantenuto. Anche se salvo uno nuovo e faccio un ping non va a buon fine. Ho un pò di confusione.p.s. Ho fatto l'aggiornamento del router ora la lingua inglese c'è appena capisco tutto posso fare tutto in inglese.
Ciao, sono riuscito ho creato la guida screenshot in inglese. (Inglese mamma google). Grazie a tutti per l'aiuto.Per quel progetto degli sms aprirò un nuovo argomento.
É cosa buona e giusta :-)
Grazie,
Dario.
From Mobile.
Quelle a 433 Mhz sono praticamente tutte uguali, le trovi su eBay ad una ventina di euro.
Dario
From Mobile.
--
--
#define BOARDTYPE_INSKETCH
#define QC_BOARDTYPE 0x41 //Arduino Ethernet (or Ethernet Shield) with USART
#define GATEWAYTYPE_INSKETCH
#define QC_GATEWAYTYPE 0x02 //0x00 None, 0x01 Gateway, 0x02 Gateway Data Persistant
#define INTERFACE_INSKETCH
#define QC_INTERFACE 0x02 //0x00 None, 0x01 HHT Command Parser, 0x02 openHab XML Interface
#define USART_DEBUG 1
#define USARTDRIVER Serial1
#include "SoftwareSerial.h"
#include "Souliss.h"
#include "SpeakEasy.h"
#include "Typicals.h"
#include <SPI.h>
#include <RCSwitch.h>
// network addresses
#define usart_address 0xCE01
#define caldaia_address 0xCE02
#define eth_address 0x0081 //192.168.1.129
#define myvNet_subnet 0xFF00
#define myvNet_supern 0x0000
#define NASCTL01 0 //T12 ID Logico dell'uscita controllo caldaia
#define FAN 1 //T11 per comandare la ventola di aspirazione
#define DEADBAND 0.01 //Se la variazione è superio del 5% aggiorno
// flag
U8 data_chg = 1;
RCSwitch mySwitch = RCSwitch();
SoftwareSerial myUSARTDRIVER(6, 7); // RX, TX
// Send an output command to the socket
void Souliss_RcDigOut1(U8 pin, U8 value, U8 *memory_map, U8 slot)
{
// If output is active switch on the pin, else off
if(memory_map[MaCaco_OUT_s + slot] == value)
mySwitch.switchOn("10101","00100");
else
mySwitch.switchOff("10101", "00100");
}
void setup()
{
myUSARTDRIVER.begin(9600);
myUSARTDRIVER.println("Serial is working!");
// Setup the network configuration
// 192.168.1.128
Souliss_SetAddress(eth_address, myvNet_subnet, myvNet_supern);
Souliss_SetAddress(usart_address, myvNet_subnet, myvNet_supern);
// Load the address also in the memory_map
Souliss_SetLocalAddress(memory_map, eth_address);
// Set the addresses of the remote nodes
Souliss_SetRemoteAddress(memory_map, caldaia_address,1);
// Tipico T11 modificato per il controllo del NAS
Souliss_SetT11(memory_map, NASCTL01);
// Tipico T11 per controllare l'aspiratore
Souliss_SetT11(memory_map, FAN);
//------NAS
pinMode(22, INPUT); // Pulsante HW NAS01
pinMode(24, OUTPUT); // Relè NAS01
//------FAN
pinMode(26, INPUT); // Pulsante HW Aspiratore
pinMode(28, OUTPUT); // Relè Aspiratore
// Transmitter is connected to Arduino Pin #10
pinMode(10, OUTPUT); // Trasmettitore
mySwitch.enableTransmit(10);
}
void loop()
{
EXECUTEFAST() {
UPDATEFAST();
FAST_50ms() {
//Gestisco Pulsante e Uscita del NAS
Souliss_DigIn(22, Souliss_T1n_ToogleCmd, memory_map, NASCTL01);
Souliss_DigOut(24, Souliss_T1n_Coil, memory_map, NASCTL01);
//Gestisco Pulsante e Uscita della Ventola
Souliss_DigIn(26, Souliss_T1n_ToogleCmd, memory_map, FAN);
Souliss_DigOut(28, Souliss_T1n_Coil, memory_map, FAN);
if(data_changed) {
Souliss_RcDigOut1(10, Souliss_T1n_Coil, memory_map, FAN);
}
}
FAST_70ms() {
// Esegui Logic per la linea NAS01
Souliss_Logic_T11(memory_map, NASCTL01, &data_chg);
// Esegui Logic per la linea FAN
Souliss_Logic_T11(memory_map, FAN, &data_chg);
Souliss_CommunicationData(memory_map, &data_changed);
Souliss_CommunicationChannels(memory_map);
Souliss_GetTypicals(memory_map);
}
}
EXECUTESLOW() {
UPDATESLOW();
SLOW_510s() {
Souliss_RcDigOut1(10, Souliss_T1n_Coil, memory_map, FAN);
}
}
}
--
You received this message because you are subscribed to a topic in the Google Groups "souliss" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/souliss/F_VheIs5Te8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to souliss+u...@googlegroups.com.
Sono funzioni che cosí velocemente girano a vuoto, c'é qualcosa di storto negli sketch.
Usi il T11 standard o una versione modificata da te?
Dario.
From Mobile.
--
--
You received this message because you are subscribed to a topic in the Google Groups "souliss" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/souliss/F_VheIs5Te8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to souliss+u...@googlegroups.com.
Quello é il trigger degli eventi...
From Mobile.
#define BOARDTYPE_INSKETCH
#define QC_BOARDTYPE 0x03 //Arduino Ethernet w5100
#define GATEWAYTYPE_INSKETCH
#define QC_GATEWAYTYPE 0x01 //0x00 None, 0x01 Gateway, 0x02 Gateway Data Persistant
#define INTERFACE_INSKETCH
#define QC_INTERFACE 0x00 //0x00 None, 0x01 HHT Command Parser, 0x02 openHab XML Interface
#include "Souliss.h"
#include "SpeakEasy.h"
#include "Typicals.h"
#include <SPI.h>
// network addresses
#define eth_address 0x0081 //192.168.1.129
#define myvNet_subnet 0xFF00
#define myvNet_supern 0x0000
#define NASCTL01 0 //T11 per comandare l'accensione del NAS
#define FAN 1 //T11 per comandare la ventola di aspirazione
#define DEADBAND 0.01 //Se la variazione è superio del 5% aggiorno
// flag
U8 data_chg = 1;
void setup()
{
Souliss_SetAddress(eth_address, myvNet_subnet, myvNet_supern);
Souliss_SetLocalAddress(memory_map, eth_address);
Souliss_SetT11(memory_map, NASCTL01);
Souliss_SetT11(memory_map, FAN);
//------NAS
pinMode(22, INPUT); // Pulsante HW NAS01
pinMode(24, OUTPUT); // Relè NAS01
//------FAN
pinMode(26, INPUT); // Pulsante HW Aspiratore
pinMode(28, OUTPUT); // Relè Aspiratore
}
void loop()
{
EXECUTEFAST() {
UPDATEFAST();
FAST_50ms() {
//Gestisco Pulsante e Uscita del NAS
Souliss_DigIn(22, Souliss_T1n_ToogleCmd, memory_map, NASCTL01);
//Gestisco Pulsante e Uscita della Ventola
Souliss_DigIn(26, Souliss_T1n_ToogleCmd, memory_map, FAN);
// Esegui Logic per la linea NAS01
Souliss_Logic_T11(memory_map, NASCTL01, &data_chg);
// Esegui Logic per la linea FAN
Souliss_Logic_T11(memory_map, FAN, &data_chg);
Souliss_DigOut(28, Souliss_T1n_Coil, memory_map, FAN);
Souliss_DigOut(24, Souliss_T1n_Coil, memory_map, NASCTL01);
}
FAST_70ms() {
Souliss_CommunicationData(memory_map, &data_changed);
}
}
}
Parti da uno sketch degli esempi, se il problema c'é ancora, aggiorna la libreria.
Dario.
From Mobile.