Member Since: October 5, 2009

Country: United States



Electrical Engineer/Enthusiast

Programming Languages



CMU, Oakland University


Microcontrollers / Sensors



  • I look at the I2C buss traffic with a logic analyzer, and notice that Arduino is requesting data in 32 byte chunks (starting at 0x2400). However, every 32 bytes of received data are identical to the first 32-bytes...something is not right

  • Hi, I recently bought this sensor. I am using an Arduino Due and the source code provided for "Basic Readings", but there seems to be an issue during the parsing of EEPROM information. The function MLX90640_ExtractParameters() returns -4. I traced this error code to the function ExtractDeviatingPixels(): which returns a -4 because of the following statement:

    else if(outlierPixCnt > 4)

    This seems to cause all of the values to be NaN (I'm assuming there is a divide by zero somewhere). Any suggestions?

  • "IR light from the VCNL4040 distance sensor dramatically scatters when an object like a white coffee cup or human skin comes in contact with the face of the sensor"

    How about a black or red coffee mug? ;)

  • Good work, just looks like PID tuning. How fast is your control loop running? (And is your code executing at exactly that frequency?) PID is finicky, because all of your gains are associated with a fixed time-delta (if the actual delta is too jittery, then robot looks like they just had a few shots of espresso).

    Sharing my robot too!

  • Sorry for so much editing, wanted to get code formatted!

  • if( getJoke()){
  • Hmm...'2047' as max readings... sounds like something is being saturated. Is this accelerometer an analog output, or digital based (spi/i2c)? If digital, is there a possibility to decrease the sensitivity (increase max-range) on the sensor itself so we have more fidelity with 'hit' values? Just curious, I like to go for the low hanging fruit in terms of optimizing this problem.

    I have one other idea that could improve algorithm/solution finding: Since we are in the experimentation stage, I think it would be beneficial to have a trigger-type sensor in the boxing glove to have a synchronized truth vector to work with. As fun as it is seeming to be for some people here, I don't see why we would choose to fly blind from the get-go :-)

    But hey, if that's what you'd like your challenge to really be I understand.


  • It really does get lonely during 2nd shift...How did you learn to manage this, lamp?

  • R&D of Light-saber prototyping trials, iteration # 41: Light more controlled than previous experiments. However, looking closer at our subject, we confirm consistent side-effect of hair removal from head and facial region.

  • This is a good example of the evolution of the amateur programmer: you ran into a hurdle and sought out a more efficient method, where you stumbled onto other hardware inside the machine you once thought you knew enough about; interrupts!

    Imagine what you could do once you learned about the other embedded features waiting to be uncovered! And yet, imagine the time period where these things had not yet existed on a single chip...if at all

    Always read your datasheets, and research certain parts of the micro, as they were put there for good reason,mostly stemmed from the long evolution of hardware and software.

    You may be interested in learning about other RTOS models out there