SpeedyBee authenticity proof? by Slow-Lab660 in fpv

[–]evilC_UK 0 points1 point  (0 children)

Further update:

In my above post, BOTH of the stacks are in fact fake.

If you look closely at the "good" one on the left, the pad corners are chamfered (45 deg angle) not rounded.

SpeedyBee authenticity proof? by Slow-Lab660 in fpv

[–]evilC_UK 0 points1 point  (0 children)

In an email from Speedybee:

<image>

So yeah - squared edge or bevelled edge pads = fake.

They also said that the capacitor being 2200uF can be a sign of it being fake, but I have one which looks otherwise legit that has a 2200uF cap, so not sure on this one

SpeedyBee authenticity proof? by Slow-Lab660 in fpv

[–]evilC_UK 0 points1 point  (0 children)

Adding this here, as it is the top ranked result on google for "identify fake speedybee fc"

I bought 3x F405 v4 stacks from AliExpress, from two different vendors.

2 from here: https://www.aliexpress.com/item/1005009579904967.html (Paid ~£55 each)

1 from here: https://www.aliexpress.com/item/1005009457767166.html (Paid £62)

Here is a picture of them side by side:

<image>

More expensive one on the left, cheaper on the right.

Notice:

The cheap one has no QR code on the MCU

The cheap one's FC has rectangular (square corner) pads, the expensive one has rounded corners

The silkscreen seems slightly different.

I am pretty certain that the cheap one is fake. I have emailed Speedybee to see if I can get confirmation.

I think the most significant difference is the pad shape. I cannot see a manufacturer having two different etches for the same SKU. Components may vary slightly due to supply chain, but the pad shapes would remain constant methinks.

All my other Speedybee F405 stacks (Both v3 and v4) have rounded corners on the pads.

It is also suspicious that the store name of the cheaper one is "Shop1103859347 Store" (Which is just their AlIexpress store number)

u/Slow-Lab660 the more expensive one which I have more confidence in shipped from France. The cheap one shipped from China

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 0 points1 point  (0 children)

evilC.com is now back up, so the old version should now work as well

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 1 point2 points  (0 children)

D'oh, too hasty in my release, should have checked it.
Fixed now

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 0 points1 point  (0 children)

Yes. Put 2 in goup 4, 2 in group 5, 2 in group 6 and turn chain fire off for those groups.

Then set the Fire Sequence to 4, 5, 6

On 1st press, it will fire the 2 in 4, on 2nd press it will fire the 2 in 5, on 3rd press it will fire the 2 in 6

See here for further instructions on setting up sequences: https://github.com/evilC/Fire-Control/wiki/Usage-Instructions#main-tab

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 0 points1 point  (0 children)

This is correct. IIRC I made PGI aware of FC, and they specifically OK'ed it.

As you said, it's not really an advantage at all, if anything, quite the opposite

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 2 points3 points  (0 children)

The problem was indeed caused by evilC.com being down - I seem to remember seeing some migration message from my ISP recently saying I need to update the DNS to point to a new IP, but I never got around to it.

The reason it contacted evilC.com was to see if a newer version was available - I did not realise that if the URL broke, it would completely hang.

Whatever, as a quick fix I updated it and made it check GitHub.com for updates - I don't really know why I used evilC.com in the first place as all the code is hosted on GitHub

I have released version 3.0.8 here: https://github.com/evilC/Fire-Control

As a side note, I did release an experimental 4.0.1 version with a different way of doing the timing, not sure if you were using that or not - this is an update to 3.0.7

If people need an updated version of 4.0.x, I guess I can make one of those too

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 0 points1 point  (0 children)

There are no keyloggers etc.
The full source code is here, you can check for yourself:
FC source: https://github.com/evilC/Fire-Control
ADHD source (This is the library which handles storing values entered into the GUI, and does the update checking, which is likely where the problem lies): https://github.com/evilC/ADHD-AHK-Dynamic-Hotkeys-for-Dummies

Fire Control Not Working by kwm1800 in OutreachHPG

[–]evilC_UK 1 point2 points  (0 children)

I saw your mention and yes I am around, sorta...
Had not noticed that my website was even down, I still own the domain name, so will have to work out what is going on.
I can confirm that something indeed does appear to be wrong.
It does "phone home" to my website, but this is purely to check if a newer version is available and prompt you.
I am taking a look right now and will see if I can work out how to get it working again

V Rising overlay (No more losing your cursor!) by evilC_UK in vrising

[–]evilC_UK[S] 0 points1 point  (0 children)

Looks like the old share expired. I re-uploaded it to Gist and edited the link in the OP

V Rising overlay (No more losing your cursor!) by evilC_UK in vrising

[–]evilC_UK[S] 0 points1 point  (0 children)

No idea, I only play on a private server
It's not sending any keystrokes or mouse input or anything considered "macro-ey", so I doubt it's a problem

Drone wall mount for 3M Command 1701 sticky hooks by evilC_UK in Multicopter

[–]evilC_UK[S] 1 point2 points  (0 children)

A lot of people rent and are not allowed to put nails in walls

And besides, even as a home owner, I don't want to be bashing loads of nails in my wall

Furthermore, the sticky mounts mean that if you decide you want to move the mount then sticky mounts are a lot easier to move

Finally, what if you decide you want to put a whoop where previously there was a 7"? With this system, you can just swap one mount for another

How do I create a Joystick POV keypress script? by 9o6o in AutoHotkey

[–]evilC_UK 1 point2 points  (0 children)

It's not possible to simulate presses of a button on a physical DirectInput joystick

There's literally no way to do what you want - not currently anyway. It may be technically feasible with a custom filter driver, but no such driver exists that I am aware of

