Nitecore P20i + Nitecore TSL10i

Nitecore P20i review

Nitecore P20i specifications

Brand / ModelNitecore P20i
LEDSST-40 6500K
Lumens1800 lumens (21700), 1100 lumens (2*CR123)
Beam intensity29,500 cd
Battery config.1*21700 (Nitecore 21700i series), 2*CR123
Review dateAugust 2020


Introducing – the Nitecore P20i.

The latest iteration in the Precise series, the P20i is yet another great tactical light, but this time utilizing a 21700 cell and including USB-C charging, addressing feedback from a wide variety of sources.

Nitecore have been very generous in offering me a look at a pre-release light, but in the interest of the speed of getting it to me, I was sent the light outside of the usual process. The Package section is noticeably less informative in this review than in others, but let’s be honest; you’re here for the nuts and bolts, which is a whole bunch of pictures of the light, and the performance.

After reviewing the P20 v2, I was left with somewhat of a wish-list – higher output, longer runtimes, no PWM. Does this light make those dreams come true? Read on to find out.

What you’ll get:

As I received a pre-release light, it wasn’t in the retail package and contained only the bare essentials – the P20i itself, the NL2140i battery, and a USB-C charging cable (complete with Nitecore-branded velcro wrap). As such, I can’t accurately describe the contents.

What I’m told will be included is the following:

  • Nitecore P20i
    • Nitecore NL2140i 4000mAh 21700 cell
  • Tactical Holster NTH20
  • Clip
  • Lanyard
  • Spare o-ring
  • CR123 battery magazine
  • USB-C Charging cable

Overall, it’s a very similar package to the P20v2, but with the addition of the charging cable, and replacing the battery to suit. I also assume a manual and warranty card is included, as per all Nitecore lights.

Introducing – the Nitecore TSL10i

An interesting item has fallen into my hands today, and I’ll be honest on this – initially I was confused as to how to review it. We at 1lumen are quite formulaic in our reviews, so extrapolating that out to something that doesn’t inherently have a runtime is difficult, at best.

I decided to play with it first to get some inspiration, and I’ve come up with what I think is a fairly definitive guide.

I’ll be testing the TSL10i on the Nitecore P20i, as 1) I’ve wanted to spend a bit more time with it, but time has prohibited me from doing so, and 2) I don’t have any of the other lights this is compatible with (which is probably a pretty good reason).

This is going to be somewhat of a… different review in that I’m covering an accessory instead of a light, so please bear with the format and largely cut-down sections.

The TSL10i appears to have a retail price of $20USD,


I received the TSL10i with no packaging, but Nitecore were very careful to wrap it in a large amount of bubble wrap to ensure its safe delivery to me, which is very much appreciated. As such, I can’t provide commentary on how it will be presented out in the wild, but I assume it will be in a package with a similar level of quality to all of Nitecore’s products.

Handling of the light

There’s only one way to really hold this light, as with a lot of other Nitecore lights – the “tactical” grip. Held overhand with my thumb on the button, my fingers slot nicely into the gap between the head and the tailcap.

It’s a solid feeling that gives confidence that it’s not going anywhere unless you want it to.

Hexagonal shaping behind the head helps prevent the light from rolling away if it is placed down; when testing by placing on a crate at home and then lifting one end, it’s far more likely to slide than roll, which means that it will stop as soon as the angle is removed, as opposed to using the rolling momentum to keep on going.

As with the other lights I’ve reviewed in the Precise series, this has a forward-clicky type switch, in that it has momentary-on from off, as opposed to a reverse-clicky which has momentary-off from on. There’s a definitive click when activating the switch, which is quite satisfying.

There’s no tail standing for this light, as the main button is very proud. I can’t immediately think of a use-case scenario in its intended use that would warrant it, though.

Handling the TSL10i

This tailcap’s use-case is quite niche, but very important inside that niche. It’s designed to help determine team members from behind, which is critical in the fields that it is targeted to (law enforcement, military).

The TSL10i is designed to directly replace the tailcap of the P20i or i4000R – it still contains the switches needed to operate as usual, but also has a soft button on the side to cycle between illumination options.

The main switch and mode button are the same as found in the standard tailcap, both giving definitive feedback, but the side switch is somewhat softer with less travel. Realistically, this switch wouldn’t be pressed too often, so that’s perfectly fine. The only issue would be that with gloves on, it may be harder to determine if it has been activated correctly, but in the primary use-cases, there’d be team members around to assist.

Build Quality, knurling, threads, and anodization

Again, Nitecore delivers on the build quality. Anodisation is perfect (not a mark to be seen), there are no sharp edges barring the square-cut fins that grab your hand slightly, but not painfully, and the knurling provides good grip while not being overly aggressive. All systems normal, here.

