The Unfancy Remote | WIP DIY reliable remote

Not bad! @DeadLightning may have some tips on getting a really nice finish on 3D printed prototypes if you want to take it a step further.

3 Likes

@sleepless @DeadLightning by all means, tell me your secrets! :grin:

Just came back from the gym, which has been the first test on actual roads with traffic. Absolutely flawless. Visited some problematic spots around town (industrial zones with heavy RF interference) and couldn’t feel the slightest hiccup! So fucking happy.

Also, check out the new hall sensor calibration procedure:

  1. Turn it on and don’t release the button for 5 seconds
  2. First light turns on, center is defined. A short press moves to the next step.
  3. Second light turns on, define the maximum value. Short press to move on.
  4. Third light turns on, define the minimum value. Short press to continue.
  5. Fourth light turns on, the software checks if it has to invert the endpoints and stores the info in the EEPROM. Calibration complete and move to mode 1 (board battery, in this video it wasn’t turned on)

10 Likes

Very cool. Do you have to do the calibration every time? Or is it stored until you want to do it again? I assume as it’s writing to the EEPROM it’s stored forever but thought I’d ask!

Love this project

3 Likes

No, of course! It gets stored, this is just needed the first time the remote is put together.

I did it so you can just flash the firmware and close it up without having to keep it connected to the PC half naked and bake the calibration values inside the Arduino sketch :grin:

Thanks a lot mate, means a lot coming from someone as creative as you, love your content in YouTube and what you do with Apex!

3 Likes

If I may, some UI/UX suggestions:

  • I read your procedure and then watched the video, and what I assumed the procedure was didn’t match up to the actual procedure. I assumed you’d have to hold the throttle all the way to one side AND press the button while it’s held in the position. I like your way better, but maybe (eventually) wordsmith the instructions to reflect that in more detail.
  • Step 1 - i would suggest all lights turn on after the 5 seconds, so the user knows when to release the button, rather than before.
  • Step 2 - can this skip be skipped? the center is defined immediately after those 5 seconds. the user doesn’t actually do anything in this step, just presses the button again, so ideally it could be skipped entirely (done automatically after LEDs light up)
  • Step 3/4 - Even better if the user could push the throttle all the way forward, and then all the way back, all as one “light” step, to define the max and min values in the same step. No idea if that’s doable, just a thought.
  • Step 5 - There’s no user action again here, so it’s confusing what’s happening. You might resolve this by flashing all 4 lights once/twice to signify an “ALL CLEAR / GOOD TO GO” and the end of the process. Alternatively, could flash the green light to signify the same meaning.

Again, just thoughts. Take what you will.

6 Likes

So here is how I finished and painted my poastmote if you wanna see another painted/finished print. I’m happy with it, though I did get some chipping of the paint over time so there is room for improvement.

If you find any better techniques throughout this process please let me know! Looking like that textured spray paint already does a really good job of hiding layer lines.

4 Likes

Very good points! I’ll make sure to do a better job with the manual once I update the repo so everyone can make their own, but certainly there are things that can be improved. Regarding your points:

  • Step 1 - i would suggest all lights turn on after the 5 seconds, so the user knows when to release the button, rather than before.

The lights turn on as you turn the remote on the “regular” way (it also rumbles). Normally you would stop pressing the button once the light sequence is complete, that leaves it on and ready to go. Still, I can look for a way to signal that since you’re still pressing the button you’re going to enter calibration mode after 5 seconds.

  • Step 2 - can this skip be skipped? the center is defined immediately after those 5 seconds. the user doesn’t actually do anything in this step, just presses the button again, so ideally it could be skipped entirely (done automatically after LEDs light up)

Centering is VERY important. I really think it’s safer to let the user know that they MUST NOT touch anything in a dedicated step so the measurement can be taken reliably (and I really should implement at least an average of a significant number of samples).

  • Step 3/4 - Even better if the user could push the throttle all the way forward, and then all the way back, all as one “light” step, to define the max and min values in the same step. No idea if that’s doable, just a thought.

