Navigation

    The Onewheel Forum

    Onewheel Forum

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Users
    • Groups
    • Rules
    • Archive

    Extra LEDs For the Onewheel (Because RGB adds a 15% preformance boost)

    Mods & DIY
    5
    56
    2566
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LOAFFETTE
      LOAFFETTE DIY @cheppy44 last edited by LOAFFETTE

      @cheppy44 So I messed around a bit with the code to try and make it work

      Added a fuction that would print to the console if button two wasn't pressed.
      I don't have anything plugged into the pin for button 2 or 1 and it's reading that button one is pressed..

      Could my arduino be messed up?

      what board are you using, I might try and buy the board you have instead.
      Also, when I have the button plugged in and I hold it down, the LEDs stop flashing but are stuck on red

      113 volts?! I could lick that!

      cheppy44 1 Reply Last reply Reply Quote 2
      • cheppy44
        cheppy44 XR DIY @LOAFFETTE last edited by

        @loaffette I am using an ESP 32 dev module, but I would not recommend it if you want to implement this on your board. I have a suspicion your issue has to do with pull up/down resistors. Could you post a picture of what your electronics looks like? The purpose of the resistors is to give the digital inputs a default state. If you leave them unconnected or “floating”, they are subjected to back ground electronic noise and are not reliable. Some micro controller have certain pins that have internal resisters that you can enable.

        LOAFFETTE 1 Reply Last reply Reply Quote 2
        • LOAFFETTE
          LOAFFETTE DIY @cheppy44 last edited by

          @cheppy44 I may have forgotten about the resistor...

          113 volts?! I could lick that!

          cheppy44 1 Reply Last reply Reply Quote 1
          • cheppy44
            cheppy44 XR DIY @LOAFFETTE last edited by

            @loaffette the controller you have may have internal pull up you can enable, that was why I was asking what your electronics situation looks like.

            LOAFFETTE 1 Reply Last reply Reply Quote 1
            • LOAFFETTE
              LOAFFETTE DIY @cheppy44 last edited by

              @cheppy44 I'm using an Arduino Uno, a button and two separate LEDs (4 leds per strip.)

              Going to add the resistor.

              Also, I had a cool idea to add on to it later on that would change the color of the LEDs depending on how fast I'm going, or how fast the motor is spinning

              113 volts?! I could lick that!

              cheppy44 1 Reply Last reply Reply Quote 1
              • cheppy44
                cheppy44 XR DIY @LOAFFETTE last edited by

                @loaffette that will be interesting! You would probably need an IMU to tell how fast you are moving.

                LOAFFETTE 1 Reply Last reply Reply Quote 1
                • LOAFFETTE
                  LOAFFETTE DIY @cheppy44 last edited by LOAFFETTE

                  @cheppy44 I actually have one lying around

                  So i tested it in tinkercad since I don't have any resistors IRL. It works with the pulldown, but only button 2 seems to be detected currently.

                  Also, I had to change the code up for the LED so that strip 1 is for the left, and strip 2 is for the right since I'm going to be placing them under the fender for now

                  Updated code:

                  
                  #define PIN1        3 //Pin for Front Strip
                  #define PIN2        2  // Pin for Rear Strip
                  #define BUTTON_PIN1 4   // Pin for Button 1
                  #define BUTTON_PIN2 5  // Pin for Button 2
                  #define NUMPIXELS   4   // Number of Neopixels in each strip
                  
                  Adafruit_NeoPixel strip1(NUMPIXELS, PIN1, NEO_GRB + NEO_KHZ800); //Setup for Strip1
                  Adafruit_NeoPixel strip2(NUMPIXELS, PIN2, NEO_GRB + NEO_KHZ800); //Setup for Strip1
                  
                  int buttonState1 = 0;  // variable for reading the pushbutton status
                  int buttonState2 = 0;  // variable for reading the pushbutton status
                  
                  uint32_t white = strip1.Color(255, 255, 255); //Defines a color later to be used in strip1.fill (r,g,b)
                  uint32_t red = strip1.Color(255, 0, 0);
                  uint32_t yellow = strip1.Color(255, 255, 0);
                  
                  void setup() {
                  
                    pinMode(BUTTON_PIN1, INPUT_PULLUP);  // Pin for button 1 other side connected to ground
                    pinMode(BUTTON_PIN2, INPUT_PULLUP); // Pin for button 2 other side connected to ground
                  
                    strip1.begin(); // INITIALIZE NeoPixel strip1 object (REQUIRED)
                    strip1.setBrightness(4); // a value from 0 to 255
                    strip1.show(); // Initialize all pixels to 'off'
                  
                    strip2.begin(); // INITIALIZE NeoPixel strip2 object (REQUIRED)
                    strip2.setBrightness(4); // a value from 0 to 255
                    strip2.show(); // Initialize all pixels to 'off'
                  
                    Serial.begin(9600); //start Serial console for debuging
                    Serial.println("begin");
                  }
                  
                  void loop() {
                    buttonState1 = digitalRead(BUTTON_PIN1);
                    buttonState2 = digitalRead(BUTTON_PIN2);
                    
                    // check if the pushbutton is pressed. If it is, the buttonState is HIGH:
                    if (buttonState1 == LOW) {
                      // turn left turn signal on 
                      Serial.println("button one left");
                      strip1.fill(white, 0, 4); //strip.fill(color, first led index, number of leds to fill);
                      strip1.fill(yellow, 5, 4);
                      strip1.show();
                      strip2.fill(red, 0, 4);
                      strip2.show();
                      delay(500); //delay for 500 milliseconds or .5 seconds
                  
                      strip1.fill(white, 0, 3);
                      strip1.show();
                      strip2.fill(red, 0, 3);
                      strip2.show();
                      delay(500);
                  
                    } if (buttonState2 == LOW) {
                      // turn right turn signal on
                      Serial.println("button two right");
                      strip2.fill(yellow, 0, 4);
                      //strip1.fill(white, 5, 4);
                      strip2.show();
                      //strip2.fill(yellow, 0, 4);
                      strip1.fill(red, 0, 4);
                      strip1.show();
                      delay(500);
                  
                      strip2.fill(white, 0, 4);
                      strip2.show();
                      strip1.fill(red, 0, 4);
                      strip1.show();
                      delay(500);
                  
                    } else {
                      // turn leds back to "normal" 
                      //Serial.println("normal");
                      strip1.fill(white, 0, 4);
                      strip1.fill(white, 5, 4);
                      strip1.show();
                      strip2.fill(red, 0, 4);
                      strip2.fill(red, 5, 4);
                      strip2.show();
                  
                    }
                  delay(50);
                  }
                  

                  Update:
                  Checked the serial output and it does detect the button press, but nothing is changing with the LEDs

                  update update:
                  Code works! :) Copied code from the rigth blinker and copied it into the if statement for the left blinker and changed strip1 to strip2 and vice-versa

                  iam smort

                  113 volts?! I could lick that!

                  cheppy44 1 Reply Last reply Reply Quote 2
                  • cheppy44
                    cheppy44 XR DIY @LOAFFETTE last edited by

                    @loaffette sweet! the strip.fill commands are pretty useful when you know how to use them.

                    LOAFFETTE 1 Reply Last reply Reply Quote 2
                    • LOAFFETTE
                      LOAFFETTE DIY @cheppy44 last edited by

                      @cheppy44 yep!
                      Tomorrow I'll order the arduinos, some resistors and I'll add them on later on this week.
                      Need to focus on studying for two exams this week, but also I'd like to do a lot of my Onewheel work when I get everything for the Onewheel in! (This, life savers and the Badgersense!)

                      113 volts?! I could lick that!

                      cheppy44 1 Reply Last reply Reply Quote 1
                      • cheppy44
                        cheppy44 XR DIY @LOAFFETTE last edited by

                        @loaffette did you decide which controller you are going to buy? For the application I do thing that any of the name brand arduinos may be a bit big.

                        LOAFFETTE 1 Reply Last reply Reply Quote 1
                        • LOAFFETTE
                          LOAFFETTE DIY @cheppy44 last edited by

                          @cheppy44 going for the Nano due to its compact size and okay price, though that's what I'm going to be using for now. Later i might switch it up to something else

                          113 volts?! I could lick that!

                          1 Reply Last reply Reply Quote 1
                          • LOAFFETTE
                            LOAFFETTE DIY last edited by

                            Update!

                            The Nano(s) are ordered and will be here next Tuesday! I will begin working on making a mount for the arduino and the battery. I will make a test mount for the battery and I'll probably modify an already existing nano mount for now

                            113 volts?! I could lick that!

                            1 Reply Last reply Reply Quote 2
                            • LOAFFETTE
                              LOAFFETTE DIY last edited by

                              Arduino Nanos have arrived!
                              Won't be able to do any work on them until tomorrow. Got slammed with two exams yesterday and today I've got classes until 5 PM then two homework assignments

                              Tomorrow, I will work on the arduino and I'll post the results

                              113 volts?! I could lick that!

                              1 Reply Last reply Reply Quote 1
                              • LOAFFETTE
                                LOAFFETTE DIY last edited by

                                UPDATE!

                                Everything is soldered together, but we have a few problems, mostly on my end.
                                1: Soldering job is horrible and I need to find a better way to connect the wires to the strips and I need actual wire that would be good for soldering. I have wires constantly coming off and I have to solder them back on, so I will have to go and find a way to solder those better..

                                The LED strip I have are old and a lot of them are broken, and I also don't ahve any resistors.

                                But the code works with my arduino, I just need some better wiring and better soldering

                                alt text

                                113 volts?! I could lick that!

                                Lia cheppy44 2 Replies Last reply Reply Quote 2
                                • Lia
                                  Lia GT XR Pint Plus V1 DIY @LOAFFETTE last edited by

                                  @loaffette Looking good so far!

                                  1 Reply Last reply Reply Quote 1
                                  • cheppy44
                                    cheppy44 XR DIY @LOAFFETTE last edited by

                                    @loaffette lookin great!

                                    1 Reply Last reply Reply Quote 2
                                    • LOAFFETTE
                                      LOAFFETTE DIY last edited by

                                      the battery came off of it's mount after a jump off a curb and the LED wires snapped off 5 minutes into a ride

                                      I am going to do research into how to do wiring better lol

                                      113 volts?! I could lick that!

                                      Puzz360 1 Reply Last reply Reply Quote 2
                                      • Puzz360
                                        Puzz360 XR Pint V1 @LOAFFETTE last edited by Puzz360

                                        @loaffette excellent job so far… 👍
                                        We can see what FM would have gone through in board development early on eh?
                                        I think now you have a working setup, hot glue and something like epoxy resin? would be good to set everything in place. A little permanent but would help I think… ???

                                        Edit…Heat shrink too

                                        LOAFFETTE 1 Reply Last reply Reply Quote 2
                                        • LOAFFETTE
                                          LOAFFETTE DIY @Puzz360 last edited by

                                          @puzz360 Yeah, that's the plan

                                          I haven't soldered in MONTHS since the school bans anything that generates heat except for the 3D printer I've got in my room. (It's in an enclosure and the school knows about it, and doesn't entire care as long as I don't blow a fuse). My soldering isn't as good as it used to be and I struggled to make good connections on the solder pads and ended up having half of them ripped up. I'll have to order more LEDs and some solid-core wire, though I have an idea. I need to find a 3D scan or model of the fender I have and then design a clip or shell that will go on the edge or buttom of the fender.

                                          I'll be working on 3D printing and designing some test parts for S-Leon's light bar for the badgersense so I'll just throw this project into it as well.

                                          I'll make the CAD files public when they are finalized!

                                          I'll also try and work on an actual enclosure that fits the curve of my current fender as a start.

                                          Since I know the concept can work now, I'll just have to start refining it

                                          113 volts?! I could lick that!

                                          1 Reply Last reply Reply Quote 2
                                          • LOAFFETTE
                                            LOAFFETTE DIY last edited by

                                            Ok, update:
                                            I've had a lot of stuff happening, and I'm trying to deal with it RN. I'm fine, just a little...
                                            tired

                                            This weekend I hope to make the first working and functioning prototype for my RGB headlight project. Found some resistors, buttons and a spare LED strip to use. I also got some actual wire for soldering, and I do plan on 3D printing out cable reliefs for the LED strip connections.

                                            I will post those models publicly when they are tested and ready

                                            113 volts?! I could lick that!

                                            1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post