Simple 3D-printed NRF remote - Arduino controlled

you sure you have “nano” selected under >boards

EDIT: you sure you want to build a remote?.. might be less trouble/time/$ for you to just purchase one.

How many of you here already for a crash test PID cruise control? I need a feedback. Solidgeek came up with the formula for PID. we just need a right formula numbers of PID l.

Yeah, I did everything we talked through, and the steps followed in this forum.

I do want to build one! Coding is just not my strong-suit (clearly).

EDIT: I wouldn’t need help if somebody else had already put a guide or steps on how to do this, however nobody has. But if you don’t want to help me, and want me to struggle to learn how to do this, I will. I appreciate your help so far.

all good. just keep pluggin away at it, any “error messages” you get just type that into “GOOGLE”, should get some hits. I’m not fluent with MAC/OS, but the IDE should be the same.

Is anyone selling a finished remote?

@SeeTheBridges is in the process of making multiple but I’m not too sure when he’s selling.

For those of you who have a startup problem with the receiver, have you thought about making a startup delay with a 555 timer circuit? The startup problem is caused by voltage spikes coming from the VESC, so to delay the startup of the receiver should fix this.

Give this a look: http://www.learningaboutelectronics.com/Articles/555-timer-delay-before-turn-on-circuit.php

I will try this out myself soon.

@Deakbannok I have abandoned the PID cruise control, the sampling rate just isn’t fast enough, and tweaking the numbers don’t seem to do the trick. The “UART only” mode, however, works great with cruise control, since it utilizes the VESCs internal PID control.

I had some similar problem on my old board using arduino, first I had to make an RC filter on the 5V line, but the turn on problem I solved by just adding delay as the first thing on the setup, 8 seconds did the trick back them

Does this mean cruise control is coming soon :grinning:

I’ve been riding with my tiny cap for a couple weeks now and its still running fine… I think this may be the fix we needed. A 555 Timer could work for people without huge space constraints though?

I run an LC filter + 1000uF cap on the 5V line, that helps with the startup problem.

In addition to that, I add a 220uF cap between the reset and ground pins, that solves all problems with having to do a hard reset to get the Rx (or Tx) going.

Not sure if the cap is the best idea but so far it works.

2 Likes

Anyone got some extra parts? The spring, power switch, magnets, and hall sensor are stuck in customs sorting and I’m not sure I’ll even get those parts.

@solidgeek Oversaw that problem. I added if (UartUpdated){ err = ((returnData.rpm)-rpm_set); err_T+=err; throttle_adjustment = ((Kperr) + (Kierr_T) + (Kd*(err - err_P))); err_P = err; } Just to cal when there is a new simple udpated. Is still slow but it working out little smoother. Also and added the band zone between 15 range. So you dont get a jump throttle when the adjustment and throttle is 15 or less different.

Just need more tester. If anyone is interesting testing this Cruise Controller.?

is been out for awhile :wink: we r testing them.

@solidgeek Finally I got all parts and tossed them together on Saturday :slight_smile: I took the pictures before I updated to the latest dev build. But as I stepped through the diff, I noticed a additional Pin going to the Arduino called “chargeMeasurePin = A1;” What was It intended for originally? And will it be reused or did you canceled that idea?

1 Like

Looks good! The pin was planned to monitor if a charger is connected. This way I could show a big battery and procentage on the display while charging, however I choose not to as it seemed unnessecary as it would only work while the remote is turned on.

Finally got my remote working pretty much perfectly! The development branch basically fixed all the issues I was having with the hall sensor range/not registering the extremities. Thanks @solidgeek!

Just one question, apologies if it’s been asked before, I did do a search but nothing came up; I can only set a maximum of 12 under motor poles but I believe mine has 14. Any ideas? Apologies if this is a dumb question!

2 Likes

@HighMasterGogo Glad to see you got it working :slight_smile: ! Not a dump question at all. It seems that I have forgotten to change the maximum number of poles. Thanks for noticing! I have updated the development branch again, and you should now be able to set a maximum of 250 poles (after reuploading the firmware).

Now to something a little more exiting! I have been working on a custom PCB for the receiver, to eliminate any receiver-related issues. It utilizes the Atmega32u4 as the microcontroller and a Pololu 300mA Buck converter to step down the unstable 5V to a better regulated 3.3V. So far I got a working prototype (still need to do a lot of testing), and I am planning to sell the receiver to anyone who is interested.

What do you think? :slight_smile:

17 Likes

I will want 2 receivers! :grin:

I’ll be in for 2-3 kits :slight_smile: Got a Reflowoven here so i’ll do the SMD stuff my selfe :stuck_out_tongue:

If You want I can help you assemble the boards, i’m living in Berlin, shouldn’t be to long away from your place.