Show Posts
Pages: [1] 2 3 4
1  Using Arduino / General Electronics / Re: Arduino powered lead acid battery desulfator on: September 21, 2014, 04:15:49 am
So if anyone can find the source that is a good starting point. Porting to Arduino then a short step....
From reading through Couper's article it seems as if the 555 side of the circuit switches the FET on at 1 kHz for 50 us.  Should be close to trivial to program this.  I guess the battery monitoring can be done every couple of seconds/minutes by switching of the conditioning circuit to protect the ADC from inductive spikes.

Also noticed this erratum for the article:
2  Using Arduino / General Electronics / Re: Switching Power Supply Plans? on: September 21, 2014, 03:39:02 am
I don;t want to use some over the counter thing because I plan to use this LM35 to control 120VAC and I don;t want to have to add in a wall plug inside the project box just to convert incoming 120 to a +5 VDC.

I,ve stripped and re-used several USB and phone chargers.  The PCBs are usually tiny compared to the casing.  You obviously still need to connect the mains wiring in a safe manner and isolate the mains circuit so that you don't get shorts between the mains and 5V sections, but that you have to do anyway if you build your own power supply.
3  Using Arduino / Project Guidance / Re: Throw Darts At High Velocity! on: September 21, 2014, 03:14:27 am
Interesting experiment.  Some random ideas:
Use a 1/2 or 1/4 piece of tube with a slot for a vertical driving pin/arm.  This arm is connected to a piston connected via solenoid to pressure source.  Or you could use a straight push rod connected to a piston to push the dart down the half tube.  For better accuracy a clamp assembly to hold the dart in position while being accelerated would be nice but mechanically intricate (should hold dart firmly during acceleration but then release cleanly without interfering with the fins).  You could control firing velocity by either controlling the open time of the solenoid valve or by controlling the source pressure (I think this may be more repeatable but is probably more complex to implement).

