Sofirn SP40 Headlamp

Has anyone had issues with the charging port on the SP40? Mine got really hot, started to smoke and now the light only has one mode. Off, on. And the red light on top flashes all the time. I’m not sure if its the fault of the headlamp or of the power supply feeding the USB.

Hi Tom E

Can you share the .hex with Anduril 2 for the SP40.
I got a Oshpark Del driver coming soon. Will do same mod as you did :slight_smile:

Sure. I'll rebuild new just in case of any updates. Can't recall off hand if updated after this mod.

Remind if I forget - got a list now of things to-do this eve...

Here's the link to the Anduril2 for the modded SP40, with a FET+1 driver: google drive SP40

Let me know if it works, should be shared. It contains the .HEX file, as well as a ZIP file of the full source, configuration, and build files used. I use Atmel Studio 7 under Win 10.

The cfg file is as follows:


// Sofirn SP40 (rt. angle head) config options for Anduril 2
#define MODEL_NUMBER "0352" // Unique for this light, in MODELS listing
#include "hwdef-BLF_Q8.h" // same hardware as the Q8 (FET+1 with switch AUX LED)

// the button lights up
#define USE_INDICATOR_LED
// the button is visible while main LEDs are on
#define USE_INDICATOR_LED_WHILE_RAMPING
// enable blinking indicator LED while off
#define TICK_DURING_STANDBY
#define STANDBY_TICK_SPEED 3 // every 0.128 s
#define USE_FANCIER_BLINKING_INDICATOR
// off mode: high (2)
// lockout: blinking (3)
#define INDICATOR_LED_DEFAULT_MODE ((3<<2) + 2)

//--------------------------------------------------------------------------------------------
// TE 2020-11-15: Use the Emisar D1 as a reference for the ramp settings and thermal settings
//--------------------------------------------------------------------------------------------

// ../../bin/level_calc.py 1 65 7135 1 0.8 150
// ... mixed with this:
// ../../bin/level_calc.py 2 150 7135 4 0.33 150 FET 1 10 1500
#define RAMP_LENGTH 150
#define PWM1_LEVELS 1,1,2,2,3,3,4,4,5,6,7,8,9,10,12,13,14,15,17,19,20,22,24,26,29,31,34,36,39,42,45,48,51,55,59,62,66,70,75,79,84,89,93,99,104,110,115,121,127,134,140,147,154,161,168,176,184,192,200,209,217,226,236,245,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0
#define PWM2_LEVELS 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,4,5,7,8,9,11,12,14,15,17,19,20,22,24,25,27,29,31,33,35,37,39,41,43,45,48,50,52,55,57,59,62,64,67,70,72,75,78,81,84,87,90,93,96,99,102,105,109,112,115,119,122,126,129,133,137,141,144,148,152,156,160,165,169,173,177,182,186,191,195,200,205,209,214,219,224,229,234,239,244,250,255
#define MAX_1x7135 65
#define HALFSPEED_LEVEL 14
#define QUARTERSPEED_LEVEL 6

#define RAMP_SMOOTH_FLOOR 1
#define RAMP_SMOOTH_CEIL 120
// 10, 28, 46, [65], 83, 101, 120
#define RAMP_DISCRETE_FLOOR 10
#define RAMP_DISCRETE_CEIL RAMP_SMOOTH_CEIL
#define RAMP_DISCRETE_STEPS 7


// safe limit ~50% power
#define SIMPLE_UI_FLOOR RAMP_DISCRETE_FLOOR
#define SIMPLE_UI_CEIL 120
#define SIMPLE_UI_STEPS 5

// stop panicking at ~75% power or ~1000 lm (use D1: D1 has a decent power-to-thermal-mass ratio)
#define THERM_FASTER_LEVEL (RAMP_SIZE*9/10) // throttle back faster when high

//---------------------------------------------------------------------------------------------
// TE - changes:
//---------------------------------------------------------------------------------------------
#undef DEFAULT_THERM_CEIL
#define DEFAULT_THERM_CEIL 55 // from 45 -> 65
#define MAX_THERM_CEIL 80 // from 70 -> 80