The threads are triangle-cut and well-lubricated, there are no issues with removing the tailcap and putting it back on if desired. There’s an initial grab as the o-ring is worked against, but that goes away quickly into smooth movement.

There’s only a single o-ring, but it looks quite sufficient to prevent water ingress; the IP68 rating definitely holds some weight.

A note, though – when holding the tailcap by itself, there’s a slight rattle when shaking it laterally; I suspect it’s the plastic cap with Nitecore branding visible next to the contacts. It’s a non-issue though, as the rattle disappears when the tailcap is back in place and snug.

Nitecore TSL10i:

As with all the Nitecore products I’ve tested, a lot has gone into the engineering. There’s not a note of sloppiness about it; everything lines up perfectly, and feels like it was made in one solid piece.

The knurling on the bottom of the tailcap is actually fairly smooth to the touch, but the angles around it give plenty of grip to unscrew it without any issue.

And some TSL10i pictures

LEDs, Lens, Bezel, and Reflector

Probably the most immediately obvious upgrade when using the light is the change from a Cree XP-L2 to a Luminus SST-40. This emitter is somewhat larger (5x5mm, up from 3.5×3.5), and as such has a larger die-size – all a good recipe for putting more light downrange. The CCT is unchanged at 6500K, but as I’ve mentioned in my other tactical light reviews, this is the favoured colour temperature for such a light.

The beam put out by the P20i has a similar hotspot to the Nitecore P20 v2, and that’s not a bad thing at all. There’s an awful lot of usable light, and at an increased lumen level, you’re going to see a lot more with it. On High, there’s a small amount of green around the corona, but not as much as with the XP-L2. That said, on lower brightnesses, the tint moves towards a greenish hue. Most won’t be bothered by it at all, but as a tint snob, it’s something I need to mention.

It appears to use the same reflector and strike bezel as its predecessor, which is welcome, as both are well-suited to the task.

Covering everything is some AR glass – not much to say about that other than it’s good to see.


  • Length: 142.6 mm / 5.61 ”
  • Head diameter:  31.8 mm /  1.25”
  • Body diameter: 25.4 mm /  1”


  • Empty: 114.5 g ( 4.04 oz)
  • With battery: 190.5 g ( 6.72 oz)

Comparison Tactical Flashlights

2 comparison shots with other tactical flashlights:

Image 2: Nitecore P20i vs Nitecore P20 v2

Image 3: from left to right: Jetbeam PC20, Nitecore P20i, Nitecore P20 v2, Nitecore P10 v2.

Dimensions: Nitecore TSL10i

  • Length: 40.4mm (1.59 in) not including protruding on/off switch
  • Widest diameter: 27.3mm (1.07 in)
  • Narrowest diameter: 32mm (1.26 in)

Weight: 33g (1.16 oz)

For comparison, this is the standard tailcap on the P20i:

  • Length: 25mm (1 in)
  • Diameter: 28.5mm (1.12 in)
  • Weight: 17.8g (0.63 oz)

Image: normal tailcap vs TSL10i tailcap

P20i UI: driver & user interface:

Nitecore has simplified the UI on the P20i from what I’ve experienced on previous P-series lights – the three “groups” of modes have now been reduced to one, which is similar to the “Daily” mode (Mode 3) on those two lights, but with a slight difference – previous models rotated through the modes L/M/H; this light rotates H/M/L.

I don’t see this as a particular issue – there may be some that prefer one way over the other, but given there’s only three modes, it shouldn’t pose any kind of problem.


From OFF:

  • Press and hold MODE button: Strobe
  • Single click main button: High
  • Half-press main button: Instant High

From ON:

  • Press MODE button: Change mode (H/M/L)
  • Press and hold MODE button: Strobe (press again to return to previous mode)
  • Single click main button: Turn off

Nice and simple!

Mode memory

  • No mode memory – always defaults to high. Realistically, this is probably the mode that would be preferred – I’m imagining Nitecore has done some targeted market research on this.

Low voltage warning

  • The indicator light on the side of the head will start to flash slowly when power is below 50%, and flash quickly below 10%. The actual voltages aren’t mentioned, but my estimation is that it would be around 3.6V for 50%, and 3.1-3.2V for 10%.


  • Only one, and that’s strobe. Momentary activation is available by holding MODE from off, and holding MODE from on (but requires pressing MODE again to stop). The strobe mode also changes frequencies, which can have an additional disorienting effect.

