Sida 1 av 2

Hjälp med embeddedprogrammering

Postat: 2 september 2014, 20:00:25
av butthead
Jag behöver en WiFi plattform till olika elektronikprojekt. Gemensamt för alla projekt är att de ska skicka e-post vid en extern trig via WiFi och en hemmarouter vidare ut till valfri e-postserver. Informationen som ska skickas kan t.ex. vara temperatur, ljudnivå, ljusnivå eller nivån på en vanlig analog spänning.

Finns det några duktiga Arduinoprogrammerare här tro? Jag hade nämligen tänkt mig setupen Arduino, Arduino USB Host Shield och en vanlig WiFi dongel. Denna kombination främst för att det är möjligt att cadda om allt detta på en betydligt mindre yta senare.

Den ska kunna konfigurera sig mot en DHCP router. Nödvändig information som vilken router den ska ansluta sig mot och krypteringsnyckel (t.ex. WEP2), samt vilken eller vilka e-postadresser den ska skicka meddelande till ska kunna ändras via t.ex. debugporten (RS232 till PC via t.ex. Teraterm). Det hade dock varit bra om man också kunde skicka denna information som ett e-post till den. Detta är dock inget krav.

Valet av WiFi dongel är beroende på hur lätt det är att hitta drivers som passar. Det räcker att supporta endast en WiFi dongel. Arduino WiFi shield blir tyvärr för dyrt för produkten.

Jag behöver alltså hjälp fram till slutapplikationen, för den gör jag själv.

Re: Hjälp med embeddedprogrammering

Postat: 2 september 2014, 20:13:30
av Micke_s
Skippa wifi dongeln. Kommer bli mycket jobb med bara en wifi dongel.

Kör hellre en wifi shield eller ännu bättre Arduino Yun.

Alternativt så finns carambola 2 http://8devices.com/carambola-2

Edit:
Alternativ 2 är tp-link wr703n, tp-link mr3020, tp-link mr10u.
D-link Dir-505 finns också. då har du strömförsörjning och kan köra openwrt.

Edit2: ändrade den dongeln till en wifi dongel

Re: Hjälp med embeddedprogrammering

Postat: 2 september 2014, 21:18:48
av butthead
WiFi Shield är som jag skrev för dyr och de andra är för stora. Avsikten med beskrivna setupen var möjligheten att kunna få ner storleken. Möjligen kan Carambola2 funka, men den är också för dyr för produkten. Men detta är alltså en förfrågan, alltså inget jag ska göra själv.

EDIT: Carambola2 är OK prismässigt!

Re: Hjälp med embeddedprogrammering

Postat: 2 september 2014, 21:56:07
av Micke_s
Kör carambola2 om den är ok prismässigt. Finns mjukvaru I2C som är väldig enkel att jobba med.

Temperatur och analog inspänning finns båda som i2c enheter.
Ljudnivå kräver någon slags medelvärde före ADC och ljus gå att få till I2C.

Ljusnivå finns det färdiga I2C enheter för, t.ex. avago APDS-9300
http://www.digikey.com/product-detail/e ... ND/2179430

Du kan få in python-mini i carambolan...tror att du t.om. kan få hela python...

Edit: här verkar något bygge för mäta ljud http://hop.concord.org/s1/ext/s1em.html

Re: Hjälp med embeddedprogrammering

Postat: 2 september 2014, 23:03:50
av butthead
Tack. Men jag vill hitta någon som kan göra programmeringen åt mig mot betalning. Elektroniken behöver jag ingen hjälp med.

Re: Hjälp med embeddedprogrammering

Postat: 3 september 2014, 16:02:00
av 6502

Re: Hjälp med embeddedprogrammering

Postat: 3 september 2014, 17:50:58
av Micke_s
Har några tips på frågor som kanske berör produkten.

Hur ska användaren mata in wifi inställningarna?
Hur ska noderna veta var de ska skicka datan?
Vad ska noderna klara av för hårdvara utanför?

