Recent Posts

Pages: [1] 2 3 ... 10
1
Hi, I have 20 arduino nano slaves (Tx) with nrf24l01+. I need that all this slaves send data to one master (RX). Is possible? The NRF has 5 pipes (address) for receive the data, but how can i read the data dor slave 1, then for slave 2, then for slave 3...............then for slave 20. Please help!
2
Project Guidance / Re: new to arduino
Last post by iceman69004 - Today at 02:45 am
Thank You all very much. Im a 20 Year Army Vet and yes my head can be very hard at times. But now that i read your comments, I see why using the correct punctuation and lettering is so important.
My apologies to my Arduino famiy. Im sorry for being an Ass. I really appreciate you all.
Okay so i will try those idaes thru out the next couple weeks and i will get back to you all as soon as i get the results. Again thank you all so much. And again im sorry for being uptight.

Sincerely. A hard headed old man, lol, ozzie
3
Software / Re: Enviar Un Archivo Desde Ar...
Last post by Lucario448 - Today at 02:44 am
Hola lo que intento es enviar un archivo a la computadora mediante arduino conectandolo a travez de el usb
Hace mucho tiempo había ayudado a un usuario llamado Metaconta en una faena similar, pero el hilo ya quedó muy atrás; creo que se puede buscar como "enviar fotos desde arduino".


Yo quiero que al momento de conectar el arduino "Automáticamente" envie el archivo a la computadora y lo ejecute la computadora
Eso ya es del lado de la aplicación en la computadora. Un proceso que se ejecute en segundo plano o como un servicio ("daemon" en Linux) que pase constantemente verificando si hay puertos seriales disponibles. Si encuentra uno, se conecta a ese y espera durante un tiempo limitado ("timeout") un código que identifique que dicho puerto corresponde al Arduino. Si corresponde, envía una respuesta para que el Arduino envie el archivo y este sea ejecutado automáticamente; caso contrario se desconecta buscando otro y repitiendo las premisas antes dadas.

Es una idea general, cómo la vas a implementar depende fuertemente del lenguaje de programación.
4
Hello, im using the example by http://forum.arduino.cc/index.php?topic=396450.0 to read a NMEA strings WIMDA and GPRMC from GPS unit, it send me the 2 strings every 1 second.


////////////////////////////////////////////////////////////
#include <SoftwareSerial.h>

SoftwareSerial airmar(10,11);
// Example 2 - Receive with an end-marker

const byte numChars = 72;
char receivedChars[numChars];   // an array to store the received data

boolean newData = false;

void setup() {
   Serial.begin(19200);
   airmar.begin(4800);
   Serial.println("<Arduino is ready>");
}

void loop() {
   recvWithEndMarker();
   showNewData();
}

void recvWithEndMarker() {
   static byte ndx = 0;
   char endMarker = '\n';
   char rc;
   airmar.listen();
 
   while (airmar.available() > 0 && newData == false) {
       rc = airmar.read();
       
       if (rc != endMarker) {
           receivedChars[ndx] = rc;
           ndx++;
           if (ndx >= numChars) {
               ndx = numChars - 1;
           }
       }
       else {
           receivedChars[ndx] = '\0'; // terminate the string
           ndx = 0;
           newData = true;
       }
   }
}

void showNewData() {
   if (newData == true) {
       Serial.print("Dato_leido");
       Serial.println(receivedChars);
       newData = false;
   }

   
}


And in the Serial terminal

Dato_leido$WIMDA,29.9818,I,1.0153,B,23.7,C,,,,,,,323.1,T,311.6,M,0.2,N,0.1,M*2C
Dato_leido$GPRMC,002411.20,A,3151.7113,N,11640.1045,W,0.0,268.4,270517,11.5,E,D*1
Dato_leido$WIMDA,29.9877,I,1.0155,B,23.7,C,,,,,,,323.2,T,311.7,M,0.3,N,0.2,M*23
Dato_leido$GPRMC,002412.20,A,3151.7113,N,11640.1045,W,0.0,291.2,270517,11.5,E,D*1
Dato_leido$WIMDA,29.9788,I,1.0152,B,23.7,C,,,,,,,323.1,T,311.6,M,0.2,N,0.1,M*2B
Dato_leido$GPRMC,002413.20,A,3151.7113,N,11640.1045,W,0.0,259.8,270517,11.5,E,D*1
Dato_leido$WIMDA,29.9847,I,1.0154,B,23.7,C,,,,,,,6.0,T,354.5,M,0.3,N,0.2,M*24


So it's ok reading the data from GPS unit

//////////////////////////////////

but if i put a delay (100, 1000, 2000, etc....)


void loop() {
   recvWithEndMarker();
   showNewData();
   delay(200);
}

at the begin or end of loop, the serial terminal send:

