Results 1 to 7 of 7
  1. #1
    mtbr member
    Reputation:
    Join Date
    Dec 2010
    Posts
    35

    NiteRider DIY USB Protocol anyone?

    Is anyone familiar with or can point me to any resources that have reverse engineered the NiteRider USB protocol that NiteRider uses to set light profiles in their DIY line?

    My 3000 comes next week and if its an HID (software, not light) stack it would be pretty easy to A) reverse engineer the protocol and then B) implement iPhone and Android apps so that adjustments can be made on the trail.

    Any pointers are welcome. I'll start analyzing it next week but a jump start would be awesome.

    John-

  2. #2
    mtbr member
    Reputation:
    Join Date
    Nov 2011
    Posts
    16
    I would guess its micro-controller based (small amount of flash memory that the software writes a little binary file to). Not sure how you would connect a phone without adding a board to handle the communications.

    If you were hell bent on inventing this, it would probably be cleaner to build a light and hook up an arduino pro or something similar directly to the driver board. Even better would be getting a tiny board made with an ATmega and a bluetooth chip.

  3. #3
    mtbr member
    Reputation:
    Join Date
    Dec 2010
    Posts
    35
    Yup, that about sums up my findings as well. The light does not have a USB controller built-in, it uses the charging base where the controller lives. The light itself takes a simple 3-pin system.

    Sniffing the USB shows a pretty simple protocol that is easy enough to reverse engineer but, to your point, there is a controller in there that is moving that USB ascii stream across and probably repackaging it.

    So, any sort of mobile programming unit is probably not going to be scalable in terms of allowing other people to use it (not many will assemble the Arduino you'd need to set it up).

    The door is open for creating apps that run on non-mobile USB Hosts that that NiteRider does not support (OSX/Linux) but for me this project is over for now. It gets dark early and I want to use the light to ride, not to experiment with

    J

    Quote Originally Posted by 3mpach3r View Post
    I would guess its micro-controller based (small amount of flash memory that the software writes a little binary file to). Not sure how you would connect a phone without adding a board to handle the communications.

    If you were hell bent on inventing this, it would probably be cleaner to build a light and hook up an arduino pro or something similar directly to the driver board. Even better would be getting a tiny board made with an ATmega and a bluetooth chip.

  4. #4
    mtbr member
    Reputation:
    Join Date
    Nov 2011
    Posts
    16
    I've seen flashlights that are usb programmable (someone open-sourced one a while ago). It would be interesting to do the same thing with a headlight. A more useful feature would be to embed some sort of sensor feedback into it so it could be set to select modes based on ambient light (flash when its dawn/dusk, dim after sunset, bright as it gets darker)

  5. #5
    mtbr member
    Reputation:
    Join Date
    Dec 2010
    Posts
    35
    That was one of my goals with this project. By embedding it in the iPhone I could not only adjust based on ambient light but also on speed. This light in particular (8-leds, individually adjustable) would be great for that sort of real-time adjustment.

    Maybe someday I'll pick it back up but I was really hoping for an on-board USB controller to interface with so I could keep it in software and reverse engineer it at a distance. Without that its a complex Bluetooth->Serial connector, hardware level debugging and a more difficult time reverse engineering a fairly expensive piece of kit.

    Sounds fun.. Just not right now
    J

    Quote Originally Posted by 3mpach3r View Post
    I've seen flashlights that are usb programmable (someone open-sourced one a while ago). It would be interesting to do the same thing with a headlight. A more useful feature would be to embed some sort of sensor feedback into it so it could be set to select modes based on ambient light (flash when its dawn/dusk, dim after sunset, bright as it gets darker)

  6. #6
    mtbr member
    Reputation:
    Join Date
    Apr 2008
    Posts
    105
    Quote Originally Posted by siberian1967 View Post
    That was one of my goals with this project. By embedding it in the iPhone I could not only adjust based on ambient light but also on speed. This light in particular (8-leds, individually adjustable) would be great for that sort of real-time adjustment.

    Maybe someday I'll pick it back up but I was really hoping for an on-board USB controller to interface with so I could keep it in software and reverse engineer it at a distance. Without that its a complex Bluetooth->Serial connector, hardware level debugging and a more difficult time reverse engineering a fairly expensive piece of kit.

    Sounds fun.. Just not right now
    J
    I doubt the protocol is good for realtime controll. I would be suprised if it was not posible to reprogram the controller board with a bit of work if you can get to it to probe it with a scope. With controll over both sides of the interface your then off and running.

    What you are after is something similar to what I have for my homemade setup which has speed based light levels. I use reprogramed TaskLed drivers. I have two lights one with a direct serial interface and another with an Ant radio interface. I controll them from my homemade bike computer. This will change going forward as I plan to move to an Ant interface on both lights. The homemade bike computer has turned into an Android App for phones with Ant support built in. Too busy working on the basic App at the moment trying to get it to a publishable state, once tha't done I will do the Light controll app to complement it.

  7. #7
    mtbr member
    Reputation:
    Join Date
    Dec 2010
    Posts
    35
    Quote Originally Posted by ifor View Post
    This will change going forward as I plan to move to an Ant interface on both lights. The homemade bike computer has turned into an Android App for phones with Ant support built in. Too busy working on the basic App at the moment trying to get it to a publishable state, once tha't done I will do the Light controll app to complement it.
    That sounds really interesting. What might be neat would be a bluetooth interface (are you using Arduino in the guts or?) which would open up compatibility and control in interesting ways.

    I've stopped on my project for now, too much riding to do with the early nights

Similar Threads

  1. Protocol
    By skyerose123 in forum Western Canada
    Replies: 7
    Last Post: 07-19-2010, 11:11 AM
  2. Protocol
    By yorkn in forum Beginner's Corner
    Replies: 13
    Last Post: 04-21-2010, 03:54 PM
  3. Demo protocol?
    By Carl Hungus in forum California - Norcal
    Replies: 79
    Last Post: 02-09-2007, 12:16 PM
  4. What's the protocol...?
    By cmweldon in forum Passion
    Replies: 42
    Last Post: 08-29-2005, 10:26 PM
  5. protocol question
    By truman in forum Endurance XC Racing
    Replies: 2
    Last Post: 04-22-2005, 02:02 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •