Hi Williot, I have not lucky slso with 1.8v. I'm using linux and I cant burn the fusesfuses until now.
If you are using a 3,3v normal arduino, you need to use a capacitor to conect the nrf24, thethe problem is not the voltage, its seems to be the current needed for the right running of the nrf24. I hope this help to you toó.
Hi Neofox2k, I do have the capacitors installed. I think my problem was the sensor was too close to the server and the signal was swamping it. All is working well, now that I have moved them further apart, I really should know better!
Still no joy with the fuses, I am using windows. Will let you know if I crack it, thanks for your help.
I too struggled with the low power Arduino pro mini for quite a while until I read the spec for the Atmel 328p. I found that the serial port error was too high if you tried to run at high baud rates. But I was able to get it to work at 9600 baud. I recompiled the boot loader to run at 9600 and flashed the custom bootloader. It required a patch to compile.
NOTE: There is a baud rate in the MySensors.h library file. It has to be changed to 9600 to fix the serial port.
When I setup the Arduino ide boards.txt I set the fuses correctly for 1mhz internal oscillator.
## Arduino Pro or Pro Mini (3.3V, 1 MHz) w/ ATmega328
##
pro.menu.cpu.8MHzatmega328=ATmega328 (3.3V, 1 MHz)
pro.menu.cpu.8MHzatmega328.build.mcu=atmega328p
pro.menu.cpu.8MHzatmega328.build.f_cpu=1000000L
##
atmega\ATmegaBOOT_168_atmega328_pro_1MHz_9600.hex is the path to the custom bootloader image. I have attached this file to this post.
In order to burn the bootloader I used the Arduino Ide and a tinyisp programmer. They can be purchased on ebay or built from scratch just search online. Use the 6pin connector and power the arduino using an external power supply. Remember to connect the grounds together.
1) PROG_MISO to arduino pin 12
2) PROG_VCC not connected because it's 5v
3) PROG_SCK to arduino pin 13
4) PROG_MOSI to arduino pin 11
5) PROG_RESET to arduino RST
6) PROG_GND to arduinio GND
Then run avrdude to verify that the tinyisp programmer is talking to the arduino.
C:\Program Files\ArduinoIde\arduino-1.6.3\hardware\tools\avr\bin>avrdude -c usbtiny -p atmega328p -C ..\etc\avrdude.conf
should return a bunch of information about the board.
Next burn the bootloader. The easiest way to do this is to use the Arduino ide. Choose tinyisp for the programmer. Board: ATmega328 (3.3V, 1 MHz)
The fuses will be set correctly.
The blinky program will be blinking extra fast afterwards. Then switch to using the usb to serial port adapter and upload the blinky program again. Now it should blink at the correct speed again. At that point it should be running at 1Mhz down to 1.8v! Hopefully this helps!
I have managed to get my fuses blown now, I had made a very simple error on the wiring and connected rst to rst via the level shifter rather than port 10.
Thank you Boaz101 thats very useful, I will have a go at doing it your way, it sounds a bit easier.