Lock-out mode: 

  • No lockout mode I can find – just the old fashioned way of loosening the tailcap ¼ turn.


  • You have NO idea how happy I am about this. I’m extremely happy to report that there’s very little PWM. Looking at it through the camera on my phone, there are extremely small lines in the rolling shutter, and when doing the card trick, it’s very smooth.

A note:

I could probably cover this in the section below, but it’s worth noting here – when you tighten the lid, or stop charging the light, the indicator light on the side of the head will flash out the voltage. So if your cell is at 3.9V, it will flash three times, pause, then flash nine times. A nice thing to see, and even nicer is that in the product manual, there’s a small diagram for respective voltages for 21700 and CR123*2.

User Interface Nitecore TSL10i

As the two buttons on the rear of the tailcap are more to do with the light itself and replicate the functions of the standard tailcap, I’m going to focus on the side button, as that’s what this item is focused on.

From OFF:

  • Press and Hold: Turn on to last-used mode
  • Press and continue to hold: See note below.

From ON:

  • Press and Hold for 1 second: Turn off.

It doesn’t appear possible to change the colour mode when it’s already on, so all colour changes are made from off. To do so, hold down the side button to turn the indicator LEDs on, then four seconds later it will change to the next colour in the cycle. Every 0.8 seconds or so (to my eye), it then rotates to the next colour.

At first, I thought this was a down-side, but I do realise that it then makes changing the colour a very conscious decision.

Nitecore P20i Battery and charging:

The Nitecore P20i only works with two kinds of batteries – CR123*2, as with a large number of Nitecore’s lights, and a 21700 i-series cell from Nitecore. The 21700i series are a protected and proprietary cell that can only be charged inside the light itself; it won’t charge on an external charger.

That said, it’s entirely possible that one could make an external charger work with this, but as there’s a negative terminal in a ring around the top of the cell, I really wouldn’t recommend this. When charging the cell in the light, it pulled a fairly constant 1.3A. Nothing to particularly write home about, but not too bad either – this could likely be increased to 2A with no issue.

I’m very happy to report that charging works with USB-C to C, PD – I’ve tested it working in a Satechi charger and an Apple 61W power adapter, both using the Apple charge cable. This adds the P20i to quite a small list of lights that offer this feature.

It’s specified that the P20i is only compatible with the 21700i series batteries with output of over 8A – I’ll put the included cell to the test further down. Personally, I’m not a fan of proprietary cells, but I fully recognise that they’re incredibly useful in a light such as this – no hassle, just plug the light in and charge. Nitecore estimates it will take around 3.5 hours to fully charge the cell, which isn’t too bad.

If you happen to use CR123 cells – please don’t plug in the USB cable to charge them! Not only will it not work, it’s also quite a hazard.

Nitecore TSL10i

The TSL10i only works on lights compatible with the 21700i series batteries, such as the P20i and the i4000R. As it uses the battery for the light, there’s no charging required above and beyond what you would expect for the light itself.

The actual mechanism for the tailcap lighting is a small pin that goes into the base of the cell, as well as the three leaf-spring contacts for the negative terminal.

Nitecore P20i Performance test

For my readings, I use the following:

Lux Meter: For lumen readings and runtimes, an Adafruit TSL2591 connected to a Raspberry Pi running Ubuntu, using RuTiTe by bmengineer in a custom sphere (build document coming soon, when I have some more time). A UNI-T UT383S is used for candela readings.

Temperature testing is not yet finished, unfortunately. Next time!

DMM: Fluke 87 (original series!) and UNI-T UT210E – 16AWG wire is used directly into the Fluke via some banana plugs and 8AWG wire in a loop for the UNI-T. The DMM I use depends on how high the expected current will be – I use the Fluke for <10A, and the UT210E for >10A.

I will be using the battery supplied with the light (Nitecore NL2140i); the light can also support CR123 cells in a 2x carrier, but as I have ethical/environmental concerns regarding disposable batteries, I’ve chosen not to purchase some purely for the purposes of testing the light.

Amp measurement

I’m definitely discovering that testing current on Nitecore lights is difficult – this one even more so than the previous two. The tailcap isn’t so bad to get connection on, but the spring and contact down in the tube is extremely difficult to reach without bridging anything.

In the interest of keeping all of my hair attached to my head, this is a section I’m going to come back to as time permits – we’ll post an update when it’s done.

Nitecore P20i battery life / runtime graph

As seen on the graph, there are some very nice flat regulated lines – while the light didn’t hit the advertised 1800lm, I’m yet to come across a light from any manufacturer that hits the rated output. There’s a quick dropoff in High until a fairly solid regulated ~500 lumens for almost three hours. Given that Nitecore’s documentation says 1.5 hours for High, this one’s a solid win in my book. Medium starts slightly below 200lm then warms up, and then holds that for 8.5 hours before dropping down; again, this is above the rated specification of 7h 15m. Lovely to see a manufacturer understating output!

