Production Arduboy Schematic

Yeah I have a chance to rebuild the BOM.

1 Like

Need to tweak R2 setting I think, charging at an extremely safe 23mAh, I’d like to get it to around 100.

The schematic in the original post indicates R7 is for setting the battery charge current (but maybe you have a new schematic where it’s R2?).

According to the MCP73831 datasheet, you would use a 10K resistor to get a 100mA charge current.

The formula is:
Ireg (mA) = 1000 / Rprog (kOhms)
Rprog (kOhms) = 1000 / Ireg (mA)

Oh, well, you called the programming resistor R2 in your post,

So I just ran a test on the old Arduboy which uses a 2k programming resistor and it appears to charge at 24mAh regardless.

I updated to a 6.8k resistor and I’m only seeing slightly less around 23mAh.

Seems to have to do mostly with the internal logic and the batteries internal resistance so it doesn’t nuke small batteries.

By the way, I did all these tests with the first Arduboy, and nothing showed up weird. I guess I just never revisited the circuit after the tests all showed good values. If when I did this test it showed that the Arduboy was actually charging at 500mAh I’m pretty sure I would have gone back to the drawing board.

Sorry, my mistake. I’ve now corrected it.

The MCP73831 has 3 charge modes. The charge LED will be on in all three modes but the current won’t always be the programmed charge current. You have to make sure you’re measuring during Fast Charge Constant-Current mode.

Summarising the datasheet, the modes are:

  1. Preconditioning: If the voltage at the V BAT pin is less than the preconditioning threshold, the MCP73831/2 enter a preconditioning or Trickle Charge mode. It supplies a percentage of the charge current (established with the value of the resistor connected to the PROG pin) to the battery.
  2. Fast Charge Constant-Current Mode: The programmed charge current is supplied to the battery or load. This is the mode you should be in to measure the charge current.
  3. Constant-Voltage Mode: When the voltage at the V BAT pin reaches the regulation voltage, V REG, constant voltage regulation begins.
  4. (Charge Termination, charge LED off): The charge cycle is terminated when, during Constant-Voltage mode, the average charge current diminishes below a percentage of the programmed charge current.

I measured the charge current of one of my Arduboys, as seen through the USB port, using a USB breakout board I made. I’ve changed the programming resistor on this Arduboy to 8.2K. The measured current was about 123mA. The formula says it should be 122mA.


What do you get on the original 2k resistor? Do you see 500mAh?

I doubt you could get 500mAh out of a 180mAh battery :wink: (I assume you meant 500mA, not 500mAh.)

I didn’t want to go to the trouble of desoldering and replacing the 8.2K resistor, then having to reverse the process afterwards. What I did was hold a 2.7K through-hole resistor in parallel with the 8.2K. This would result in very close to 2K.

I only got 300mA (still way to high), not 500mA. This may be because I only discharged the battery down to 3.5V loaded, which immediately jumped up to over 3.6V when the Arduboy was turned off. The high remaining charge plus the high current plus the internal resistance of the battery might have quickly forced the voltage up to 4.2V, thus entering Constant-Voltage mode and limiting the current somewhat. I wouldn’t be surprised to see 500mA with a fully discharged battery.

Are you measuring through the multimeter directly or are you using a shunt resistor?

I’m testing it at the battery, at the usb port with multimeters and I also just got an inline usb tester hooked up and nothing is reporting anything close to that.

I gotta get this battery good and depleted maybe? I ran it all the way out several times and have not seen anything close to what you are getting on a stock arduboy.

I’ve tried 4 different multimeters in current mode, plus a µCurrent. All gave the same reading with the setup pictured above. The shunt in the µCurrent is 0.01 ohm.

I haven’t bothered to measure the current directly into the battery. It shouldn’t matter. With the Arduboy switched off, the extra current required to power the MCP73831 plus the charge LED will only add about 1.5mA.

I would try removing the meter measuring the battery from your setup. Its burden voltage may be a factor. Also try to use short wires for the battery or solder it directly back in.

Note that I’ve also changed the R11 and R6 resistors in the battery protection circuit to 220 ohm and 1K respectively.

I’ve also tested my Tetris Microcard, which has the same resistor mods, and saw the same 122mA charge current.

Maybe try just the USB tester with any other Arduboys or Tetris MicroCards you have on hand. There could be a problem with something to do with your test setup.

Ah! You got it, didn’t consider about how that would effect things, good call.

I’m still only seeing a nominal charge of around 120mA on the old one.

New setup gives around 50mA

Ok, this seems fine.

Thanks @MLXXXp!

1 Like

Just made an update to the main post that has graphic reference for pinouts for home made DIY Arduboy!


It’s of interest in how the Arduboy library interferes with the “Wire” library despite seeing no pin conflicts, especially since we did break out the I2C (IIC/TWI) pins on the “cart connector”.

Probably because of the folowing line in bootPowerSaving() which enables TWI power reduction :


After arduboy.begin() or arduboy.boot() try adding the line:

PRR0 &= ~_BV(PRTWI);

Does the production Arduboy only rely on a pptc fuse as the battery overcurrent protection?

No. There’s a MCP73831 LiPo charge controller handling battery charging.

And there’s a R5402 handling battery voltage and current protection.

1 Like

I don’t have an arduboy to check but I’d assume the battery itself has a dedicated protection circuit as the last line of defense from overcurrent/overvoltage/undervoltage

No it doesn’t, but like I said, there’s a R5402 battery protection chip on the Arduboy circuit board. This is the same type of chip that most LiPo cells have built-in.


You’d have to seriously try hard to blow these things up. Not directly related to the battery but VCC can go clear up to 8 volts before magic smoke escapes.

1 Like