Jump to content
43oh

abecedarian

Members
  • Content Count

    1,711
  • Joined

  • Last visited

  • Days Won

    23

Reputation Activity

  1. Like
    abecedarian got a reaction from jsolarski in To those in the USA   
    Enjoy your Independence Day!
  2. Like
    abecedarian reacted to simpleavr in What are you working on today/this week?   
    @@enl
     
    I am doing what you had in mind. I had serial uart and I am capturing 100ms bursts of the digital I/Os from the 1st interrupt. Still, if problem is on the op-amp stage, a scope could help.
    May be I should do FFT and get the mic via ADC, that way I will have more control (S/W filters, etc).
     
     
    @@abecedarian
     
    It's not the gain. It's more like matching both left and right to have the same gain and behave the same.
  3. Like
    abecedarian reacted to simpleavr in What are you working on today/this week?   
    @@abecedarian
     
    I had the same thinking. Trying to find a way or ways to filter out false alarms. Add redundancy and let them vote (say both set of mics agrees, etc) could be a solution. But I am finding that may be it's the quality of the front-end that's affecting the results. So I would 1st try to improve on them. The resistors are typical 1% types and there is nothing I can do on them. I may swap the electret mics to see if I can get a better match. It would be nice though to have a scope to see what actually happens. Now I am just doing trial and errors.
     
    I tried to use interrupt tripping timer-on count to the other mic's interrupt (yes, trying to measure the difference between both "ears" hear the clap), and sometimes I did not get the other ear's interrupt.
     
    Thanks for your suggestion.
  4. Like
    abecedarian got a reaction from cde in What are you working on today/this week?   
    Or maybe inductance sense with the LDC1000?
    Get your friends together to pick up the pod, and it glows with 'mediocrity', while you pick it up (with a ring on your finger) and it goes berserk when you get close.
     
  5. Like
    abecedarian reacted to SixSixSevenSeven in Wolverine Launchpad update for early purchasers   
    its TI, they seem to be the only big corp that care about the little guy
  6. Like
    abecedarian reacted to szhao in RC Car Made with LaunchPad Box   
    Since I am working on the Robotics Boosterpack with @@HylianSavior and @@jwp071, I decided to make a prototype with the box LaunchPad comes with. I've used Firmata to send command to LaunchPad. Check out my other post here. 
     


     
    A quick overview of what's inside.
    Hardware
    - G2 LaunchPad Box 
    - MSP430F5529LP
    - Fuel Tank Boosterpack
    - DRV8833 Motor Drive Control
    - HC-06 Bluetooth
    - Pololu Gear Motor
    - Caps, wires, breadboard
     
    Software
    - Firmata over serial (enabled by Bluetooth)
    - Energia Library on LP
    - NodeJS on PC
  7. Like
    abecedarian got a reaction from bluehash in To those in the USA   
    Enjoy your Independence Day!
  8. Like
    abecedarian reacted to Mr.Cruz in Robotics BoosterPack   
    Here's your monthly update!
    AVC has come and gone, and while it was fun, there was simply too many things that came up at the last minute for me to deal with. The Hovercraft eventually drove straight-ish, but was not able to make it past the first corner. Oh well. I'll be putting up the documentation backlog on hackaday.io for those that want to make one for themselves. The Robotics BPv3 has a few more smaller issues, one of which being that I completely messed up the IO ordering (instead of the pins going 1,2,3,4,5,6,7,8, I did 4,3,2,1,8,7,6,5). Fortunately, it wasn't a dealbreaker, but I will want to fix this. Also, the SD Card connector has been marked NRND, so I'll have to replace that. Something really weird was happening with the Launchpad during AVC such that unless I outputted variables via printf, they would get optimized out. There were loops that I was never entering, despite data being there, there were variables not getting updated, and all in all it was really weird. This is something I'm going to fix before releasing the firmware for the project. Before AVC, I was able to update the control app for the Hovercraft. The fun really started when the night before I only slept 30 minutes and learned how to use GPS and the Sensors on my smartphone. Unfortunately, the IMU sensors on the phone were both noisy and slow, which meant that if I wanted to go straight, I'd need to get that MPU6050 working. Also, the GPS only worked at 1Hz, BUT I did get accuracy down to +/-4m, so there's that. On the subject of the IMU, I think there's something really weird going on with my implementation of I2C. I could read individual packets, but never got the DMP working. I ended up sampling the Gyro at 1KHz, which while it got the job done, starved my command parser such that sometimes I received invalid commands. A huge issue when simply turning on the motors requires 6 back to back commands (one for setting the initial value, and one for enabling them).  
    Now time for a bigger announcement. I'd like to switch gears again to working on the Pick and Place. It's become a large enough bottleneck that I need one working sooner than later. BUT, I also still want to keep testing this board and working on software, so I'm going to try something. I've decided that for the next rev (v3.1 for those keeping track), I'm going to send out test boards so that people can actually put the boards through their paces. If anything this should help incentivise me in documenting how to use the board. This should also help me see how people want to use the board.
     
    This is the first time that I've ever done this kind of thing, and I'll be sinking a good chunk of money into this, but I'm getting close to the point where I'd like for the project to be wrapping up, and hope that this will help. If for some reason I get a lot of response/demand for this, then I'll likely be looking for people that are much more active on working on projects than those who are new to embedded systems, simply due to the stage that the board is at. For those that are interested, PM me or post here for more questions. 
     
     
    TL;DR: AVC was fun. Waay too many last minute issues to correct for. Found minor issues with the board.
    I'll be giving away a few boards to hopefully receive feedback on the board, and find out what else needs improvement.
  9. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    First thing I would suggest is to initialize your variable:

    char senha[3] = {'x', 'x', 'x'};
  10. Like
    abecedarian reacted to icserny in TM4C129 Internal Tempsensor   
    The latest official version of Energia (energia-0101E0012) does not define TEMPSENSOR for the TM4C1294 MCU. The suggested solution discussed at https://github.com/energia/Energia/pull/364# does not work for me. The function call to analogRead(TEMPSENSOR) is hanging the program. I have found a quick and simply solution for the problem, so anyone can use it until a better solution will be found.
     
    1. Add this line to file pins_energia.h in folder Energia/hardware/lm4f/variants/launchpad_129
       #define TEMPSENSOR PB_1 //Will be translated to ADC_CTL_TS 2. In the same file modify the following line (in the definition of array digital_pin_to_analog_in[], near to end of file):
    NOT_ON_ADC, // 95 - PB_1 unrouted simply replace it by
    ADC_CTL_TS, // 95 - PB_1 unrouted These modifications define the TEMPSENSOR symbol and will select the internal temperature sensor when readAnalog(TEMPSENSOR) is called.
     
    Here is a simple example sketch:
    uint32_t val; float temp;  void setup() {   Serial.begin(9600); } void loop() {   delay(1000);   val = analogRead(TEMPSENSOR);   Serial.print("adc:");         //raw ADC data   Serial.print(val);   temp = 147.5 - 75*3.3*val/4096;    //temperature in Celsius   Serial.print("  temp:");         Serial.println(temp,1); } Good luck!
     
    Istvan Cserny
  11. Like
    abecedarian reacted to petertux in quadrophonic 3 channel mixer with front to rear pan   
    Update #5 - panels!
     
    @@bluehash thanks for the pointer to front panel express. they also have a partner in Germany so I did not have to pay extra taxes and expensive shipping for the same service.
     
    last peek inside
     

     
    and the finished product
     

     

     
    everything is open source and available at https://github.com/rodan/ampy
    more pictures available here
     
    I will probably end up documenting the mixer board and eventually sell populated/tested copies it if anyone is interested.
  12. Like
    abecedarian reacted to rockets4kids in Making commercial electronics, self-financed - steps?   
    The first thing you are going to need to qualify is whether you are intenting to sell a component or a finished product.  If you are selling a component you (generally) do not need to worry about FCC approval.  If you are selling a product, you do.  This makes a world of difference in your overall costs.
  13. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    If it's working with UART / Serial, then I'm not sure what to say, but I don't see any "Serial" code in what you've posted so far. Pin 3 is connected to the emulation side of J3; pin 4 is connected to the MSP430 side of J3.
  14. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    Just noticed something.... Your first question was regarding using serial.
     
    You should switch the jumpers on header to take advantage of hardware serial on the 2553.
     
    This does create a conflict with how you are wiring things:

    const int C0 = 5; // 2 a 4 pinos referentes as colunas do teclado em ordem de signific
  15. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    What does your code look like now?
  16. Like
    abecedarian reacted to rusefi in STM32 based engine controller   
    Still playing with all this. We've added some C++ to make the code more readable & made our own stm32 board since December
     

     
    http://rusefi.com/forum/viewtopic.php?f=4&t=381
  17. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    Yes, that's what I meant. A 4.7k resistor from pin 1 to ground, but only after moving pin 1 off of VCC and connecting it to a GPIO pin on the MSP430. 

    msp pin ----+---- L293D pin 1 | > < - 4.7k > | gnd --------+
  18. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    I think one thing you're doing wrong is driving the lock and unlock functions wrong. You should be using the 1,2EN pin (pin 1) on the L293D to enable the motors, and pins 2, 7 to control motor direction. If 2 is high and 7 is low, motor goes one way; if 2 is low and 7 is high motor goes opposite.
    This does mean you'd have to take VCC off pin 1 and run that to another assigned pin on the MSP430.
     
    I don't have an L293D to test, but maybe something like below. Think of it like setting motor direction, then enabling the motors to spin.

    //if enable is low motor will not spin; lock and unlock signals do not matter const lockEnable = X; // X is launchpad pin to control drive enable // to unlock door: digitalWrite(lockEnable, LOW); // disable the drive circuit - guarantees motors won't run digitalWrite(unlock, LOW ); // set motor to unlock direction digitalWrite(lock, HIGH ); // lock must be opposite of unlock or motor won't spin digitalWrite(lockEnable, HIGH); // enable the drive circuit delay(500); // wait 1/2 second digitalWrite(lockEnable, LOW); // disable the drive circuit digitalWrite(open, HIGH); // turn on OPEN LED digitalWrite(close, LOW); // turn off CLOSE LED ... // to lock door: digitalWrite(lockEnable, LOW); // disable the drive circuit - guarantees motors won't run digitalWrite(unlock, HIGH ); // set motor to lock direction digitalWrite(lock, LOW ); // lock must be opposite of unlock or motor won't spin digitalWrite(lockEnable, HIGH); // enable the drive circuit delay(500); // wait 1/2 second digitalWrite(lockEnable, LOW); // disable the drive circuit digitalWrite(open, LOW); // turn off OPEN LED digitalWrite(close, HIGH); // turn on CLOSE LED
  19. Like
    abecedarian got a reaction from Mateus in Some times dc motor doens't stop working in my project   
    Another thing might be to put weak pull-down resistor from L293D pin 1 to ground to guarantee the motor is disabled when the unit powers up since the MSP pins' states are undefined on power up, usually.
  20. Like
    abecedarian got a reaction from GeekDoc in I'm from Arduino and I'm new to Launchpad   
    @@hary - Different pins can have different functions.
    See here: http://energia.nu/Guide_MSP430LaunchPad.html
    Nice, visual guide to what pins can do what function.
  21. Like
    abecedarian got a reaction from energia in ADC problems or code problems? Please help !   
    @@Jorjel I'm glad you 'liked' my post, but did this solve your problem?
  22. Like
    abecedarian got a reaction from xujianningkp in TM4C1294XL Connected Launchpad Ethernet Port Pins   
    @@xujianningkp
     
    TM4C1294NCPDT datasheet says it only has 4 SSI interfaces.
     
    http://www.ti.com/lit/ds/symlink/tm4c1294ncpdt.pdf (datasheet) lists all the pins and functions, and indeed it lists SSI2, SSI3, SSI0, SSI1 as does the User Guide for the LaunchPad, http://www.ti.com/lit/ug/spmu365a/spmu365a.pdf.
     
    Leads me to belive SPI5 is a typo.
  23. Like
    abecedarian got a reaction from jetaudio in Serial Monitor/Serial.print() issue   
    @@jetaudio - More accurately, the laptop does not properly support backwards compatibility, which USB3.0 should handle.  
    Maybe there's a setting in the BIOS to allow something?
  24. Like
    abecedarian reacted to dubnet in Testing the Noritake 3x4 glass touchpanel   
    Decided to try out the glass touchpanel that Noritake so graciously sent to me a while back (see http://forum.43oh.com/topic/5167-noritake-capacitive-touch-keypad-sample-offer/ ).  Used Energia to talk to the panel via I2C and was pretty pleased with the overall performance of the panel.  I used the numeric underlay that was one of the included paper templates. The key mapping codes weren't intuitive so hopefully this can save some time if you decide to put one of these panels into play.
     
    Test setup (please forgive the phone camera picture quality):
     

    #include <Wire.h> void setup() { Wire.begin(); Serial.begin(9600); // start serial communication at 9600bps pinMode(P2_3, INPUT); } int reg3 = 0; // setup variable for Noritake key press status register 3 int reg4 = 0; // setup variable for Noritake key press status register 4 void loop() { if (digitalRead(P2_3) == LOW) // check if CHANGE line from touch controller has sensed a key press { Wire.beginTransmission(28); // Initiate I2C to touch controller PC at address 0x28 Wire.write(byte(0x03)); // sets register pointer to read from register 3 (0x03) Wire.endTransmission(); // Wire.requestFrom(28, 2); // request 2 bytes from slave device at 0x28 if(2 <= Wire.available()) // if two bytes were received { reg3 = Wire.read(); // receive byte from register 3 reg4 = Wire.read(); // receive byte from register 4 if (reg3 == 8) // Test values to see which key was pressed and print translated result to the screen { Serial.println("Keypress = 7"); } else if (reg3 == 4) { Serial.println("Keypress = 8"); } else if (reg3 == 2) { Serial.println("Keypress = 9"); } else if (reg3 == 32) { Serial.println("Keypress = 4"); } else if (reg3 == 16) { Serial.println("Keypress = 5"); } else if (reg3 == 1) { Serial.println("Keypress = 6"); } else if (reg3 == 64) { Serial.println("Keypress = 1"); } else if (reg3 == 128) { Serial.println("Keypress = 2"); } else if (reg4 == 8) { Serial.println("Keypress = 3"); } else if (reg4 == 1) { Serial.println("Keypress = *"); } else if (reg4 == 2) { Serial.println("Keypress = 0"); } else if (reg4 == 4) { Serial.println("Keypress = #"); } } delay(200); // delay to prevent multiple print outs of the data to the screen } } Here is the terminal output when a familar three key sequence is entered.
     
    Keypress = 4
    Keypress = 3
    Keypress = 0
  25. Like
    abecedarian got a reaction from Jorjel in ADC problems or code problems? Please help !   
    Did you disconnect the jumper for the LED2?
×
×
  • Create New...