Emisar D2 first impressions

Got mine about a month ago, slick little light. Have a small problem with mine
where the UI seems to get confused at times, when this happens, I have to discon/recon the battery which resets things then it’s ok for a while but, learning to live with it. No regrets on getting it though.

I feel the same way…
is your light the stone white color? (MAO)
(there is a rumor that MAO has more frequent contact issues than the anodised models… just checking for another data point from you)

the UI seems to get confused at times, when this happens, I have to discon/recon the battery which resets things then it’s ok for a while

suggest you clean the ends and edges of the body tube w 600 grit, or finer, emery paper… also the contact rings where those tube ends make contact in the tailcap and in the head… The goal is to remove any surface treatments on the body tube, that could be interfering w good contact… and removing any oxide from the contact rings inside the tail and head…

update, the rubber cement did not hold… I failed to let it air cure first… so I switched to some double sided tape…
Imgur

some people asked for clarification of where I use the 600 grit emery paper, here is a photo of the locations:
Imgur

and how I folded the emery paper into a narrow point held in forceps to polish the very thin contact ring in the head:
Imgur

Hey there @jon_slider,

While I’m sure those members who are interested in your mods can generally understand what you’re doing, I want you to know that the depth of the details you typically provide with the projects you post here on BLF, truly makes a big difference in our ability to more clearly understand the technical details. Despite over 13 years of my own modding experience, I still benefit greatly from the added graphic details you include in your photos, along with your clearly written descriptions.

Kudos and keep up the great work from an appreciative member.
-KSM (the other one!)

1 Thank

Thank You!
so glad when I can give something back
great to hear the visuals are helping too :beer:

1 Thank

Thanks, Toy Keeper! I think I’m going to delve into Python.

Do you have any recommendations for a good place to start? Are there some videos or online tutorials that can get one up to speed in a fairly decent amount of time?

You were just a couple letters off from answering your own question. :wink:

This isn’t the only tutorial, of course… but it’s the one I most often hear recommended.

Oh, and one other important thing. Python itself can do a lot of the teaching. If you ever want to know more about something, just use help(something) to see the built-in documentation. Like, if you wonder how a function works or what’s in a module or what data type an object is or … whatever. Just stick a help(some_object) in and it’ll start up an interactive documentation reader for that particular object.

1 Thank

Hah! What do you know. :sweat_smile:

Speaking of Dive, do you know of the Kuru Toga Dive? Terrific pencil.

Excellent, I’ll give that tutorial a shot. Good to know about that interactive help system. Once I’m fluent enough with the basics, probably the next logical thing is to identify real world programming problems and see how to solve them with Python.

1 Thank

Nope, haven’t heard of a Kuru Toga Dive pencil before. I don’t write on paper often, and when I do, it’s usually my Fisher rainbow space bullet. The Dive sounds like it does some cool stuff though, automatically keeping the right amount of lead sticking out the front without a need to knock it.

For writing, I mostly just splurge on keyboards. Like a Keychron Q65 with Durock T1 Silent “shrimp” switches and black+purple MT3 keycaps and heavily customized firmware. Here’s the current layout:

I forgot to mention earlier… one particular thing which is handy at first is help(__builtins__) to see what’s in the default namespace. Using help() by itself also offers a good starting point. And import this shows the Zen of Python.

> python
Python 3.7.3 (default, Jan 22 2021, 20:04:44) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> help()

Welcome to Python 3.7's help utility!

If this is your first time using Python, you should definitely check out
the tutorial on the Internet at https://docs.python.org/3.7/tutorial/.

Enter the name of any module, keyword, or topic to get help on writing
Python programs and using Python modules.  To quit this help utility and
return to the interpreter, just type "quit".

To get a list of available modules, keywords, symbols, or topics, type
"modules", "keywords", "symbols", or "topics".  Each module also comes
with a one-line summary of what it does; to list the modules whose name
or summary contain a given string such as "spam", type "modules spam".

help> 

Really, you can just run python and then ask for help, and it should point you in the right direction.

1 Thank

