I really shouldn’t be surprised, but I still am. Chinese manufacturing really is the wild west. There is no law except what can be enforced at the end of a gun.
I hope Astrolux gets its act together and complies. Anduril is the reason I bought the HL01.
I just built the latest version, 464, of Anduril on Atmel Studio 7, latest version. The key things I did:
define a compile time symbol of "ATTINY=85" in the project properties->AVR/GNU C compiler->Symbols
if you include all the fsm-*.c files in the project as i did, for each of these .c files, set the build action for each individual file to "None" instead of compile.
That's basically it. This is what it resulted in:
Program Memory Usage : 8122 bytes 99.1 % Full Data Memory Usage : 205 bytes 40.0 % Full
The other important thing is the files: where to copy them, what files to include, etc. I took the simple approach and moved them all into just one folder.
Started with the spaghetti-monster folder, all spaghetti-* files and all fsm-* files.
then in the Anduril folder, all *.c and *.h files. You can take any other text/document files you want - no harm
then from the root "ToyKeeper" folder, took all tk* files and all hwdef* files. You could restrict it to just the hwdef* files you need, but that gets tricky since some include others.
I built it for the Q8 for now, but will try others. The HL HK04 light I'd love to change to rise the max thermal limit, as defined in fsm-adc.h:
#define MAX_THERM_CEIL 70
But the HK04, like the SP36, has the driver glued. I tried removing the switch to get access to push out the driver, but the switch has some nasty glue - I destroyed it partially in trying to get it out - never ran into this before. I killed one of the LED's. Ugh...
So, it looks like as of now, these flashlights use Anduril, but have not released the actual source code used (ie. unknown which Anduril “build target” they were based on:
Well if you don't want to name names, the 2 developers I know of have business relationships with at least one of these vendors, unlike us. Plus I know they have communications problems with the vendors as it is (like not answering/repsonding for long periods of time, etc.), so even if they were willing, not sure it would be wise for them.
As a follow-up to post #907 above, just tested out the Atmel Studio 7 build of Anduril 464 on a Sofirn Q8 and it worked perfectly. Tweaked the thermal max temp to 85C, and checked the voltage and it's dead on so far.
Not sure now there's any point to go back to NarsilM for much of anything.
In case anyone is interested, here's the AS7 Anduril v464 full folder with all the source code, solution and project file and it all builds, right now defaulted for a Q8 configuration, with the max temp of 85C, default to 55C:
Nice. Is it possible to post a compiled .hex file for people like me (I have a flashing kit and have successfully flash Q8s to NarsilM v1.2 and Anduril from the hex files in the repository, but haven’t tried compiling code…). Also, maybe a short list of how to configure those new settings… Thanks!
, yep in the release folder, but of course it's only 1 possible config of many. The Q8 is the FET+1 design with the aux LED (usually switch LED) support, so I've used these driver designs in many mods.
Not sure what you mean by AUX and Indicator LED's? I always thought of them as two words describing the same thing. I "think" Anduril has control over one pin for AUX/Indicator controls, so you can run multiple LED's off the same pin, for example, the switch LED's and the Lexel AUX board LED's on a MF01 Mini.
Pin Summary
1 - Reset (can be used for I/O but would break the popular dongles for re-programming)
2 - switch
3 - AUX LED, or main LED channel
4 - GRND
5 - main LED channel
6 - main LED channel
7 - for 6V/12V designs used for voltage divider for voltage reading, spare for 3V designs, or AUX LED for 3 channel drivers
In Anduril the AUX LED's are the RGB front facing LED's, each one with its PWM PIN and the Indicator LED is the side switch LED, which is only 1 color, usually green. Thus far I have only seen lights using either one or the other, but never both. MF01 Mini only uses the Indicator LED PWM Channel for both the side switch LED and the front facing LED's. There is independent code in anduril.c to use any of them, but as per most lights hardware, the code is reflected as such, thus using either the Indicator or RGB AUX LED's code, but not both at once.
Ahhh. Haven't noticed independent support in Anduril yet, but it certainly could be there. Since the Attiny85 has limited I/O pins, a 2 channel or 1 channel driver could use pin 7 as a secondary AUX/Indicator control, but I don't know what Anduril would do with the two separate functionalities.
Custom BLF drivers I typically use in a lot of mods are 2 channel 3V setups, so pin 7 is always available. I'll research Anduril now and look for the possible support there. I've even used 3 channel drivers as 2 channels, and not even populate the 7135 bank. This requires some switching around of the I/O pin assignments but NarsilM has support for that, so probably could be done easily in Anduril, but there's probably no existing hwdef file for it yet.
I have a problem with aux LED voltage indication on my D4Sv2.
When I connect power it sometimes blinks green but aside from that split second it’s never green, goes from blue directly to red.
I thought that was my bug (I still introduce many ) but now checked with the TK’s latest revision and it’s not - I just put a ~3.7V cell, voltage blinkout shows 3.7 but aux LEDs are red…
I look at the code and fail to see the culprit…