Dato_leido$GPRMC,002624.20,A,3151.7118,N,11640.1043,W,0.0,170.7,270517,11$GPRMC,0
Dato_leido$WIMDA,29.981$GPRMC,002631.20,A,3151.7118,N,11640.1044,W,0.0,16$GPRMC,0
Dato_leido$GPRMC,002645.20,A,3151.7118,N,11640.1044,W,0.0,33.1,270517,1$G$GPRMC,0
Dato_leido$GPRM$GPRMC,002654.20,A,3151.7117,N,11640.1045,W,0.0,332.8,2705$GPRMC,0
Dato_leido$WIMDA,29.9818,I,1.0$GPRMC,002701.20,A,3151.7117,N,11640.1045,W$GPRMC,0
Dato_leido$GPRMC,002715.20,A,3151.7116,N,11640.1045,W,0.1,213$GPRMC,00271$GPRMC,0
Dato_leido$WIMDA,29.9759,I,1.0151,B,23.6,C,,,,,,,54.3,T,42.8,M,0.2,N,0.1,$GPRMC,0
Dato_leido$WIMDA,29.9788,I,1.0152$GPRMC,002731.20,A,3151.7116,N,11640.104$GPRMC,0


So the NMEA strings are mixed one in another.

Whats is my error?
Isn't suppose that while serial.available are for to read any NMEA string until \n char and not mix with the other?
how i can resolve that?

Thank you so much.
5
Español / Re: Problema reset inesperado
Last post by surbyte - Today at 02:40 am
Bien, comienza usando FreeRAM (busca en google) a ver si te quedas sin RAM en algun momento.
Cambia esto
const int por esto const byte en todo lo que sea asignación de pines. Derroche de memoria.
Cambia
Code: [Select]
int Manual;// Variable Manual
int Automatico;// Variable Automático

por
Code: [Select]
bool Manual, Automatico

2do derroche de Memoria.

Todo lo que sean carteles fijos asi
Code: [Select]
Serial.print("CONG OFF");
cambia a modo no consumo RAM

Code: [Select]
Serial.print(F("CONG OFF"));


Qué es esto?
Code: [Select]
void Automaticoon(){
   Serial.print("AN");
   delay(100);
   Serial.print("MF");
   delay(100);
    loop();    <============= ERRORRRRRRRRRRRRR
}


Como no quieres que se te cuelgue?


Y esto esta mal tambien

Code: [Select]
valor1 = Serial.read();
.
A secas? sin un
Code: [Select]
if(Serial.available()>0) {

Tal vez funcione pero nadie asegure que no pierdas datos.
6
Ok thats the right way to do it, thanks alot!!!

no, there is no reason for not using put and get, the increment was just some weird way to space the adresses out because the floats take more than one byte.
So instead of picking some random value that you hope is right, use the sizeof function and they'll be spaced out perfectly.
Code: [Select]
const int increment = sizeof(float);
7
Bar Sport / Re: what i have been up to, th...
Last post by Qdeathstar - Today at 02:39 am
Travis, if you need help I'm pretty good with autocad inventor for designing a mount...

Hall effect sensors have a lot more repeatability than a mechanical endstop.
8
Hi,

The aluminum wire is probably actually copper clad aluminum so it is fine, especially for the small current draw associated with an led strip.

However, usually I just cut the end off the strip and solder new wire directly to the pad... 22-18awg solid.
9
Hardware / Re: central meteorologica no c...
Last post by surbyte - Today at 02:34 am
Dudo que tenga que ver porque dices que funciona conectado con el USB, pero postea el código usando tags por favor!!
Si no sabes mira otros hilos o las normas del foro que estan en cada sección de este foro como primer Hilo
10
Hi,

i succesfully uploaded ATMEGA328-16 MHz bootloader on breadboard atmega328. And it works fine.

But for my project, because of power saving and lack of space, i want to use internal clock.


After downloading atmega328-8Mhz hardware configuration from arduino site (https://www.arduino.cc/en/uploads/Tutorial/breadboard-1-6-x.zip), i bootloaded it to my breadboard.
And here goes the problem.

Arduino IDE didn't gave me any error, or anything, it just gave me message: bootloader uploaded (or something like that).

After that I connected LED to 13 pin and for some strange reason my LED blinks slowly (like in that sketch where delay is 1000 ms). Before uploading internal oscillator bootloader i didn't have any program in flash because previous bootloader delete it. So i don't know how this get in my flash.

So my LED is blinking, and i disconnected crystal oscillator and it works without it. But when i reset my chip with button it doesn't blink 3 times in short, it just continue to blink as i write above.

Also i'm unable to upload any program with serial port.

I'm using atmega2560 as programator and IDE 1.8.2, but i tried with 1.6.0, 1.6.1, 1.6.3, 1.6.11, 1.6.5
and also with Nick Gammon sketch (http://www.gammon.com.au/bootloader). And for all of these i get same result, i don't need to use external oscillator, but i can't upload anything or get bootloader heartbeat.

HELP ME PLEASE, i'm desperate, i didn't slept for 23 hours.

Thank you,
Matija
Pages: [1] 2 3 ... 10