That was the first implementation, actually! The reasoning behind separating the steps is that the user might have inserted the magnets in the thumbwheel in the opposite direction of what the hall sensor considers “north” and “south” compared to what we consider "forwards and “backwards”. With separate steps I can clearly assign a positive or negative difference from the center to the actual signal that gets sent, making it independent from the way the user assembles it. I could do it by just taking the difference of the first movement as “positive”, but I think it’s clearer this way. I’ll revisit anyways!

  • Step 5 - There’s no user action again here, so it’s confusing what’s happening. You might resolve this by flashing all 4 lights once/twice to signify an “ALL CLEAR / GOOD TO GO” and the end of the process. Alternatively, could flash the green light to signify the same meaning.

I agree, it’s confusing. It’s actually automatic and you don’t have to click again to make it go into normal mode, but I intend to use this “step” to give the user feedback about the results of the calibration. For example, if the difference between “positive” and “negative” is not enough (the user has inserted both magnets in the same orientation) or the sensor gives bad readings. Unfortunately the green light is just the Arduino power on LED and I have no control over it from the software :confused:

3 Likes

Wow, that’s a LOT of work but looks amazing. I’ll definitely take a look once I stop changing the design every 5 minutes :sweat_smile:

5 Likes

Welp, I have good news and bad news.

The good news first:

  • The remote is still working perfectly and I just can’t get it to disconnect no matter what I do.
  • My GF’s VX1 started acting up again and I built a second Unfancy for her that she tested over the weekend and absolutely loved.
  • I have three different thumbwheel variants ready and should get the trigger version going this week
  • It just passed a durability test with flying colors!!

Bad news is the test wasn’t exactly scheduled…

Gore inside

100% my fault for getting cocky in a really rocky trail, nothing else to blame but my own stupidity. Fortunately it’s just skin (and I didn’t even showed you my butt. That’s gonna hurt tomorrow :laughing:)

16 Likes

HYPE AF! I guess I need to get my printer running soon so I can start copying you.

will the electronics be easy to acquire?

5 Likes

@thunkar do you need beta testers?

I don’t personally need a remote just excited to see if this project gets big
Seems like it has tons of potential

1 Like

As easy as it gets in the current chip shortage hell…

In that regard, I actually assembled my GF’s receiver using an Arduino pro mini that uses an Atmega 168. Smaller chip with less storage and RAM, but considerably cheaper and another option to source!

5 Likes

A little bit further down the line, but getting there…thanks for offering, I intend to give the community a chance to shape this thing and help develop it!

6 Likes

I will absolutely beta test a trigger version! There are not enough trigger remotes on the market, and even less (if any) reliable ones from what I’ve heard.

Project is looking great so far!!

5 Likes

Yeah seriously lmao, trigger is best imo

2 Likes

The understatement of the decade

6 Likes

due to the nature of the project I feel like the best way to do that is grab the STL files previously linked in this thread, get the BOM and make a copy of this for yourself. this is what I’m going to do. I can’t wait to DIY my remote.

1 Like

Update

Life’s been complicated and my arm and butt took a little bit longer to recover than anticipated. However, I come bearing great news.

Testing

It’s going great. +200km without issues, great battery life, precise as the first day. My GF has had the same experience as me and will not go back to her VX1. Even painted hers (rounded version with ergonomic addon):

Software

Mostly minor corrections on the calibration. I’m missing three features ATM:

  • Automatic shutdown after some inactivity period.
  • Low battery warning and graceful shutdown.
  • Better pairing. Right now I’m using a combination of LoRa frequency + matching rx/tx id to avoid collisions. This is likely to remain this way through the beta period (1000 channels * 65535 possible IDs make them highly unlikely, only issue is that they’re baked into the FW)

Hardware

Finished the design for the “VX1-like” version:

Mostly the same footprint, a little bit more comfortable if you ask me!

And finally, due to popular demand and still in early stages but FULLY FUNCTIONAL both on HW and SW sides…

The Dual Trigger Unfancy Remote



A lot smaller than previous attempts and with all the same features, finally validating the dual input in the PCB. I know some folks prefer the inverted trigger for the brakes, but bear with me, it’s VERY comfortable and natural to use. Will try and polish it so I can test it over the weekend.

Cheers!

23 Likes

Dude. I want to be beta tester for the dual trigger version.

I will pay whatever it takes :joy:

2 Likes

@thunkar can you post the BOM for the trigger version and some stl files I can get started with? I really want to help stress test the designs you’re throwing up.

1 Like