Jump to content
43oh

CorB

Members
  • Content Count

    288
  • Joined

  • Last visited

  • Days Won

    5

Reputation Activity

  1. Like
    CorB got a reaction from actionjais in Speed measuring   
    There are several ways to "time" signals, you could use the Watchdog timer at its shortest interval of 0.064ms 
    or you can use timer A. It will take some time and some reading but you will see that the MSP is capable of this kind of timing-work.
     
     
    regards
    CorB
     
    A few links:
     
    "http://justinstech.org/2010/08/msp430-basic-codingprograming-part-2-wdt/ "
    "http://www.element14.com/community/groups/msp430-ultra-low-power-microcontrollers/blog/2011/06/08/using-wdt-as-interval-timer"
    "http://mspsci.blogspot.nl/2010/08/tutorial-09-timers.html"
     
    .
     
     
  2. Like
    CorB reacted to larsie in Garage door opener   
    I have the lockup problem yes. Both on cc1101 and cc2500 actually. More often in low signal strength cases. I have a feeling I have to bring it to idle a bit more often. Your problem sounds like it could be the fifo overflowing. I have had issues with not emptying the fifo fast enough. Might be your (thantran) problem. Then you need to flush the fifo.
     
    But I am using the same library on on both cc1101 and cc2500 chips. Same gdo signals, but havent explored all of them so thanks for the headsup. Works fine. Have tested cc1101 up to 500 metres, which is a bit far for a garage opener I think I use the sync gdo signal if I remember correctly. CC1101 is really a brilliant chip, but CC2500 is a nice workhorse also. Presumably very different inside though, so surprising they re able to make them so similar on the interface.
     
    I also revisited the TI library when I started using 2500, since I had taken out too much code for my github rf boosterpack github project.
  3. Like
    CorB reacted to RobG in 2.2" Color LCD Booster Pack with Touch   
    OK, good news, touch controller is working.
    I don't have the fully functional code yet, but I do get some readings from it.
    I will have 8 of them available on Monday.
    They will come with LCD only, no touch controller, you will have to get and solder one yourself.
    The controller part number is TSC2046EIPW.
    If you choose not to use the controller (there are pros and cons,) you can cut JP6, short JP5, JP11-14, and use MCU's ADC for touch screen.
     
     

  4. Like
    CorB reacted to spirilis in [S]Nordic nRF24L01+ RF BoosterPack   
    Now available in the 43oh Store.
     
    Anyone interested in such a beast? The modules are available dirty cheap on ebay, less than $3/module for the cheap PCB antenna trace versions...

    They run in the 2.4GHz ISM band at 250Kbps, 1Mbps or 2Mbps with configurable transmit power (-18, -12, -6, 0dBm) and 125 available channels, and the chip has on-board protocol support so that the MCU utilizing it can think in terms of <=32-byte packets with 3, 4 or 5-byte addresses, and it handles all the OTA stuff including CRC checking and auto-acknowledgement. The chip communicates over SPI, maximum 10MHz. I've written a library for the MSP430 value line here: https://github.com/spirilis/msprf24
    Wiki documentation for the library here: https://github.com/s...is/msprf24/wiki


    Anyway for my current project (grill/smoker thermocouple monitor) I've designed a BoosterPack that is meant for a base station; it includes the 8-pin rectangular pinout used by most of the cheap modules on ebay (ITead Studios carries modules with this same pinout -- http://imall.iteadst...m120606002.html -- although FYI the current/RF power specs listed are wrong on that page) and an FTDI cable pinout for using a 3.3V-level FTDI cable for faster serial I/O. If there is interest I might design one that is more general-purpose and look to get it produced.

    The pinout requires the use of 3 GPIO lines in addition to the SPI lines, one interruptable (the IRQ line) so it can be used with LPM modes.

    The boosterpack I created for this project looks like this (for MSP430G2553 fyi):
    (top)

    (bottom)

    This particular board includes support for an LM2936 LDO (3.3V 50mA) so the base station can be supported by a single USB connection (the FTDI cable, which provides 5V Vcc...) although while this supports most nRF24 boards with PCB trace or WiFi-style RP-SMA antennas, it wouldn't support the amplified board ITead carries since that can draw upwards of 115mA during TX. So I'd redesign that if interest for the FTDI pinout feature is high. Then again there's a thread around here about tricking the LP's TUSB chip into running at higher speeds so FTDI support might not be necessary.

    Another idea that might make more sense is a boosterpack that places the nRF24 pinout further out to the right or bottom of the LP headers, so it's stackable and lets you add nRF24L01+ support to your project while putting an LCD or touchscreen on top. PCB cost goes up with surface area though.
  5. Like
    CorB got a reaction from veryalive in hi from the netherlands   
    Welkom !
     
    groet
     
    Cor B
  6. Like
    CorB reacted to RobG in (Universal) Color LCD graphics library   
    NOTE: Those files are not current as of May 5th 2013. See the first post for the latest.

    PCF8833 (Nokia 6100)
    SPFD54124B (Nokia 6085 and 6101)
    ST7735R (JD-T1800, 1.8" LCD)
    HX8340B (BTL221722, 2.2" without touch)
    ILI9225B (2.2" with touch)


    colorLCD.hfont_5x7.hfont_8x12.hmain.cmemory.cmemory.htypedefs.h
    Updated 11/12
    colorLCD.cfont_11x16.h
  7. Like
    CorB reacted to SugarAddict in Places we buy things...   
    I'll update this post with responses... we had one of these at 43oh, figured I'd start another here as we probably have some new folks
     
    If you don't know of TI's estore... I want to know why/how you got to this thread,
     
    http://www.mouser.com/
    http://www.arrow.com/
    http://www.dipmicro.com/store/
    http://www.mdfly.com/
    http://www.dx.com/
    http://iteadstudio.com/store/
    http://www.goldmine-elec.com/
    http://www.sureelectronics.net/
    http://www.micro4you...store/index.php
    http://www.futurlec.com/
    http://www.mpja.com/
    http://www.sparkfun.com/
    http://www.digikey.com/
    http://www.jameco.com/
    http://www.newark.com/
    http://www.store.43oh.com/
    http://www.taydaelectronics.com/
    http://www.parallax.com/
    http://www.elexp.com/
    http://www.frys.com/
    http://www.radioshac.../home/index.jsp
    http://www.mdfly.com/
    http://www.seeedstudio.com/
    http://www.bgmicro.com
    http://www.allelectronics.com
    http://www.microcenter.com
     
    UK:
    http://www.coolcomponents.co.uk
    http://uk.farnell.com/
    http://www.hobbytronics.co.uk
    http://uk.rs-online.com/web/
    http://www.skpang.co.uk
    http://www.maplin.co.uk
  8. Like
    CorB reacted to RobG in 2.2" Color LCD Booster Pack with Touch   
    Another test, this time some simple on/off buttons.
    Once I polish this a little, I will add it to GitHub so that users can contribute.
     

  9. Like
    CorB got a reaction from larsie in MSP430 meets LaCrosse Temperature/Humidity sensor TX3TH   
    Since my last mail I have updated the code, the code below is more sensitivy and also stable in receiving the OOK signals. Next to this I also have developed a more general OOK-sniffer that can display incoming OOK signals at 434 MHZ (or another frequecny) by reporting the signal ON/OFF times in microseconds. If anybody is interested I will publish that code.
     
    void SetupOOKreader()
    {
    TI_CC_SPIStrobe(TI_CCxxx0_SIDLE); // set IDLE
     
    //set at 433,92 Mhz
    TI_CC_SPIWriteReg(TI_CCxxx0_FREQ2, 0x10); // Freq control word, high byte
    TI_CC_SPIWriteReg(TI_CCxxx0_FREQ1, 0x13); //Freq control word, mid byte.
    TI_CC_SPIWriteReg(TI_CCxxx0_FREQ0, 0xE9); //Freq control word, low byte.
     
    TI_CC_SPIWriteReg(TI_CCxxx0_MDMCFG4, 0x4D); // RX bandwidth and datarate MSB
     
    TI_CC_SPIWriteReg(TI_CCxxx0_AGCCTRL2,0x80); // receiver gain
    TI_CC_SPIWriteReg(TI_CCxxx0_CHANNR, 0x00); //use no channel
     
    TI_CC_SPIWriteReg(TI_CCxxx0_PKTCTRL0, 0x32); //asynchronous mode
     
    TI_CC_SPIWriteReg(TI_CCxxx0_IOCFG0, 0x0E); //GDO0Output Pin Configuration asynchronous output
    __delay_cycles(100000);
     
    TI_CC_SPIStrobe(TI_CCxxx0_SRX); // directly start the receivermode
     
    }
  10. Like
    CorB got a reaction from larsie in MSP430 meets LaCrosse Temperature/Humidity sensor TX3TH   
    Hi,
     
    After another week of further experimentation I finally got the system running the way I want it. Its a bit of a multi-device design but it works fine.
     
    Current setup:
    - 3 TX3TH sensors (1 outside 2 inside) that transmit their data every minute at 433.92Mhz in On/Off Keying (OOK).
    - 1 AIR Boosterpack programmed as a relay to collect OOK data at 433 Mhz and transmit datapacks using SimpliciTI at 868 Mhz
    - 1 AIR Boosterpack programmed as 868Mhz SimpliciTI receiver connected via UART-serial to an Arduino
    - 1 Arduino with ethernetboard connected to THINGSPEAK and PUSHINGBOX, data is pushed out every minute
     
    Here's a plot of the temperature (left) and humidity(right) data I gathered the last 24hrs or so. My Lacrosse mainstation now has become more or less redundant and the tedious job of weekly downloading data from the mainstation via RS232 is also over.
     

     
     
    regards
    Cor
  11. Like
    CorB reacted to TI_Trey in Launchpaddemo on GLCD (with scrolling graph)   
    Ok, first let me explain why ya'll were having trouble getting this running on the hardware SPI.
    If you simply setup the code for hardware SPI and call:

    PinLow(CS_PIN); // pull CS LOW SPI_write(LCDSpi, spidata); PinHigh(CS_PIN);
    You'll end up seeing something like this on the bus:

    The third trace is of course CS and you'll notice it goes high during the bitstream...no good.
    For testing purposes I simply added a short delay after SPI_write and before I pulled CS high and sure enough the display started working.

    I actually ended up cleaning up Lar's code quite a bit to make it more software friendly. All the functions are now in a c file and the prototypes are extern'ed in an associated header file. I also used an interrupt to tell me when to pull CS high. Check out glcd_hwSPI.c and .h
     
    If you copy the folder in the zip file to C:\ti\controlSUITE\development_kits\C2000_LaunchPad\f2802x_examples the example should import and build without issue.
    Example_F2802xLCD_SPI.zip


  12. Like
    CorB reacted to TI_Trey in Launchpaddemo on GLCD (with scrolling graph)   
    CorB and Lars,
     
    As promised I resolved the issue with the hardware SPI. Turns out the bitstream was still being shifted out when CS went high. I added a short delay before PinHigh(CS_PIN) and it started working. I'm going to clean up the code and perhaps add interrupts so that I don't have to use a delay. Look for an update and explanation of the issue and the fixes soon!
  13. Like
    CorB reacted to RobG in 2.2" Color LCD Booster Pack with Touch   
    Finally, the boards are here. Will have to test the touch functionality now.
     

  14. Like
    CorB reacted to xpg in ENC28J60 Booster Pack   
    Hi,

    After a couple of hours of work porting the enc26j80 driver from my own mini ipv6 stack to uip, I have my enc28j60 booster pack working with the Stellaris Launchpad.



    The current example code is at https://github.com/xpgdk/stellaris-enc28j60-booster and does nothing more than acquiring an IPv4 address and serve a static web-page on port 80. The code is tested using GCC only.




    (I apologize for the quality of the video)

    I will be improving the driver and the example code in the coming weeks. 
    Schematics for revision 2:

     
    Board:

     
     
    Updated April 9th 2013: Added schematics and board-design of rev 2 board.
  15. Like
    CorB reacted to The_YongGrand in Very Basic HD44780 driver for Stellaris LaunchPad   
    Here's a very basic HD44780 driver for Stellaris Launchpad.
     
    Supports up to 20x4 LCD and a full PORTB register is used. Due to the nature of the GPIOPinWrite function which uses masking and whatnots, extra code on the driver will be written in the future to accomodate such functions.
     
    Uses two files: hd44780_lp.c and hd44780_lp.h
     
    An example is in the attachment. It's called "lab2" because I fooled around with the Stellaris Launchpad Workbook earlier.
     
    Note: Please refer to online tutorials on the HD44780 connections.
     
    Comments are greatly appreciated!
     

    lab2_revised.zip
  16. Like
    CorB got a reaction from dacoffey in MSP430 meets LaCrosse Temperature/Humidity sensor TX3TH   
    Hi,
     
    Excuses for the long post !!
     
    After I found out that I could detect signals in the 433Mhz band using an AIR Boosterpack (See viewtopic.php?f=9&t=2944 AIR Boosterpack RF spectrum display) I wanted to display the data I was receiving on the 433 Mhz band.
    Ive got a Lacrosse temperature/humidity logger WS8610 that can read up to 3 external sensors and log the data. These sensors broadcast their data every minute or so.
     
    Since I have a logger and I have a display you might ask why do you want to read the data ? My motivation for this is simple, the datalogger can only capture data for about 1.5 weeks and then the oldest readings are overwritten and I need to connect the datalogger to an old PC (that still has a USB-DB9 connector) to be able to store the data. If I can read the data directly from the sensors I can hook them up in a system I allready have running with several other sensors (gas, electricityusage, inside temperature) and store the data on the internet. For those that are interested I am using Thingspeak to store my data.
     
    So last week I started to look at a way to decode the signals I saw coming in using my spectrum display. Luckily other people had allready done a lot of work on the protocol used by the sensors. The sensordata is send using On/Off keying (OOK).
    See http://ftp.f6fbb.org/domo/sensors/tx_signals.php and http:/ftp.f6fbb.org/domo/sensors/tx3_th.php
     
    After a few days of trial-and-error approach (thanks go to larsie for the feedback and ideas !) I actually was getting signals that could be the sensordata. To cut a long story short, using asynchronous CarrierSense detection on the AIR BOOSTERPACK and timing the length of the pulse coming in I can read the incoming data from several sensors. The software is definitely in its alpha stages. I can read one sensor properly but reading multiple sensors does give problems, if I set the RF registers to read the nearby sensor (3-4 meters away) the far away sensor (>10m) doesnt get picked up. When I set to register to read the far away, the nearby gets picked up but the data isnt as it should be anymore.
     
    Here's an image to show that I get results that are the same as my LaCrosse display shows (from left to right : MSP430 sandwich, Lacrosse display and a not active TX3TX sensor).
     

     
    The code below is based on the same GLCD and TI libraries as I used for my spectrum display project.
     
    regards
    CorB
     
     

    /* * This file is licensed under BSD. The simplicity code is originally copyright Texas Instruments, * but has been adapted by Lars Kristian Roland/Cor Berrevoets * the glcd code is by Lars Kristian Roland/Cor Berrevoets * the tx3th sensor information can be found at http://ftp.f6fbb.org/domo/sensors/tx3_th.php * the sensor first sends temperature information consisting of 11 blocks of 4 bits repeated once * the sensor secondly sends humidity information consisting of 11 blocks of 4 bits repeated once * block 0 is 0000 * block 1 is 1010 (preamble) * block 2 is sensortype 0=temperature E=humidity * block 3 is 4 bits sensorID * block 4 is 3 bits sensorID and another bit (unknown purpose) * block 5/6/7 is temperature in tenths degrees BCD +50 degrees * block 5/6/7 is humidity in tenths percent BCD (always ending at 0) * block 8 = block 6 * block9 = block 7 * block10 = CRC * */ //******************************************************************* // // G2553 // // ----------------- // | | // |VCC GND | // S1/GDO2 |P1.0 P2.6|-RF-GDO0 // S2 |P1.1 P2.7|-RF-CS // SW1 |P1.2 | // LED |P1.3 | // glcd-cs |P1.4 P1.7|<-------| glcd/RF-MISO //glcd/RF-CLK |P1.5 P1.6|------->| glcd/RF-SOMI // S3 |P2.0 P2.5| // S4 |P2.1 P2.4| // |P2.2 P2.3| // | | // ----------------- //******************************************************************* #include "ti/include.h" #include "../library/glcd_charset.c" #include "../library/glcd.c" unsigned long clockcnt=0,lastclock=0; unsigned long lastpulsecnt, pulsecnt=0,faultcount=0, pulselength=0; unsigned char bit; // bitcounter 0..3 unsigned char bitdata[4]={8,4,2,1}; // to create a nibble readout with MSB first coming in char pulseindx; // nibblecounter unsigned char pulsetrain[50],oldpulse[50]; // datapackage storage unsigned char line=4; // display of temperature datapackage int rssi; #define signal BIT2 void setup433MhzOOKreader() { TI_CC_SPIStrobe(TI_CCxxx0_SIDLE); // set IDLE TI_CC_SPIWriteReg(TI_CCxxx0_FREQ2, 0x10); // Freq control word, high byte TI_CC_SPIWriteReg(TI_CCxxx0_FREQ1, 0x00); //Freq control word, mid byte. TI_CC_SPIWriteReg(TI_CCxxx0_FREQ0, 0x00); //Freq control word, low byte. TI_CC_SPIWriteReg(TI_CCxxx0_MDMCFG4, 0x06); // RX bandwidth and datarate MSB TI_CC_SPIWriteReg(TI_CCxxx0_MDMCFG3, 0x37); // datarate LSB TI_CC_SPIWriteReg(TI_CCxxx0_MDMCFG2, 0x00); // no preamble/sync TI_CC_SPIWriteReg(TI_CCxxx0_MDMCFG1, 0x00); // CHANNEL SPACING and channelspacing MSB TI_CC_SPIWriteReg(TI_CCxxx0_MDMCFG0, 0xe5); // x2E5=200Khz x1E5=100Khz x0E5=50Khz x000=25Khz, CHANNEL SPACING LSB TI_CC_SPIWriteReg(TI_CCxxx0_FOCCFG, 0x00); // no IF compensation for OOK TI_CC_SPIWriteReg(TI_CCxxx0_AGCCTRL2,0xc3); // receiver gain 0xAB A B TI_CC_SPIWriteReg(TI_CCxxx0_PKTCTRL0, 0x32); //asynchronous mode TI_CC_SPIWriteReg(TI_CCxxx0_IOCFG0, 0x0E); //GDO0Output Pin Configuration asynchronous output TI_CC_SPIWriteReg(TI_CCxxx0_CHANNR, 48); // change radio to channel 48 in 432Mhz band (50khz spacing) TI_CC_SPIStrobe(TI_CCxxx0_SRX); // goto receivermode } void main (void) { WDTCTL = WDT_MDLY_0_064; // WDT ~0.064ms interval timer IE1 |= WDTIE; // Enable WDT interrupt P1DIR |=signal; TI_CC_GDO0_PxIES &= ~TI_CC_GDO0_PIN; // Int on falling edge (end of pkt) TI_CC_GDO0_PxIFG &= ~TI_CC_GDO0_PIN; // Clear flag for GDO0 TI_CC_GDO0_PxIE |= TI_CC_GDO0_PIN; // Enable interrupt on end of packet RF_init(); // SETUP ANAREN AIR RF __delay_cycles(50000); SPISetup(); // Initialize SPI Display __delay_cycles(100000); clear(); __delay_cycles(100000); //reset the pulsetrain indices and storage arrays for (pulseindx=0; pulseindx<49; pulseindx++) { pulsetrain[pulseindx]=0; oldpulse[pulseindx]=0; } pulsecnt=0; pulseindx=0; bit=0; lastpulsecnt=0; writeInt(0,2,faultcount,3); // display faults writeInt(48,2,pulsecnt,3); // display how many packages have been read setup433MhzOOKreader(); __enable_interrupt(); // enable all interrupts while (1) // do for ever { if (pulsecnt>lastpulsecnt) // display data only of we have received a package { setcharmode(1); // switch to large characters if ((oldpulse[1]==0x0a) && (oldpulse[12]==0x0a)) { unsigned int temperature; unsigned int humidity; temperature=(oldpulse[5]-5)*100+oldpulse[6]*10+oldpulse[7]; writeInt(0,0,temperature,3); humidity=oldpulse[27]*10+oldpulse[28]; writeInt(48,0,humidity,3); lastpulsecnt=pulsecnt; } writeInt(0,2,faultcount,3); // display faults writeInt(48,2,pulsecnt,3); // display how many packages have been read setcharmode(0); // switch to small characters unsigned char temp; char i,x; x=0; // show the 11 nibbles of the temperature part of the package for (i=0; i<11; i++) { temp = oldpulse[i]; temp += (temp > 9) ? 'A' - 10 : '0'; writeChar(x,line,temp); x=x+6; } writeInt(x+6,line,rssi,4); } } } #pragma vector = WDT_VECTOR // - Watchdog timer interrupt vector __interrupt void wdt_isr(void) // This interrupt will occur once per second { // clockcnt++; } #pragma vector=PORT2_VECTOR __interrupt void Port_2(void) { // REALLY cheap debounce. // We can get away with this because we're edge triggering but reading the level. if(TI_CC_GDO0_PxIFG & TI_CC_GDO0_PIN) { pulselength=clockcnt-lastclock; lastclock=clockcnt; if (pulselength<30) {pulsetrain[pulseindx]|=bitdata[bit];} bit++; if (bit==4) {bit=0; pulseindx++;} if (pulseindx>43) // we got all 44 bits in { rssi=TI_CC_SPIReadStatus(TI_CCxxx0_RSSI); __delay_cycles(100); if(rssi < 128) // convert RSSI readout to dB { rssi = -((rssi/2) - 74); } else{ rssi = -(((rssi - 256)/2) - 74); } char j; for (j=0; j<45; j++) {oldpulse[j]=pulsetrain[j]; pulsetrain[j]=0; } //reset indices pulseindx=0; bit=0; //increment the line to display the datapackage line++; if (line>7) {line=4;} if (oldpulse[1]==0x0a) {pulsecnt++;} else {faultcount++; pulsecnt++;} // add a long delay after reading the 44th nibble, corrects possible mistakes also __delay_cycles(10000000); } TI_CC_GDO0_PxIFG &= ~TI_CC_GDO0_PIN; // After pkt RX, this flag is set. } }
  17. Like
    CorB got a reaction from dacoffey in AIR Boosterpack RF spectrum display   
    Hi all,
     
    One of the things I wanted to build using the Anaren AIR boosterpack was a mini spectrum "analyzer" or spectrum display. During my holiday i found time to play around with both the AIR boosterpack and the LCD module Lars has produced.
     
    Although the AIR boosterpack was designed for 868/915 Mhz it seems the receiver inside (CC110L) is sensitive also in the 433Mhz region. The code I share with this mail allows the user (by changing a define) to switch between 3 frequencybands. Two buttons of the LCD package allow change of RX bandwidth and channelwidth.
     
    THe screenshot below shows a typical readout in the 433 Mhz band in a room where a Lacross TX3TH temperature/humidity sensor is sending data every minute using an OOK protocol (Request: if anybody knows how to receive/decode OOK using a CC110L please inform me). The display shows the low and high frequency in Mhz and shows the frequency with the highest readout (RSSI in dB) in kHz and as a blinking line in the graph.
     

     
    If you want to know more about this mini spectrum display or have other comments, feel free to share them.
     
    regards
    CorB
    spectrum.zip
    glcd.zip
  18. Like
    CorB got a reaction from bluehash in Problem compiling project0 or blinky   
    Problem solved, I reinstalled CCS 5.2 and added support for the stellaris,
  19. Like
    CorB reacted to MattTheGeek in Help! Forum Segregation   
    I wish all of the forums were integrated into one, As it's hard keeping up with the individual forums.
     
    How about having a website/fourm called [CoolWebsiteNameThatsRelatedToEmbeddedElectronics] and in that website 43Oh, Stellarisiti, and C2KCentral are subfourms in that fourm.
  20. Like
    CorB reacted to RobG in 2.2" Color LCD Booster Pack   
    This is the same BP and glib I am using with MSP430 LaunchPad. Just a few code changes were required.


    http://www.youtube.com/watch?v=lWZVqXJTCjU
  21. Like
    CorB reacted to jaeger92 in Autonomous Energy BoosterPack   
    I'll be creating in the next days a BoosterPack for Autonomous Energy. It'll feature perhaps the following:
     


    A Microchip MCP1253-33X50 for converting voltage from Solar panels/AAA batteries to a stable 3.3V output;
    One slot (V+ and GND) for Solar Panels like this one (where they may produce by average a voltage ranging from 2.5~5V).
    One slot (V+ and GND) for two AAA batteries.

     
    In fact, you'll be able to use a solar panel (purchased from wherever you want and put wherever you want) and two AAA rechargeable batteries in a way that in sunny days the solar panel will be fully working charging the batteries and powering the MSP430, and in cloudy days or in the night the batteries will be working powering the MSP430. My idea is to supply the slots for attaching the cables connected to the solar panel/batteries instead of the battery sockets and the panel itself to give more mobility.
     
    Of course, I'll be using some diodes to prevent any issues (1N5817 Schottky diodes should do the trick, perhaps?). It can output typically 100mA in the night, which should be good for any projects you may have :thumbup:
     
    But I'd like to have the help of the community with this BoosterPack. Unfortunately, tinkering is something expensive in South America as less known components (e.g. the MCP1253) must be imported and it's a rather lenghty proccess. This way, could someone help me with this BoosterPack with testing or even giving suggestions?
  22. Like
    CorB got a reaction from Nytblade in Energy, Measurements and Calculation of different RF modules   
    Hi pabigot,
     
    Its not difficult to setup a proper working network using the Anaren Air. I dont use the Anaren provided code but the TI SimpliciTI setup, that is very easy to make and setting up a network is easy. I am also using DS1820s on a few sensors, others receive data from Lacrosse at 433Mhz and relay that data at 868Mhz into my network.
     
    The setup is very flexible as it uses a structure (see below) to send datapackages. All the routines directly work with these structures so if you want to send data in a different way or different parameters its a matter of changing the structure and nothing else.
     
    The structures:
     

    typedef struct PayloadFrame { char addr; // payloads need to start with char addr as the receiver can check this ! char msg; // messagetype 0x00 - 0xFF options char msgdata0; // var1 that belongs to the message char msgdata1; // var2 that belongs to the message StatusStruct Status; // USER DESIGNED PAYLOAD SECTION unsigned int data1; //unsigned int data2; char DataUnit; } PayloadFrame; typedef volatile struct StatusStruct{ enum TxACKMessageType { //!< Flags to ACK transfer REQUEST_NO_ACK = 0, REQUEST_ACK = 1 } TxACKMessageType; enum RxACKMessageType { //!< Flags to ACK transfer RECEIVED_NO_ACK = 0, RECEIVED_ACK = 1 } RxACKMessageType; char channel; char power; char RSSI; unsigned int msgNodeId; } StatusStruct;
     
    cheers
    Cor
  23. Like
    CorB reacted to RobG in 2.2" Color LCD Booster Pack with Touch   
    Got the second display working now, the one with touch panel! I can finish my BP PCB now.
    As it turns out, on top of other issues already mentioned, the display is configured to use D/C signal and 8 bit SPI (datasheet says to pull DC pin up or down, suggesting 9 bit SPI.)
     
    BTW, the picture doesn't show how nice this display is
     

  24. Like
    CorB got a reaction from msptest6 in Launchpaddemo on GLCD (with scrolling graph)   
    Ive added some screenshots to the original post, but I am working on the code still.
     
    In the initial code the graph scrolls not very fast, this limitation was due to the fact that updating the GLCD screen very fast makes the text flicker.
    In a new revision (the screenshots are from this) the graphics can be updated for a part of the screen only. So you can setup the GLCD with for instance 2 lines (from a total of 9 in this particular GLCD) that will be used for static information and all other lines for graphics. Only the lines that are ment to display graphics will scroll and react to a write into the graphicsmemory (on the MCU).
  25. Like
    CorB reacted to RobG in 2.2" Color LCD Booster Pack with Touch   
    Back to the topic, the first LCD is working with just a slight modification to the library.
     

×
×
  • Create New...