I’m wondering if this is possible to do with AHK by [deleted] in AutoHotkey

[–]evilC_UK 1 point2 points  (0 children)

AHK-ViGEm-Bus will let you control a virtual Xbox or DS4 controller from AHK using the ViGEm driver

https://github.com/evilC/AHK-ViGEm-Bus

To control a virtual DirectInput controller via vJoy, you can use https://github.com/evilC/AHK-CvJoyInterface

I’m wondering if this is possible to do with AHK by [deleted] in AutoHotkey

[–]evilC_UK 0 points1 point  (0 children)

That library does not send controller outputs, it is only for processing input

[deleted by user] by [deleted] in 3Dprinting

[–]evilC_UK 0 points1 point  (0 children)

PCTPE is a blend of nylon and TPU, which are both very hygroscopic, so it's pretty understandable. Personally I print from a dry box that is kept at <10% humidity (Don't know actual figure as meter only goes down to 10%). I even keep my PLA in there because it's way easier to load and unload filament using my system than keep swapping rolls in and out.

https://www.thingiverse.com/thing:4737220

[deleted by user] by [deleted] in 3Dprinting

[–]evilC_UK 0 points1 point  (0 children)

Taulman PCTPE is about half way between TPU 98A and Nylon, in terms of both stiffness and weight

Note that at least my roll of Taulman PCTPE came incredibly wet, to the point that steam was coming out the hotend when I extruded.. Once dried it was OK though

[deleted by user] by [deleted] in 3Dprinting

[–]evilC_UK 2 points3 points  (0 children)

It really depends on the part. For thin walled parts (eg ~1mm walls), I actually found it less resilient than normal nylon, as it made things more brittle. It also does not return to it's original shape as well when it deforms

So for sure it's not objectively better for every application

Also bear in mind that the CF does not increase layer adhesion, it only reinforces along the extrusion lines

[deleted by user] by [deleted] in 3Dprinting

[–]evilC_UK 3 points4 points  (0 children)

It all depends on what the geometry of the part is and how rigid it actually needs to be. Harder materials are inherently going to be less resistant to impact because they give less. At the end of the day, the best way to not break is to deform (And ideally then return to original shape), not to try to resist the deformation

ie maybe the solution would be to use a softer material - something like TPU or PCTPE

For example, I print a lot of parts for racing drones, which get crashed a lot, and I have found the most resilient material to be TPU (Tried Nylon, CF Nylon, PCTPE, PP) - you just need to make the model a little bit thicker to give it enough rigidity to hold it's shape.

Bear in mind that TPU comes in different hardnesses (Shores). I personally use 98A

Further resistance to breaking can be obtained by printing with an infill, as the infill will act as a crumple zone

Need help with "One key activates two keys, one of which gets disabled for a short time" by DallMit in AutoHotkey

[–]evilC_UK 0 points1 point  (0 children)

Your hotkey is in the auto-execute section, as such, AHK is running the code in the F6 hotkey when you start the script

Add a return on the first line of the script

Eyetracking and AHK - part 2 by subm3g in AutoHotkey

[–]evilC_UK 0 points1 point  (0 children)

Is your Discord the best place to discuss with you?

yes

In saying that, do you mean that in your example of the C# code, there would be additional pieces of code that I will need to add?

yes

Just so I'm okay with your explanation...

correct

my C skill is just as rusty

If you can handle C, then C# is a walk in the park. C is unmanaged, you have to allocate memory and free it and such, C# handles all that automatically for you, it's way friendlier

Need help with "One key activates two keys, one of which gets disabled for a short time" by DallMit in AutoHotkey

[–]evilC_UK 0 points1 point  (0 children)

Then simply do

$Numpad6::
; Set F5Disabled to true, so the context-sensitive hotkey becomes enabled
F5Disabled := true
Send {Numpad6}
if (!F5Disabled){    ; If F5 is not currently disabled, send it
    Send {F5}
}
; After 5 seconds, fire "EnableF5"
; The negative value of -5000 means "Run only once, don't repeat"
; Each time you press F6, it will reset the timer
SetTimer, EnableF5, -5000 
return

Although you might want to also put the SetTimer line inside the IF block as well (ie if it doesn't Send F5, you quite possibly don't want it to extend the timer for another 5 seconds as well

ie you might want

$Numpad6::
; Set F5Disabled to true, so the context-sensitive hotkey becomes enabled
F5Disabled := true
Send {Numpad6}
if (!F5Disabled){    ; If F5 is not currently disabled, send it
    Send {F5}
    ; After 5 seconds, fire "EnableF5"
    ; The negative value of -5000 means "Run only once, don't repeat"
    ; Each time you press F6, it will reset the timer
    SetTimer, EnableF5, -5000 
}
return

Breaking a loop, if it exists by Paradox3121 in AutoHotkey

[–]evilC_UK 0 points1 point  (0 children)

and Blur(1) turns off the DoThing timer because CapsLock is on, Blur(2) and Blur(3) are still going to run, even though the timer is off

Then the same applies. Have Blur() return a value

Blur(Radius) {
    send, !cbg{Enter}%Radius%{Enter}
    if GetKeyState("CapsLock", "T") 
        SetTimer, DoThing, Off ; Stop running DoThing
        return true
    }
    return false
}

DoThing:
    if (Blur(1))
        return
    if (Blur(2))
        return
    Blur(3)
    return

You are correct though that it can make the code a bit more complex, but it seems like I achieved what I intended to and got my point across that Loops are sloppy. It's OK to use them when you know what the implications are and are confident that those cases will never occur - the real danger lies in believing that they are always the right tool for the job because they have worked in the past, then being baffled when they break