I need something AMAZING to do with my arduino board - Page 1
Forum section: electronics / general

author: avrishuvorlaz
author_rank: Regular Contributor
timestamp: February 16, 2017, 03:31:59 am
content: I need something AMAZING to do with my ardweeno, folks - anyone got any challenges or ideas that aren't too complex? Something ORIGINAL would be good - I can't think of a lot.Cheerz.

author: Halcyon
author_rank: Unknown
timestamp: February 16, 2017, 03:57:55 am
content: Weather station.

author: Skimask
author_rank: Super Contributor
timestamp: February 16, 2017, 03:59:15 am
content: UnBlinky.Make an LED not blink.

author: DaJMasta
author_rank: Super Contributor
timestamp: February 16, 2017, 03:59:27 am
content: Well, that request is about as broad as it can get. Not knowing your skill level or interests, I think something like a simple video game, some rudimentary version of a piece of test equipment, or a fancy clock all seem like pretty standard directions to go in. One of those websites that just lists new 'hacks' or projects could be a good source of inspiration. Maybe you have a particular kind of electronics you're interested in or have liked working with before?They're powerful little beasts when you use them right, but it's really, really easy to ask too much of an arduino in the same capacity - choosing the right amount of complexity to be interesting to you but still be manageable on an arduino could be difficult, depending on your interests.

author: avrishuvorlaz
author_rank: Regular Contributor
timestamp: February 16, 2017, 04:18:57 am
content: Quote from: Skimask on February 16, 2017, 03:59:15 amAlready accomplished - I just cut open the bag, removed the board and it was already not blinking an LED.

author: brucehoult
author_rank: Super Contributor
timestamp: February 16, 2017, 04:31:06 am
content: Quote from: avrishuvorlaz on February 16, 2017, 03:31:59 amYou don't say what model exactly. They have different capabilities .. MHz, memory ...I got a new Arduino clone here a couple of weeks ago after leaving all my tinkering stuff back in NZ. Last Friday night I decided to try to get it to play the Dr Who theme out a single digital I/O pin using digitalWrite() (not even PWM). It seems to be a crowd pleaser:That particular board has a little bit more RAM than an Arduino Mega2560 (16 KB vs 8 KB) but actually I didn't use any of it to speak of. It has more flash than usual: 16 MB vs 256 KB in a mega. I used about 800 KB for the WAV data for DrWho. It's also got a higher CPU clock, but even that probably didn't matter much .. I was only toggling the I/O pin (or not) once every us and reading one byte from the flash every 45 us.Next I may try to get MP3 decoding going on it. That will strain the CPU a bit more.