No mine is the dark grey color. I have the white / UV model. What happens about 50% of the time is, while the white channel seems to work fine, if I switch over to the UV then, either leave it at the level it started at or, try to increase the output, it will start to flicker then go very dim. At this point, I cannot switch back to the white channel, all I can do is reset the battery. I will try the cleaning procedure you mentioned which makes sense because it acts like it’s a connection problem.
Thanks for the info.

1 Thank

Thanks for the details of your light color and failure mode… The first thing I would suggest you try, is removing the white ring around the spring:
Imgur
no need to remove the spring from the light… you can erase the white ring with emery paper folded to a corner… held in some forceps or tweezers

Please share if that solves the contact problem.
I hope it helps.

1 Thank

Will try it and let you know.

Wow, looks like it worked. As soon as I started to clean the ring with the emery
paper, I could see a little discoloration on the paper. When I was finished
with the tail end, I also put a fine coat of conductive lube on that, the end of
the head section, and the threads on both ends. Gave it a try and the problem
appears to have been corrected.

Thanks again for the info.

I’m glad to hear the issue got resolved, in both cases, by simply improving the electrical contact. :heart:

1 Thank

Yay! :wink: :partying_face:

I found this solution thanks to makeruvthings on Reddit. I also heard from another redditor privately that their D2 no longer flickers and is now working reliably also.

1 Thank

That’s what is so great about this site, if you’re having a problem with a given light,
more than likely someone else has had the same problem and may have a solution.

1 Thank

There’s something nostalgic and visceral about using analog writing instruments. The mechanical pencil has a particular nuance, the clicking to advance lead. But, some models do it automatically. Some do it in a mediocre way, others much better. The Kuru Toga (by Uni) rotates the lead automatically, negating the need to manually rotate the pencil for avoiding a chisel tip. But the Dive goes one more level–auto lead advancement. It has a novel mechanism that is superior to many others. No lead pipe guide / sleeve need touch paper.

Fascinating keyboard. I’ve not gone down that rabbit hole yet. I do have an old IBM PS2 mechanical clicky keyboard and got an adapter for use via USB, but I prefer more a more streamlined experience.

What’s the nature of the firmware customizations you’ve done and what real world requirements drove those modifications? Is it a series of macros to accelerate writing of code, that sort of thing? And do you really switch between typing on QWERTY vs. DVORAK?

About the different core layouts, yes, I switch frequently. I mostly use dvorak, but the host I’m connected to may be configured for qwerty or dvorak… and sometimes other people need to type. So with layers for qwerty, dvorak, and undvorak, I can get either qwerty or dvorak regardless of which one the host is configured for. Plus, there’s a colemak-dh layer because I’ve been meaning to try it. I typically switch between the two most-used core layouts using the dipswitch on the back of the keyboard.

About macros, I don’t have hardcoded macros. Instead, I have keys which can record and play whatever macros I want. It’s like vim macros, but everywhere, in any program. Any time I need to do something repetitive, I can just record it once and replay it as many times as I need.