Re: Hjälp med embeddedprogrammering

Postat: 3 september 2014, 21:50:17
av butthead
Ett sätt att kunna lägga in eller ändra Wifi-inställningar, epostadress, meddelandetext o.s.v. skulle kunna vara via en debugport (RS232) eller usb-port på kortet där man kopplar in till PC och knackar in dessa inställningar via t.ex. Teraterm. Carambola2 har stöd för USB såg jag. Förmodligen har den också en UART (RS232) om det skulle vara lättare. Då kör man bara med en billig USB->RS232 convertersladd.

Ingen egentlig extra hårdvara. Jag kommer att behöva ändra i koden själv och skriva lite vanlig ANSI C kod (om detta språk ens är möjligt i en openwrt som carambola använder), så att jag t.ex. kan ta in ett mätvärde från en pinne, ta lite medelvärde, och ta beslut om någon epost ska skickas, till vem (av de max 5 upplagda), och vad det ska stå i det. Sedan önskar jag kalla på en rutin som skickar detta e-post. I batteriapplikationer kommer någon strömsnål sensor även trigga en power-on latch till att ge Carambola2 spänning, så att den bootar och kollar vad som ska skickas och i så fall etablerar kontakt med WiFi routern som delar ut DHCP och skickar ev. epost. Min ANSI C kod kommer när den är klar skicka en "power-off" till latchen så att den går ner i sovläge igen.

Jag är elektronikkonstruktör. Programmerar högst ofrivilligt och då är det bara småapplikationer i assembler eller ANSI C på sin höjd. Eller FPGA.

Re: Hjälp med embeddedprogrammering

Postat: 3 september 2014, 22:20:33
av Micke_s
Det går att köra c-kod på carambolan. Dock så måste man cross-kompilera det på en annan maskin.
En aning krångligare än köra python t.ex.

Kör du uart så har du busybox, vanlig terminal likt de man har i linux.

Re: Hjälp med embeddedprogrammering

Postat: 4 september 2014, 06:39:55
av butthead
Hej.
Det låter som om att du kan detta. Är du en kandidat?

Re: Hjälp med embeddedprogrammering

Postat: 4 september 2014, 14:59:41
av rln
Hej
Vore inte Raspberry ett bättre alternativ? Den är förmodligen lättare att sätta ihop mjukvarumässigt, när du nu vill ha WiFi, DHCP, mail etc etc. Aningens dyrare hårdvara kanske, men du sparar tid på mjukvaran.

Re: Hjälp med embeddedprogrammering

Postat: 4 september 2014, 15:13:43
av Nerre
Enligt de krav som räknats upp är pajen för stor.

Carambola2 kör ju linux så det går nog att fixa det mesta där.

Re: Hjälp med embeddedprogrammering

Postat: 4 september 2014, 20:33:00
av Micke_s
Kan vara bollplank om du vill, har lite för mycket att göra för hinna programmera en hel lösning tyvärr. Tror det lättar efter nyår :vissla:

Edit: en ide för konfigurering: textfil på usb-pinne och se om filen finns vid startup.

Re: Hjälp med embeddedprogrammering

Postat: 7 september 2014, 22:50:37
av butthead
Gillar din idé med textfil på usb pinne. (Hör gärna av dig när du får tid! Sätt gärna en prislapp på det via PM).

Re: Hjälp med embeddedprogrammering

Postat: 14 september 2014, 09:00:51
av butthead
Jag har börjat lite smått. Men har fastnat när det gäller din idé med config.txt på usb-sticka.

Såhär ser scriptet ut som initierar wlan, men hur gör jag så att den hämtar informationen från USB-stickan istället och ersätter denna hårdkodade med?

option ifname 'wlan0'
option proto 'static'
option ipaddr '192.168.1.120'
option netmask '255.255.255.0'