#define USE_2C_MAX_TURBO

// Make standard mode default, not Simple mode
#define SIMPLE_UI_ACTIVE 0

Thanks man. Highly appreciated.
Will give this a go when i come home in January.
With Anduril 2, a short battery and a Lh351 dogfarts. This will be pretty much perfect for trail running

Anyone in comms with Sofirn in regards to updating (moonlight, Type C port, etc.) this headlamp?

I find that using the 18350, the body is too short for the headstrap. How do you use 18350 with headstrap?

No problem for me….

Seems that you need to use the rubber strap on tailcap. I guess there’s no other way then.

I don’t own one, but it looks like maybe you can turn the battery tube around and it may work better. Assuming that the threads are the same on either end.

Has anyone else fried a 18350 battery using the micro USB charging when the short tube is on? Once the magic smoke was released I tossed the battery and put the 18650 tube and battery back on and it works perfectly. I don’t have the courage to get another short battery and see if it repeats it. Could have been the battery.

The charger might be exceeding the maximum recommended charging current for the 18350 cell.

I tried charging a Keeppower IMR18350 in an SC31 Pro and it was using around 1.17A. The max charging current for this cell is 1.1A.

Crap….I’m sitting here reflecting and I just realized what I did. I’m such a dumbass……I had gotten a deal on Surefire CR123 Lithium’s cheap so I bought some and stored them in the same drawer (metal tool chest in the basement) right next to my rechargeable Lithium’s. They’re all in plastic cases and appear identical. BUT THESE ARE NOT RECHARGEABLE!!! Surefire makes rechargeable in this size, but these ain’t it.

Quote:

Holy F, I’m glad I didn’t stuff them into USB rechargeable lights and gift them to folks for Christmas. My mouth is open at my own stupidity. https://www.surefire.com/products/parts-accessories/batteries/123a-batteries/

Did you avoid breathing in the fumes and letting it get in contact with your skin?

There have been some horror stories about cells exploding, followed by being poisoned and then long term impact to health.

I hope so. I could smell it, which clued me in, but although the wrapper was melting, the fumes seemed minimal. It cooled off as soon as I took it out.

I can top your stupidity and raise you one. I was reloading some bullets. I grabbed the powder I needed (they put names on some brands and numbers on others) which was xxxx numbers (something like 4198, I cannot remember now). I loaded them up and went to the range and promptly blew my gun in half with a huge explosion. When I got home I tried to figure out what happened. Eventually I figured it out. I had transposed the numbers something like 4198 instead of 4891. I cannot remember what the numbers are now it was 25 years ago. But one powder burs faster and makes 3x the pressure so BOOM gun exploded.

Boy did I feel stupid. From that point on I used powders with names like titegroup, varget etc.

Oh damn….I guess you were OK except maybe mentally? I don’t have any 10mm as it’s too close to .45 which I have and I don’t reload cause I’d be the type to double charge or stuff in the wrong stuff in a round here or there. I read about it on occasion. I should take a page from my firearm caution and give my non-rechargeable Surefire CR123 away and just stay 100percent with 18350 rechargeable only.

Hopefully you took out a beat up Glock and not a Sig X6 or Colt Python.

Oh hell no on the glock, you knew it was going to be the most expensive gun I own right???
A tricked out HK 45 elite. Boom split the gun right in half. Bruised my hands and my ego. Luckily I had on some tough shooting gloves that day.

On a good note I told hk what I did and they sent a red label ticket for me to ship it back free. They fixed it and replaced most parts, reblued/blacked the gun and shipped it back one week later. All for 106 bucks. Serials didnt match but it was good as new.

Now that’s service!

Can anyone help? My son in law got one of these just after they were released. He used it and loved it for hunting for one season. However now it isn’t working. When charging the button flashes red and eventually turns green. But when you turn the light on the button only flashes red and the emitter stays on for about 30 sec on high, longer on lower settings. The battery seems OK so I guess the driver has a problem? Anyone seen this?