Install on pan/tilt bracket to aim. Add camera with image processing to identify dartboard + algorithm to determine distance based on diameter of largest circle/oval detected (hopefully it is really a dartboard, else install safety mechanism that locks out firing if the camera doesn't detect dartboard).

Perhaps also use camera to track darts and write training algorithm for autocalibration.  This bit may tax the ATmega based Arduinos a bit, but what fun is a project without challenges?
4  Using Arduino / Sensors / Re: Air pressure sensor - Tire pressure on: September 14, 2014, 10:05:52 am
The MPX5500 and the MPX5999 are diferential pressure sensor, to measure a tire pressure I think I need a gauge pressure sensor .
Gauge pressure is the difference between atmospheric pressure and the measured pressure, so you can use a differential pressure sensor and simply leave one connection (low pressure leg) open to atmosphere.
5  Using Arduino / General Electronics / Re: TRIAC AC switch , need some info on: July 21, 2014, 11:58:51 am
See figure 10 in the MOC3061M datasheet ( for a typical 220V AC circuit.
6  Using Arduino / Sensors / Re: frequency measurment on: July 20, 2014, 12:38:32 pm
If you want to measure speed but not direction of the encoder then you could use LM2907/LM2917 frequency to voltage converter IC and use an analog pin to read the output.
7  Using Arduino / Sensors / Re: Barometric Presure sensor BMP180 on: July 20, 2014, 12:19:40 pm
The absolute pressure reading seems OK to me (if this is actually the sensor pressure reading), normal atmospheric pressure at sea level is 1013.25 millibar or about 29.9 inch Hg.  The sea-level pressure seems high, which could explain the wrong calculated elevation.
8  Using Arduino / LEDs and Multiplexing / Re: MOSFETs driving me crazy! on: July 20, 2014, 12:05:59 pm
But I found a problem: the LED strip did not turn off completely, even being the MOSFET turned fully off!
So I googled and found that I had to use a MOSFET whose Vgs would be 5.0V (so that Arduino can fully turn it on and off, am I right?)
The thing is, how do I know this!?
For example, lets check the datasheet of a MOSFET that lots of people recommend, the IRF540N...
Does the MOSFET switch on/off properly when you connect the gate to 5V and 0V respectively?

If you look at figure 1 of the IRF540N datasheet you will see the performance of the FET at different Vgs.  The bottom curve shows the current vs. voltage drop Vds at Vgs = 4.5V.  From the linear part of the Vgs = 4.5V curve the effective resistance of this FET is 66 mOhm.  As you increase Vgs the effective resistance of the FET drop to the stated 44 mOhm.  You can also see from figure 1 that the maximum current you can get through the FET is lower at Vgs=4.5V (about 10A) than at say Vgs=5V (about 23A).  You ideally want to use logic level FETs with Arduino output voltages, see e.g.
9  Using Arduino / General Electronics / Re: Will this voltage doubler works with DC input? on: April 18, 2014, 03:10:40 am
These links (1, 2 ) show a very basic implementation of a switched mode voltage controller using the microcontroller it powers to also drive the circuit.  The 2nd link also implements voltage regulation using an ADC pin to control the PWM pin driving the circuit.
10  Using Arduino / Displays / Re: 16x2 LCD nearly works - but has a few strange characters. Why??? on: April 04, 2014, 02:44:28 pm
The ASCII data structure contains a start byte (0x02) followed by 10 bytes of data, followed by a 2 byte check sum, followed by carriage return and line feed characters, finally terminated by an end byte (0x03) (from datasheet: You will need to handle the extra information surrounding the data you are interested in.  This code ( will probably do what you want.
11  Using Arduino / Displays / Re: ILI9325 TFT LCD Touch 2.8" on: April 04, 2014, 02:11:04 pm
If you have a link or manual/schematic for your LCD board please share it. The information may be useful in identifying possible next steps.
12  Using Arduino / Displays / Re: ILI9325 TFT LCD Touch 2.8" on: April 03, 2014, 02:49:37 pm
My questions to you:
- Is there other way besides soldering to connect the wires to the LCD?
- Do you think the REST pin is the same as the RSET pin?
- Do you think the WR pin is the same as the RW pin?
- Which pin do I connect the backlight pin to?

Thanks for your help!

You can use an IDC connector which crimps onto a ribbon cable to connect wires/ribbon cable to the LCD (see for example). If you only need to connect to the LCD data and control pins you don't need that many connections and you could use SIL sockets ( but then you'll need to solder wires to the socket pins. You can also use SIL housing ( but this requires that you crimp wires on terminals, not all that easy without a proper crimping tool.  Perhaps the easiest would be to get hold of an old IDE hard drive ribbon connector (, I think it should fit.

I'm fairly sure you can assume that REST = RSET and WR = RW.
Backlight pin is probably LED_A.

I suggest you try and find a tutorial/code/description for your specific LCD board, because the LCD controller chip is only rated to work with input voltages up to 3.3V.  Some boards put in voltage shift IC's which makes them compatible with the Arduino 5V output.  There are also different data transfer settings (8 bit, 16 bit, SPI).  If you only push 8 bit data but the controller is configured for 16 bit data you will have an obvious problem.  If it is configured for 8 bit transfer, you need to know whether you must connect to DB0-DB7 or DB8-DB15.  I have an LCD board which is configured for 8 bit transfer, but have to use pins DB8-DB15.

Good luck1
13  Using Arduino / Motors, Mechanics, and Power / Re: Logic-Level Power FETs you'd like to see/use?? on: March 23, 2014, 07:18:45 am
Any other comments, nominations appreciated...
I've also recently started looking into this.  Here are some others one could consider:
IRLZ44N - the automotive versions seem to have even lower Rds (AUIRLZ44N)

14  Using Arduino / Programming Questions / Re: Problems with LCDs and SPI on: March 16, 2014, 02:31:06 am
The LiquidCrystal library in my Arduino 1.0.5 libraries folder doesn't have a member function called initSPI.  Are you using a newer version of Arduino, or is this a non-standard (as in it was not installed by Arduino installer) LiquidCrystal library?
15  Using Arduino / Programming Questions / Re: PS2 Mouse Library on: March 15, 2014, 03:33:17 pm
In answer to your question, reread the paragraph Movement Data Packet in the link you provided.  As I understand the description the the sign bits for the movement bytes are stuffed into the first byte (bits 4 & 5).

Further, the protocol is byte oriented, so the for loop should only read 8 bits.  Not sure why mvmnt is added to the for loop check.  If you are trying to read a movement data packet it seems as if you have to read in 3 bytes. Not sure if the 3 bytes are transmitted as 1 packet or 3 separate packets of data.

The delayMicroseconds statement don't make much sense since the actual clock transitions are checked by while loops anyway.  Perhaps a 1 microsecond or so delay is needed when the clock & data lines are pulled hi at the start to allow the line voltages to settle before reading.

Hope this helps a bit.
Pages: [1] 2 3 4