As for the rest… that’s a longer answer. Each key has anywhere from 2 to 8 different functions. They do many things, collected and refined over a long period of time based on what I find useful:

  • Mouse keys are a big one.

    • I’m often in places where it’s not feasible to use a mouse, so I made my keyboards handle mouse duties instead. Plus, I find those keys useful even when I have a dedicated pointer available, for easier access to various functions, and for two-handed mouse use.
    • It has a full set of keys to move the cursor, click 3 buttons, scroll up/down/left right, and warp the cursor.
    • I have one set in home row position, which is used in a momentary manner by rolling my other hand to the side a bit and pressing the “knuckle key” in the bottom left corner of the keyboard. Or it can be locked by tapping that key twice.
    • There’s also a MouseLock key which transforms the arrow key area to do mouse functions, so there are two different hand positions for mouse use.
    • After using this for a few years, it’s hard to imagine using a computer without a Warp key. It’s very useful! It teleports the mouse cursor between two places – the current position, and the place it last warped from. It’s basically like having two independent mouse cursors, and I wouldn’t ever want to go back to just one.
    • I also created my own cursor motion algorithm and got it merged into QMK so everyone can use it. It makes the cursor motion much more natural and more versatile than the algorithms it had before.
  • Knob. Handy for various stuff, especially as a mouse wheel. More keyboards should have a knob.

  • Layers, so I can fit more functions without needing more keys. More keys tend to be less convenient than just reusing the keys which can be comfortably reached.

    • Moon layer: Lower left corner. Holds the most-often-used extras. The Moon key is really easy to press because it’s a “knuckle key”. I roll my hand sideways a bit and press it with my base knuckle, and suddenly a whole set of new functions are available.
    • Star layer: Upper right corner. Holds infrequently-used functions, mostly. But also a cluster of oft-used stuff next to the key so I can press it with one hand.
    • MouseLock key: Transforms the arrow key area, making the arrows and nearby keys do mouse stuff.
    • NumLock key: Transforms some easily-reached keys to produce numbers instead of letters. I don’t use it much, but have been meaning to get in the habit.
    • F-Lock key (on keyboards with a F1-F12 row): Toggle the F row between the normal F1-F12 keys and a convenient set of custom keys. For that, I’m using two launcher keys (“My Computer” and “Search”) plus F13-F22, which can all easily be mapped on the host side.
    • Macro column modes: On keyboards with an extra column on the left side, this changes the function of those keys between several different modes, each color-coded.
  • Multi-role keys. In addition to layers, a bunch of keys do different things depending on how they’re pressed. This puts more capabilities within reach.

    • Where CapsLock would normally be, I have a key which does Ctrl when held, or Warp when tapped. It’s like having key cursor Tab and mouse cursor Tab right next to each other.
    • The Shift keys have 3 functions: Hold for Shift, tap for left or right paren, or hold both Shift keys to activate CapsWord. CapsWord capitalizes everything until the end of the current word, making it easy to type THINGS_LIKE_THIS.
    • Moon is momentary on hold, lock on double-tap, unlock on tap.
    • The “Windows key” does Super on hold, or left mouse click on tap.
    • The left Alt key is Alt on hold, or Backspace on tap. Or repeated Backspace on 2H (tap-release-hold). It’s suuuuuper handy having Space and Backspace next to each other like that, on thumb keys. Seriously, keyboards should have thumb backspace by default.
    • Right Ctrl is Ctrl on hold, NumLock on tap.
    • Right Alt is Alt on hold, Warp on tap. Warp is available with either hand because it’s really useful.
    • Right Super does Super on hold, or MouseLock on tap. Hold also deactivates MouseLock.
    • In the upper right corner, Home does Home on tap, or Star layer on hold.
    • Pressing Backspace and the key next to it at the same time produces a “Paste” action. (Shift + Insert) Same thing for Star and the key to the left of it.
    • The ~ key is Esc on tap, ~ on shift-tap, ` on Super-tap, Shift-Esc on Moon tap, bootloader/reflash mode on Star-tap,.
  • RGB: Most recent keyboards have a RGB LED under each key, which transforms the typing surface into sort of a low-resolution touch screen. Most keyboards don’t do anything useful with this though, and just splash a rainbow across it for “Epic Gamer RGB”. But I wanted it to be useful, so I made it light up in various ways to indicate various info to the user.

    • Non-base layers light up the keys which exist in that layer, in a color-coded way which matches my layout diagram. Additionally, the layer toggle key lights up in a different color to show what to press to (de)activate the layer.
    • Modifier keys (and their counterparts) light up while active, whether held or stickied or one-shotted or whatever. Hold Ctrl, and both Ctrl keys light up. Tap a key for one-shot modifier mode, and it’ll stay lit until the oneshot timer expires. Tap both Shift keys for CapsWord, and they stay lit up until CapsWord gets deactivated. Etc.
    • There are also keys to control RGB effects, like hue/saturation/value/speed and animation type. I mostly just use a quick splash on each keystroke, which appears, expands, and disappears in a fraction of a second… but at some point I’d like to port my water physics demo so it’ll run on the keyboard.
  • … and a bunch of random other stuff packed in that I’ve found useful.

    • Media keys, like pause/play, next, and previous.
    • A key to dump out info about the firmware version.
    • CapsLock, just in case I ever need it. (haven’t yet though)
    • Three program launcher keys, which I use for a terminal, a lightweight web browser, and something host-specific.
    • An “Any” key. Hold it and it goes: B=ko+~M|z7%9-T-~UlFnD^wvTm25Y7"i8R
    • An “Any Word” key. It goes: handmaidens detailing Rice snowballs familiarly parks Zappa dukes leafs blindly allergenic cutlet schmaltzy mothballed
    • Window management keys: close window, raise, lower, stick, group, expand, fullscreen, move window up/down/left/right, expand window up/down/left/right, switch to desktop on up/down/left/right position, … probably others I forgot, they’re kind of just muscle memory at this point
    • Swap/unswap positions of backspace and backslash (mostly for when someone else needs to type)
    • Swap/unswap positions of U and I on dvorak (dvorak is slightly more efficient when they’re swapped, but that’s non-standard)
    • An Insert key hidden on the Star layer (which almost never gets used)
    • Delete (in two places, for convenience)
    • A Menu key (which is almost never used)
    • On one keyboard, there are layers for Moon, Star, and Void. Void happens when you press Moon and Star at the same time.

… and it’s all portable across several different keyboards, with various details adapted to fit when necessary.

I don’t really have pictures of the current state of things, but here are some older ones which might at least give some idea how things look…

2 Thanks

Updated Bug Report

my D2 has been mostly flicker free since cleaning all the contact surfaces, however, yesterday when I went to use it, it did it again. With a relatively short Vapcel F12 flat top.

I turned on the light, and it got dimmer after a moment. I tightened the head and tail extra tight, there was a very slight rotation of the tailcap, and the light came back to the intended output.

I decided to cut the tailcap spring, on the belief that doing so would allow for a longer battery. I then installed a Lumintop 14500 button top w USB charging… It was a bit hard to tighten the tailcap completely, but once I did, the body tube made contact and the light works!

Time will tell, but atm I think shortening the tailcap spring was a good intervention. It is now easier to tighten the tailcap all the way down, using the Vapcel F12 flat top, PLUS I can now use the slightly longer protected button top Lumintop 14500 w USB charging.

proof of light using the Lumintop 14500:

In hindsight I think I could have accomplished the same result without cutting the spring… I think simply tightening the coils slightly, as I did after cutting the spring (shown above), so the coils would not stack but instead fit inside each other, to go flat under pressure, would accomplish the same result.

here is what the spring looked like when first cut…
Imgur
you may be able to tell that the top coil would rest against a lower coil when compressed… I think this is the root problem…

I tightened the top coil so it would compress flat inside the lower coil, instead of stacking two coils on top of each other.
Imgur
I believe the stacked coils were preventing the tailcap from closing down far enough for the body tube to make good contact with the tailcap contact ring. I no longer think cutting the spring is necessary, just insure the coils dont stack.

So now I can use slightly longer batteries, if I want built in USB charging…

impact of stacked spring coil on maximum internal battery space:

Spring wire thickness 0.8 mm

Vapcell F12 flat top 48.6mm + 0.8mm from stacked spring coil = 49.4mm closing limit.

Lumintop 14500 button top 50.1mm - 0.8mm from unstacked coil = 49.3mm closing limit

by making sure the tailspring coils all nest together without stacking, it is possible to use a Protected Button Top with USB charging, sold by Lumintop, and Acebeam with a spec 920mAh capacity. They are just 50.1mm long. They do have 26% lower capacity than the Vapcell F12 with a spec of 1250mAh… but in some cases USB charging may be useful…

in any case, Both batteries seem to work well in the D2 now. Hopefully the flicker is really gone for good now.

fwiw the same two batteries also work in my TS10… it is not as sensitive to battery length as the D2.

3 Thanks

Update regarding D2 issues with poor ground contact.

I received a new tailcap with a new spring. The light has started showing symptoms of poor ground contact again, even with a very short battery, 48.7mm long Vapcel F12.

Therefore, I do not recommend the D2 with stock tailcap spring length.

I have no issues when using my modified D2 tailcap with the spring cut shorter. It lets me use 50mm Wurkkos 14500 button top and Lumintop USB rechargeable 50.1 mm button top also

now my TS10 and Emisar D2 can share all the pictured batteries:

Imgur

I have ‘please’ set as an alias for ‘sudo’ :smiley:

2 Thanks