runtime graph

P20i Lumen measurements (for each mode)

Popping the P20i onto my integrating sphere and running through the modes, I get:

  • Low: 32 lumens
  • Medium: 212 lumens
  • High: 1690 lumens

This is a little lower than the advertised 35/280/1800 lumens, primarily on the medium mode, but I’m not overly concerned – the jump from 1690 to 1800 lumens is, to the eye, not that much different. The drop from 280 to 212 would be more noticeable, I think, but 212 is still plenty of light on a dark night.

1690 is still perfectly within the margin of error when using home-made measuring equipment.

Throw numbers:

I’ve measured at 5m indoors, and 10m outdoors. With a fully charged battery, I set the UT383S to record maximum lux, turn on, point it at the sensor, change to the highest mode if not already there, and gently wave the light around to try and capture all of the hotspot. With that, my results are:

  • Indoors 5m: 1429 lux = 35725 cd = 378.02 m throw
  • Outdoors 10m: 360 lux = 36000 cd = 379.47 m throw

Again, very happy with the consistent results, and above and beyond rated throw (rated at 29500cd – 343m).


Both images are shot at 0.6sec, f11, ISO100. WB is 5200K.

Nitecore TSL10i

I’ve taken readings in all the modes to see what the drain is above and beyond the light itself. This was done with a UNI-T UT139C and a spaghetti assortment of wires/alligator clips (continuing the tradition of difficult Nitecore measurements).

Amp measurement

  • Off: 1.5mA
  • Red/Blue alternating: 60-70mA (DMM fluctuating too fast to read)
  • Blue: 145mA
  • Red: 120mA
  • Green: 164mA
  • White: 160mA

These figures are measured when I select a colour, turn it off, and then during the long hold of colour when changing modes. When the emitters are flashing themselves, they flash once briefly every second, with the exception of the red/blue alternating mode (which flashes rapidly), which I will exclude from my derived figures below.

My DMM doesn’t have the speed nor a USB uplink to measure things 100% accurately, and as the colours go from 1.5mA up to the full current of the colour very briefly and back down in use, I’ve had to measure via the long-on.

If the duty cycle is 20% (which it seems to be to my eye), then we can assume that for 4/5 of the second there’s 1.5mA, with the other 1/5 of the second being the full current. We then get an average of:

  • Blue: 30.2mA
  • Red: 25.2mA
  • Green: 34mA
  • White: 33.2mA

I understand that this isn’t the most scientific method, but short of a runtime test of this alone (eek!), it’s as close as I’m prepared to go.

Disclaimer: This flashlight was sent to me for review at no cost, by Nitecore. I have not been paid to review, nor have I been holding back on problems or defects.

Final Verdict


  1. Nice and bright for the intended use
  2. Onboard charging
  3. Longer than expected runtimes
  4. NO PWM!


  1. Proprietary battery

TSL10i tail cap

Pros TSL10i:

  1. Decent range of colours
  2. Doesn’t add much heft to the light
  3. Very well built

Cons TSL10i:

  1. Only compatible with a small number of lights
Reviewer Owen
Author: Owen

5 stars: ★★★★★

Well. Well well well. With the P20i, Nitecore has addressed my concerns/criticisms of the previous lights I’ve reviewed. A move away from the XPL2 drops the green corona and allows a bump in power, there’s now USB-C charging so someone new to high-powered flashlights doesn’t need to get a charger as well, and the indicator light is more precise on voltages/power left available. And, as you’ve most likely gathered, the thing I’m most excited about by far is the lack of PWM. This completely eliminates any of that gritty feeling I was getting when moving quickly with it on, and even though 6500K is far too cool a CCT for my personal preferences, it felt comfortable to have on for long periods (well, long for me, anyway). Basically – take the P20v2, and make it better, and that’s what we’ve got here. As such, this gets a wholehearted five stars from me. LEOs and other emergency workers reading this, take note.

Nitecore TSL10i

Again, as I first mentioned – this is a very non-traditional review. The TSL10i can be seen as gaudy, but it’s a very niche product. That doesn’t detract from it being just fun to use, even outside of that.If you have a specific use-case for this, it’s perfect, but if not, it’s definitely more in the “fun” category.

Nitecore P20i discount coupon code

Get 15% off by using discount code 15OFF on orders above $75. Below $75, use our unique coupon code 1Lumen to get 10% off.

Nitecore TSL10i tailcap for sale

1lumen selects and reviews products personally. We may earn affiliate commissions through our links, which help support our testing.