author: raspberrypi
author_rank: Frequent Contributor
timestamp: February 16, 2017, 04:55:15 am
content: Quote from: brucehoult on February 16, 2017, 04:31:06 amAre there any tutorials or instructions on how to do this?What are the limits of an arduino? Like what is asking way too much? How many arduinos would it take to make something like a raspberrypi? (yes I know its a micro controller and not a processor, I'm just trying to compare apples to oranges). Is it like a less robust seimens programmable logic controller?

author: avrishuvorlaz
author_rank: Regular Contributor
timestamp: February 16, 2017, 05:21:30 am
content: Slight side-track from my OP...I've owned 4 Raspberry Pi boards - I currently own the Pi 2 and Pi 2, and I think a LOT of it is wishful thinking and hype on the part of their "foundation", including all this pie in the sky about it being a way to relive the days of the BBC Micro - NOT. GONNA. HAPPEN - wake up, Pi foundation, for goodness sake. I am a very experienced Linux user, and I just let it sit there and download BBC TV for me and serve it over DLNA - anything I could possibly learn which depends on the Pi as a whole, would require me to rely on them to supply R/Pi units for anything I needed to manufacture, whereas an Arduino would lead to what exists as it's heart - an AVR - I can flash my code into those, and move them onto my product and begin making and shipping them without the extra cost and need to depend on "the foundation" - never mind the politics of not being able to examine what makes the Broadcom SoC tick, bare metal.But never mind. I think what stops the Pi being as simple, immediate and as basic as it gets is EXACTLY what enables the Arduino as a more immediate, nuts and bolts way of learning:Arduino way to learn coding (simpler, in my opinion, and what the Pi foundation should aspire to follow as a model:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1/ You pick up the Arduino2/ You plug it in, install drivers (trivial), download and run the IDE, write some code, flash it in and you're up and running.Needs: £3.50-5.00 ish (for a clone), a breadboard (£2?) and some basic loop and functional learning, and possible soldering fundamentals.Raspberry Pi way to learn coding (a few barriers)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1/ Buy the Pi (£20-35)2/ Buy an SD card (and reader, maybe) hope your SD card is compatible (okay, most are) - £4-20 (ballpark)3/ Buy a PSU (never ASSUME - another £5)4/ Choose an OS image, download it5/ Learn how to flash an IMG to SD card6/ Setup the Linux environment - a HUGE assumption is made that children and parents will be able to do this7/ Learn how to update it, how to install packages (a day in itself!)8/ Realise you need an HDMI cable and don't have one, spend another £5 (never ASSUME)9/ Learn BASH basics, you DO need to learn this, another week!10/ Learn a translated, inefficient language - Python11/ Realise that you could have blinked an LED with an arduino FAR more cheaply and quickly ()12/ Resign your Pi to a DLNA server, and realise that all the crap about it being a worthy Desktop computer is utterly laughable and hugely optimistic, at BESTIn summary, I think the bare bones, instant boot of the Arduino and the more C-like approach is a FAR better way to learn. All this stuff about Linux and images will have kids wondering "Okay, but what IS Linux? Why do I need THAT? I want to make an LED flash and control my motor" - by the time they get to step #11, I can imagine many being extremely disillusioned and put off, not to mention having forgotten what they even set out to achieve.I've learnt AND built more projects and examples in TWO DAYS with one simple Arduino, than I have in 4 years with 4 different Raspberry Pi boards. I am not saying they're no good, but I just don't see the justification and hype that revolves around them, just because some folk have a sentimental daydream about "the glory days" of the BBC Micro (which we had a room full of, at primary AND secondary school, they booted in 1 SECOND and you could make them do things with VERY little knowledge!)Limor Fried backs me up on this view:http://readwrite.com/2014/05/07/arduino-vs-raspberry-pi-projects-diy-platform/Here's some irony; just this morning I installed Arduino IDE on the Pi so I can test it to see if I could (if I was ever without any of the 10+ computers I own!) use it to code for the Arduino... at a pinch. Ironic that the product I barely use except as a media server, now has a use to program the Arduino... and even then, WHY WOULD I, which leads me to the obvious question: Why ON EARTH would you want to use a dog slow crippled SoC as a Desktop PC? -_-

author: brucehoult
author_rank: Super Contributor
timestamp: February 16, 2017, 08:36:55 am
content: Quote from: raspberrypi on February 16, 2017, 04:55:15 amThe fundamental thing there is a "1 bit digital to analogue converter". You switch your digital output between 0 and 1 a lot faster than the actual analogue signal you want (in this case about 45 times faster) and let it average out somehow. In the crudest case it's just the fact that a physical loundspeaker can't actually vibrate at 1 MHz, but before that it's likely that the amplifier in the speakers will have a low pass filter anyway.The simplest way to do that is just keep a total in a variable and repeatedly add the current sound sample value to it. If the total overflows past the highest possible sample value then do digitalWrite(pin, HIGH) (and subtract the highest possible sample value from it), otherwise do a digitalWrite(pin, LOW). And just repeat that as fast as you can until it's time to get a new sample value from the song. If you've got a fast CPU then you can put in a loop waiting for micros() to change or something like that.In the video I have a high pass filter (with a rolloff below about 7 Hz just because that's what the 100 uF cap and 220 ohm resistor I had lying around gave) to block the DC from the Arduino and make the speakers see an AC signal. It worked without that but sounded worse. After making the video I added a low pass filter using another 220 ohm resistor and a 100 nF (rolling off above about about 7 Khz) and that improved the sound too.Quote from: raspberrypi on February 16, 2017, 04:55:15 amHigher than you'd think. The main limitation is memory size, which tends to be somewhere around a mid to late 70s PC. Even the cheapest AVR ones are a lot faster than PCs from that era (more like a 386). But there are also Arduinos (both genuine and clones) with ARM or x86 CPUs. Or in the case of mine, above, a RISC-V.People were using the 1 bit D-to-A technique on the 1 MHz Apple ][ to make synthesizers and even vaguely intelligible recorded speech -- the original Castle Wolfenstein in 1981 was an example.Quote from: raspberrypi on February 16, 2017, 04:55:15 amApart from having around a million times less RAM and a hundred times slower clock speed it would be quite impossible to run normal Linux due to the lack of an MMU. They're just totally different devices.

author: brucehoult
author_rank: Super Contributor
timestamp: February 16, 2017, 08:53:45 am
content: Quote from: avrishuvorlaz on February 16, 2017, 05:21:30 amI tend to agree with you. The charm of the Arduino (and things like the Apple ][ that I started on) is that it's entirely possible to understand the entire system, with nothing hidden. It's small and simple enough. It's documented.The Broadcom SoC problem is being tackled by some of the original Raspberry Pi people in the lowRISC project.But the more fundamental problem with the Raspberry Pi is that by the time you get one, get a decent SD card, get a power supply and keyboard and mouse and monitor you're looking at a lot more than US$35. Several hundred if you buy all new parts.And if you're going to re-purpose used parts --- why not just slap Linux on a Pentium 3 or newer? You can probably get an entire working system for free. Hell, by now you can probably get Core 2 Duo machines for free. It's going to perform massively better than a Pi.Ok, so you don't get GPIOs. So add a cheap Arduino clone on a USB port .. voila!The best reason to use a Pi is if you actually have to or want to specifically do ARM development. A Pi runs faster than qemu on the fastest i7 you can get at the moment. But in that case you're better off spending $5 more on an Odroid C2 which has a lot faster RAM, SD/eMMC, ethernet. Or an Odroid XU-4 if you don't mind spending another $30 and you don't need a 64 bit ARM. But the Pi 3 still doesn't have a supported 64 bit OS a year after it came out anyway!

author: Assafl
author_rank: Frequent Contributor
timestamp: February 16, 2017, 09:15:42 am
content: Quote from: avrishuvorlaz on February 16, 2017, 03:31:59 amQuality of life control for a bathroom expel fan - quiet when the investor is investing, yet clearing the odiferous elements in-between investments.Could use the light switch as trigger (if in a dark windowless water closet or it will fail in daylight), a PIR detector (+ timers), a toilet seat thermocouple or pressure switch, a beam detector or a low pixel camera (albeit the latter will cause some concern in less progressive circles) and motion analysis.Could use a non zero detect SSR to control the fan speed so it accelerates when people leave.Could add a daily air replenish cycle so that it doesn't become muggy when away on vacation (add a humidity sensor to make it even better).The Arduino can even dim the light to make it soothing - yet fire the lights up for when it is time for cleanup - which will happen often as people will flock to your house just to use the loo.

author: Skimask
author_rank: Super Contributor
timestamp: February 16, 2017, 07:08:17 pm
content: Quote from: avrishuvorlaz on February 16, 2017, 04:18:57 amHow do you know for sure?Maybe the duty cycle was too low or the frequency too high for your human eyes to be able to detect it.

author: elecman14
author_rank: Unknown
timestamp: February 16, 2017, 07:34:56 pm
content: A LED cube is always a fun project.

author: ZeTeX
author_rank: Frequent Contributor
timestamp: February 16, 2017, 08:36:30 pm
content: it depends on what budget and materials you have.. build a quad-copter?

author: Ian.M
author_rank: Super Contributor
timestamp: February 16, 2017, 09:22:00 pm
content: VFD or Nixie clock. You will need to add a RTC chip as the Arduino ceramic resonator isn't accurate enough.

author: daqq
author_rank: Super Contributor
timestamp: February 16, 2017, 09:31:54 pm
content: Make it sentient. Or a perpetual motion machine controller would blow my mind.

author: stargonjie
author_rank: Newbie
timestamp: February 17, 2017, 02:15:16 am
content: Quote from: elecman14 on February 16, 2017, 07:34:56 pmUseless thing, so many people do this, nothing original.

author: brucehoult
author_rank: Super Contributor
timestamp: February 17, 2017, 08:01:24 am
content: Quote from: Ian.M on February 16, 2017, 09:22:00 pmI used an Arduino Uno without RTC as a smart thermostat for four winters, with a time-of-day based temperature schedule. The time accuracy was fine once I made a "myMillis()" function that added an extra millisecond once in every N and I figured out the right N. Not NTP-accurate, of course, but almost as good as a typical quartz watch. Maybe it was out by one or two minutes after a month. No more than that. (It was, of course, working in a temperature-stablised environment, as it was responsible for the temperature stabilisation itself)The biggest problem was the driver code I found for sending remote control codes from the 433 MHz transmitter (to the radio controlled 240V outlets, every 30 seconds) turned off interrupts for no good reason whatsoever so I was missing timer interrupts. 433 MHz modulation timing is not THAT critical. Once I nuked that and left interrupts enabled everything worked perfectly.

author: @rt
author_rank: Super Contributor
timestamp: February 17, 2017, 11:45:44 am
content: Think of the thing, buy the crap, make the thing, then make the video.

author: onesixright
author_rank: Frequent Contributor
timestamp: February 17, 2017, 09:01:18 pm
content: 1. Control a arm that picks-up a resistor2. Move it over to to your DMM (with serial out)3. Measure the resistance.4. Then move it into the corresponding container.5. Log, date, time and value.

author: james_s
author_rank: Super Contributor
timestamp: February 17, 2017, 09:05:45 pm
content: http://hackaday.com/2011/02/16/arduino-fart-o-meter/

author: Red Squirrel
author_rank: Super Contributor
timestamp: February 20, 2017, 01:31:48 am
content: Home monitoring system that has temp sensors, simple contact switches, etc. Could monitor various stuff like temperature, humidity, maybe even voltage of certain items like UPS backup batteries and so on.Been wanting to do that myself actually. It's easy in principle, and I already have a basic setup, but I want to design a more modular system. I'd probably get circuit boards made etc too. I have yet to do that, and given how cheap it is now days I want to go ahead and do it some time. Need to take more time to learn KIcad first. In my case I'll be using the Atmega chips directly but still using the Arduino libraries.Actually another fun thing you can do with Arduino is an Atmel programmer. Never done it myself but I don't think it's too hard.

author: alsetalokin4017
author_rank: Super Contributor
timestamp: February 20, 2017, 03:05:10 am
content: Some actual projects I've done with Arduino:-LED cube with multiple patterns (using arduino MEGA)-"mood light" driving a single RGB LED in many different ways-ultrasonic rangefinder using Parallax Ping module, output to a "graph" made from addressable RGB LEDs and to I2C LCD display-camera intervalometer (operates shutter of DSLR on programmable schedule)-lap timer and energy computer for a ball running on a circular track-sous vide crockpot controller with PID learning temperature control-clock/timer with addressable RGB LED display-LED color organ with real-time fast fourier transform in software (very popular, have made several of these for gifts)-magnetic levitation system, optical position feedback-random number generator driving 7-segment LED numbers-various function and pulse generators for scope testing etc.-sequential auto taillight driver-IR remote controller/pattern readerReally, the possibilities are virtually endless. Think of a simple project, you can probably make an Arduino do it.