Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 11/18/2018 in all areas

  1. 3 points
    petertux

    USB to gameport project

    If you appreciate late 90s vintage PCs you might be interested in this one. I decided to build a Pentium II machine on which I can play my favourite games from those times. Magic Carpet (Bullfrog Productions) is one of them, but it needs a joystick. I had good quality USB joysticks, but those games need old analog gameport-based controllers that are serviced by the sound cards of the time. This new project acts as a USB Host and provides the analog output that emulates a 4 axis + 4 button game controller. the prototype works absolutely great, it takes about 0.6ms to read data from the attached USB joystick and to send it to the sound card. data is retrieved every 10ms as per the HID polling interval, absolutely no input command is lost and there is over-current protection built in in order to protect the PC from misuse. what do you guys think? I'm open to ideas regarding this project before I commit revision 2 of the board - which might end up being a 4 layer design. prototype pictures: https://photos.app.goo.gl/fXdDBng4dvEepq8V7 repo: https://cadlab.io/projects/lemidi cheers, peter
  2. 2 points
    bluehash

    Server

    Certificate fixed. Thanks.
  3. 2 points
    My Lisp interpreter for microcontrollers, uLisp, now supports the MSP430 FR6989 LaunchPad board, with the ability to write text to the LCD display from Lisp programs: For more information see uLisp for the MSP430 FR6989 LaunchPad.
  4. 2 points
    Check the menu Files > Examples > LCD_LaunchPad.
  5. 2 points
    slipton

    MSP430 Nixie Clock

    Hi All, I just finished assembling and modifying this kit for my SO for Christmas. I put it in a vintage toaster from 1910. Works great and so cool! However, watch out for shorting anything while the clock is powered - I fried some transistors while playing around with it. In any case, I made quite a few modifications and will post them here. I added the following components to the kit: Arduino UNO I had lying around. Random photodiode I had lying around. Adafruit RTC module: https://www.adafruit.com/product/3013 Adafruit motion sensor: https://www.adafruit.com/product/189 I modified the code to use the photodiode and motion sensor to control the brightness of the display using PWM. I have attached that. It is not written with extreme discipline, but it works Let me know what you guys think, Saul main_v6.ino nixie.h
  6. 2 points
    terjeio

    PCB Laser Exposer/Printer

    A new design is now up on my Github account, cheaper laser cut acrylic case and 3D printed "laser head". Some info on Hackaday as well.
  7. 1 point
    energia

    Interrupts for TM4C123GXL

    I posted a library a while ago which could be of use. It can be found here: https://github.com/energia-libraries/RotaryEncoder
  8. 1 point
    Hi Geometrikal, Hi TL The portage works perfectly, it is only necessary to put the good chip select for the Launchpad as well as to specify the good bus SPI in the file Jaffl.cpp in the routine SPI_INIT. For the applications which I use I tested at the same time the competition between the SPI bus (0) which manages the SD card and the SPI bus (1) which manages another device. I enclose all the necessary sources to test on a Launchpad MSP430FR5994. For my work I use Visual Studio 2019 with the Visual Micro plugin. I can compile for Arduino (Arduino,ESP8266,ESP32,ST) and Energia families in an efficient way. Jaffs_MSP5994.zip
  9. 1 point
    I still do not understand why corrections have still not been made for this chip. As I needed these corrections, I had to do them myself although I am not a specialist on this subject. So I modified the necessary files to have access to all the pins of the MSP430FR5994, even those which are not cabled on the Launchpad, in order to be able to use them on my own cards. I enclose the modified files as well as the positions in the folders, to help the users facing the same problems as me. It would be desirable for the Energia team to finally address these issues and include these changes in a forthcoming release. Indeed this chip is perfect to make very good low consumption modules , and the ENERGIA concept makes it easy to develop the complementary software CORRECTED_BUGS.zip
  10. 1 point
    Rei Vilo

    Best way change I2C freq to 400kHz

    Please refer to Wire.cpp#L121-L123 I2C_Params_init(&params); params.transferMode = I2C_MODE_BLOCKING; params.bitRate = I2C_400kHz;
  11. 1 point
    Rei Vilo

    MSP low power configuration

    Please refer to Ultra-Low Power with MSP430 at https://embeddedcomputing.weebly.com/ultra-low-power-with-msp430.html Ultra-Low Power with Energia MT and Galaxia at https://embeddedcomputing.weebly.com/ultra-low-power-with-energia-mt-and-galaxia.html The MSP432P401R LaunchPad programmer features EnergyTrace to be used with Code Composer Studio. Ultra-Low Power with EnergyTrace at https://embeddedcomputing.weebly.com/ultra-low-power-with-energytrace.html
  12. 1 point
    energia

    CC1312R1 Energia

    Not yet but will be soon.
  13. 1 point
    Rei Vilo

    CC1312R1 Energia

    Not yet, stay tuned!
  14. 1 point
    StefanSch

    MSP430G2 no communication

    To solve the UART issue go to the pins_energia.h file for the selected device MSP-EXP430G2452LP and try to update / modify this lines: static const uint8_t DEBUG_UARTRXD = 4; /* Receive Data (RXD) at P1.2 */ static const uint8_t DEBUG_UARTTXD = 3; /* Transmit Data (TXD) at P1.1 */ This seems to be wrong in the current version but i have no idea why this worked before as i could not find an update where this has been changed. To solve the issue with I2C you need to select the other I2C interface with setModule(0); The default mapping of the I2C interface to the pins 8 and 9 change a while ago but with the setModule you still can select the other I2C interface if available.
  15. 1 point
    NurseBob

    MSP430G2 no communication

    You've described the problem, but supplied no information to allow remote diagnosis. Without a schematic and related code, there's really no way to help, aside from the most general suggestions regarding jumpers, pins and I2C pullup resistors, all of which you've likely read (and hopefully applied). Finally, you mention migrating an existing project; did you have that working, and if so, under what version of Energia? Re: UART - there may be no hardware UART on your chip. "If your Launchpad is version 1.4 or earlier, the chips that it shipped with have no hardware UART and thus, no hardware configuration is necessary, but you must use the SoftwareSerial library included in Energia to communicate over the serial port." You indicate you have an MSP430G2452, according to SLAU318G, there is only USI availble on that chip, the UART is on the G2553's USCI impementation.
  16. 1 point
    StefanSch

    Blink example too slow

    this issue got already fixed a while ago - unfortunately the fix did not get merged into the master branch. Just did the update there so it will go into the next release. Meanwhile you can fix this locally with patching the wiring.c file. In the function InitClock update the first lines to: void initClocks(void) { #ifdef __MSP430_HAS_BC2__ #if (defined(CAL_BC1_16MHZ) || defined(CALDCO_16MHZ_)) && F_CPU >= 16000000L BCSCTL1 = CALBC1_16MHZ; DCOCTL = CALDCO_16MHZ; #elif (defined(CAL_BC1_12MHZ) || defined(CALDCO_12MHZ_)) && (F_CPU >= 12000000L) BCSCTL1 = CALBC1_12MHZ; DCOCTL = CALDCO_12MHZ; #elif (defined(CAL_BC1_8MHZ) || defined(CALDCO_8MHZ_)) && (F_CPU >= 8000000L) BCSCTL1 = CALBC1_8MHZ; DCOCTL = CALDCO_8MHZ; #elif (defined(CAL_BC1_1MHZ) || defined(CALDCO_1MHZ_)) && (F_CPU >= 1000000L) BCSCTL1 = CALBC1_1MHZ; DCOCTL = CALDCO_1MHZ; #else #warning No Suitable Frequency found! #endif #endif
  17. 1 point
    Hi, I wrote an article (in Portuguese) about how to use the SD16 ADC of MSP43F2013, and to show one practical application I transformed the MSP430F2013 in an I2C 16-bit ADC, similar to ADS1115. In the example, I read the data using one Arduino Nano. Comparing the conversion of SD16 and ADS1115: More details about the project can be found in my Github: https://github.com/agaelema/msp430f20x3_as_i2c_16bit_adc The project is open to further improvements/optimizations and functions.
  18. 1 point
    chicken

    [POTM] dAISy - A Simple AIS Receiver

    Hi Varnak, The dAISy software does change the channel every so often. The code for switching between the channels start at line 329 in packet_handler.c https://github.com/astuder/dAISy/blob/master/packet_handler.c#L329 The receiver will switch to the other channel when the state is PH_RESET, which is the case after an error, successful message, or when there is no start of message within PH_SYNC_TIMEOUT (defined in line 27) clock ticks (one tick being 1/9600 second). Statistically, it will miss at least 50% of the message as it can only listen on one channel at a time. Regards, Adrian
  19. 1 point
    chicken

    [POTM] dAISy - A Simple AIS Receiver

    FYI: dAISy works in Direct RX mode. Unfortunately, the built-in packet handler of the radio IC does not work with AIS.
  20. 1 point
    chicken

    [POTM] dAISy - A Simple AIS Receiver

    Hi Varnak, I just pushed a configuration file for WDS 3.2.11 that I had laying around. I haven't tested it, so not sure if it works as is. https://github.com/astuder/dAISy/blob/master/WDS3211_si4362_revb1_direct_rx.xml Best Regards, Adrian
  21. 1 point
    RobG

    Graphics Library for MSP432

    As long as it's the SPI verison, it will. If it's parallel, you will need have make updates to the code.
  22. 1 point
    Rei Vilo

    Simple Radio Library for CC1310

    The CC1310 LaunchPad has a sub-1 GHz radio. On Energia, Install the EasyLink library by calling the menu Sketch > Include Library > Manage Libraries..., then select EasyLink and click Install. Select the board CC1310 LaunchPad. Call the menu File > Example > EasyLink > EasyLinkTX for the transmitter example. Call the menu File > Example > EasyLink > EasyLinkRX for the receiver example. Both examples work together. Obviously, you need two CC1310 LaunchPad boards!
  23. 1 point
    chicken

    [POTM] dAISy - A Simple AIS Receiver

    Hi Ross, The best solution depends on what you want to achieve. If you want to build a chartplotter, then OpenPlotter or a standalone setup of OpenCPN would be a viable approach. Both will require a RPI 3 as the GUI of OpenCPN ps For OpenPlotter, I recommend the 1.0 image and not their latest alpha, unless you know what you're doing. For standalone OpenCPN, this tutorial worked for me. If you only want to track ships and may report to a website, then AISHub's rPiAIS is the quickest way to get up and running. More DIY alternatives are Kplex (which OpenPlotter uses under the hood) or some form of home-brew Python script. ais-forwarder to send received AIS messages over the network simpleAIS to decode AIS messages in your Python project You will find more AIS related projects under my Github stars. Best Regards, Adrian
  24. 1 point
    It was important to be sure, as the standard uploader DSLite doesn't work on macOS 10.14 but used to work on macOS 10.13. macOS 10.14 has changed the way USB ports are enumerated and named.
  25. 1 point
    Which release of macOS? See Information to Provide When Asking for Help macOS 10.14 — Upload to MSP430FR5994 Fails #69
  26. 1 point
    INTRODUCTION This guide's intent and purpose is to allow a user with minimal Linux experience to successfully setup an absolutely free development environment to program the STM32F0 microcontroller with full debugging capability. PREREQUISITES A Linux distro, I used Linux Mint 13 (Ubuntu works nicely too) An Internet connection At least 2gb of spare hard drive space Familiarity with terminal A STM32F0 Discovery Board! PART 1 – Install Codesourcy PART 2 – Install OpenOCD PART 3 – Install Eclipse PART 4 – Setup File Directory PART 5 – Setup Eclipse PART 6 – Configure the gdb/OpenOCD Hope you enjoy! Any questions, comments, feedback, feel free to sound off below.Also a STM32F4 guide is on its way. When it gets here depends on how much spare time I have.... Edit: Thanks bluehash! Guide is now hosted on arm-hq. v1-2 Downloads stm32f0_v2.doc
  27. 1 point
    This is OK, but my MSP430G2533 7-segment working (multiplexing) digit-by-digit without resistors. Current (and brightness) is handled by PWM (WD). Device (PDIP) is mounted under the display.
  28. 1 point
    I couldn't solve the problem with Mspdebug Solved with CCS Cloud on Windows : On Debug menu I could launch 'Recovery' then 'Update ' 🙂 Launchpad is now OK... next step : test again on Unbuntu 18.10 (without modemmanager holding TTY/ACM0....) OK with last Energia running on Ubuntu 18.10 (32 bit libmsp430.so coming Energie replaced by 64 bit one,)
  29. 1 point
    jazz

    Add MSP432 support to Arduino?

    This is TI. Go back with your IDE version, and board should work just fine. http://processors.wiki.ti.com/index.php/XMS432_Support
  30. 1 point
    We have to unpack all that is going on in that get stack pointer statement. The function getstackpointer() returns a value. The (int*) transforms that into “the address of that return value” which will be 16 bits large. Then that 16 bit address is assigned to the multi stack variable. The author is asking us to modify the list of function names in the taskpnt function since (s)he doesn’t know what we will be doing. So that is up to us. So task1, task2, and so on, are functions that we write to do one specific thing. Something atomic, like SwitchOnLED(LED1) or SwitchGPIO(P1-7), etc. Does that make sense?
  31. 1 point
    radcliffkaty1

    IPC training information

    Hey, thanks for the IPC Certification stuff. I also have gone through these certifications and would like to suggest BEST Inc (https://ipctraining.com/) for getting the best training in IPC. They have experienced IPC trainers and also offer Mobile training facility as well. Also, one more training center is there near Illinois i.e EPTAC Training Center(https://www.eptac.com/) which is in good competition with BEST Inc. Out of these two, you can choose any.
  32. 1 point
    zeke

    MSP432P401R SD card interface

    Maybe I am thinking of the PetiteFS way of using an SD card but doesn't that SD card need to be first formatted on a PC and have a file created as well? Then, the MSP430 would access the SD card, open up the pre-existing file, and then write to it? I would verify the SD card on a PC first by formatting it then creating an empty text file on it. Then, get the MSP430 to see it then open it. Double check the wiring of the card. And make sure that you have a really good +5V power source for that SD card. I have read that they want a bunch of current to operate properly. And, I suspect the dev board cannot supply that much current on the +5V line. Gotta verify that too.
  33. 1 point
    jsolarski

    MSP432P401R SD card interface

    Its hard to give you an answer on this. If its say, SD card not initlized, then you really need to verify your setup and wiring. and post any modifications of the code provided.
  34. 1 point
    Rei Vilo

    MSP432P401R SD card interface

    Have you tried the SD_TM4C library?
  35. 1 point
    Hope you snag one. Enjoy! Use code CYBER https://www.arrow.com/en/products/raspberrypi3/raspberry-pi-foundation
  36. 1 point
    jsolarski

    ADC12 timer trigger

    to expand 1. Should my sample and hold time be 0.28ms? your hold time should start after .28ms, and holding the peak value between 0ms and .28ms 2. If so then should I wait for next 0.04ms + 9.68ms to collect my next ADC value as the next input pulse needs that much time to arrive? Your next sample should start on your next pulse to the LED which is 9.68ms 3. If 1 and 2 are correct, how can I set up my ADC for this? ADC setup is a case by case basis, and will be trial and error. but a good place to start is the code examples for your chip, and the user guide.... My tip to you, is look into pulse sampling.
  37. 1 point
    jsolarski

    ADC12 timer trigger

    Reading the data sheet..... you need a PWM time of 10ms. with a duty cycle of .32ms Your AD read time should be from 0ms to .28ms from the start of your pulse on the LED Setup up your ADC for single conversion, one channel count how many clock pulses and figure out how long conversion and sampling time.
  38. 1 point
    radcliffkaty1

    PCB Calculator Programs

    All these shared files have a lot of learning material. Thanks, @zeke for these helpful files. 😍
  39. 1 point
    This board is indeed obsoleted. It was replaced by the RED board many years ago. The TI-RTOS version it was based on no longer receives updates. Hence, it was time to retire this. If you still like access to this board then do the following: Open Energia's preferences (File->Preferences or on macOS Energia->Preferences) Located "Additional Boards Manager URLs" and paste the following link into that field: https://energia.nu/packages/package_msp432_black_index.json Go to the board manager and you should see the black board appear again. Good luck with your Robot project. Robert
  40. 1 point
    bluehash

    How do you like this forum platform?

    Looks like a fair bit of activity with members posting comments and blogs. How do you guys like it? Is it easier to navigate? Responsive? Let me know. Thanks!
  41. 1 point
    Rei Vilo

    [Energia Library] I

    Please find a library for the I INA219_Distribution206.zip
  42. 1 point
    Hi @@cwpotter It sounds like an interesting project. That boosterpack looks pretty neat. I don't have any experience with the 430BOOST-ADS1118 but took a quick look at this and here are some things that you should look into... The library you link to seems to have been written for the C2000 - so you would need to port it to the CC3200. You definitely don't want to download the entire thing if it is written for the C2000 - probably just the .ino, .cpp and .h files. Error messages will tell you where to proceed from there. Do they say something is missing? Then look for it in the repository. Libraries are installed in Energia the same way they are installed for Arduino with the exception of location - see for example this: https://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use/arduino-libraries?view=all Note that you can find the correct location for user libraries by opening File ==> Preferences in Energia which shows sketch locations. At this location will be a folder called libraries. Install libraries there. To be honest, I would probably use an earlier version of Energia Sometimes it is easier to start over and use existing code as a go-by. You have 3 sources apparently the C2000 sketch, the firmware for the G2553 that comes with the backpack (probably not Energia), and the code at element14 - none of it for the CC3200 although the C2000 appears to have been written for Energia. How much sense does the code in these sources make to you? If not much, then you are going to do some homework to get this going with anything other than the RPi. Provided of course the RPi code already does what you want pretty much.
  43. 1 point
    terjeio

    PCB Laser Exposer/Printer

    Improved homing cycle has led to (near) perfect registration of solder mask. Layer registration mark, lines are ~0.1mm wide. Part of TSSOP 20 footprint, mask is way past "use before" date so some problems with spots appearing. I have started to apply the Riston film on wet PCBs, dust problem nearly gone - easier to handle. Terje
  44. 1 point
    Hello everyone, There is a couple of similar projects available on the internet. Some of them base on Arduino and PIC performs very basic mount control without math intensive computation implemented in embedded controller. I decided to build my own with the following goals: ease of use by an inexperienced amateur astronomer (full automatic operation) precision and resolution of position last but not least: the price Final, or better say at the moment, design comprises of the following components: Stellaris LM4F launchpad central control unit, two ULN2003 unipolar stepper motor driver chips, two 28byj-48 stepper motors one moving in azimuth, and in elevation via gear train, communication module: Bluetooth serial module. It allows sending a coordinate set-point and provides position feedback to Stellarium, GPS module providing position and precise time reference - PPS gives 1us accuracy, Nokia 5110 display unit and joystick for standalone operation, now obsolete mouse (PS/2) modified to provide independent (incremental) position information Resolution that was reached is a single step of approx. 5". Given the size of Jupiter to range from 30" to 50", this positioning resolution makes the view comfortably stable in standard 60° FOV eyepiece at reasonably high magnification, without the need to adjust AZ/ALT continuously. During the development I made use of several opensource and projects available online, namely: AccelStepper for stepper control, TinyGPS++ for NMEA decoding, Arduino telescope controller was my inspiration and reference for Taki's matrix method for coordinates transformation, of course Energia as my IDE Upon power-up the mount is performing: homing acquisition of current location (longitude/latitude) and time via NMEA stream moves to 3 brightest (most convenient) stars in succession to perform 3 star alignment procedure - they are selected from the list of over 500 stars in built-in catalog (the brightest are used for the alignment, tough), once aligned the mount is in tracking mode: it tracks the view to counter the apparent movement of objects in the sky, waiting, either for the user to move to particular object - selected from the library of stars and Messier objects, or awaits connection via Bluetooth from a PC running Stellarium with a plugin and slews to selected object. search for the object that should be visible in the eyepiece and display important information on LCD - I compiled in 500 brightest stars from HYGXYZ and full Messier catalog. I have very little experience as amateur astronomer so far, so some of the objectives might have been not very obvious for me in the beginning. This project was also a good way to make use of my free time and gain experience in embedded system design. With kind regards, Szymon
  45. 1 point
    I'm receiving many mails about the libraries I've developed and I'm sharing. The libraries are plug-and-play as I'm using them in my projects. However, they are designed for a specific configuration. For example, a SD-card library requires a minimum of 512 bytes of RAM as this is the size of a sector. So it won't work on the MSP430G2553. With so many LaunchPads, BoosterPacks and components possible combinations, the one-fits-all approach is just impossible. It would end with lengthy and hard to read code with many pre-processing statements. For example, changing the pins names for the pins numbers improves the portability of the library across the LaunchPad range of boards. Even if the library works out of the box, they are provided as examples and require some work from the user. This is the best way for learning. The user should read and understand them, and then customise them so they can match his/her exact needs. With new hardware and software releases coming out, a library may suffer from obsolescence. It used to work with a prior version but no longer works with the new one. For example, each new release of Energia or CCS adds new features and some times modifies others in order to ensure compatibility across the whole range. Finally, feel free to improve and share back the libraries with the community This is a cross-post with Stellarisiti.
  46. 1 point
    I've spent some time recently experimenting with the Tiva timer PWM mode (not the PWM module). I have modified the wiring_analog.c such that duty cycle changes using PWMWrite() are now glitch free. Hence it is suitable for driving servos and other timing critical sources with frequent duty cycle updates. No interrupts are required. The changes are: - bypassing the timer disable/reset if it is already initialized to the PWM mode; - setting both MRSU and ILD bits in the Mode register such that both frequency and match register update are postponed to the next timer period; - the intermediate result of the duty cycle computation is increased so that large analog_res values do not cause overflow (useful for setting the duty cycle in microseconds for the servo) I tried to do a "minimally invasive" code modification to avoid compatibility issues. If the module interface change is acceptable then things can be done a bit cleaner/faster. Since I've already spend time learning the Tiva timer internals I can do further tweaks to the code if there is a community consensus on the optimal PWM interface (as a superset of Arduino). Try the code and see if you find any issues with it. If it does not cause any compatibility problems perhaps someone can help me integrate it into the next energia release. wiring_analog.c
  47. 1 point
    zeke

    IPC training information

    Just to follow up ... I found another website tonight called http://www.soldertraining.com/. It is another excellent resource for electronic assembly knowledge. I find the Standards & Manuals - Design attractive and I am considering purchasing a set for myself.
  48. 1 point
    MichelV

    OneWire Energia Library

    Unfortunately I haven't heard from Paul Stoffregen yet, so I decided to release the modified source here. I still hope he'll respond, and include the changes in his own library, but at least you guys have a chance to play with it now So, attached is the UNOFFICIAL OneWire library, that is compatible with Energia. Regards, Michel. OneWire Energia Compatible.zip
  49. 1 point
    Rei Vilo

    I2C channels in Stellaris

    Use `setModule()` as described in https://github.com/energia/Energia/blob/master/hardware/lm4f/libraries/Wire/Wire.cpp#L599 void setup() { Wire.setModule(3); Wire.begin(); ... } Similar logic applies for UART and SPI. As an alternative, declare the variable as in https://github.com/energia/Energia/blob/master/hardware/lm4f/libraries/Wire/Wire.cpp#L161 TwoWire Wire2(2);
  50. 1 point
    MattTheGeek

    PCB Calculator Programs

    And for those high current PCBs, A trace width calculator. http://circuitcalculator.com/wordpress/ ... alculator/
×
×
  • Create New...