Jump to content
43oh

RobG

Members
  • Content Count

    3,117
  • Joined

  • Last visited

  • Days Won

    249

Reputation Activity

  1. Like
    RobG got a reaction from spirilis in How to protect your free code from companies predating on it ?   
    There's no way you can stop it, you can only make it difficult. I have seen people taking my code (or parts of it) and then claiming it as theirs. Even my board designs were "borrowed." If my code is simple and not unique, I don't mind when other's are using it. If I spend many hours writing the code, reading data sheets, and researching, that's another story.
     
    Oh, and if you don't like when companies steal software, then you should stop using Android  
  2. Like
    RobG got a reaction from roadrunner84 in How to protect your free code from companies predating on it ?   
    There's no way you can stop it, you can only make it difficult. I have seen people taking my code (or parts of it) and then claiming it as theirs. Even my board designs were "borrowed." If my code is simple and not unique, I don't mind when other's are using it. If I spend many hours writing the code, reading data sheets, and researching, that's another story.
     
    Oh, and if you don't like when companies steal software, then you should stop using Android  
  3. Like
    RobG got a reaction from JonnyBoats in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  4. Like
    RobG got a reaction from tripwire in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  5. Like
    RobG got a reaction from zeke in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  6. Like
    RobG got a reaction from L.R.A in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  7. Like
    RobG got a reaction from pine in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  8. Like
    RobG got a reaction from spirilis in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  9. Like
    RobG got a reaction from bluehash in SensorTag, practical use   
    SensorTag can be used not only for development
    I had to find the exact location when fixing problem with my subfloor, so I attached small magnet under the floor and used ST to locate it.
     

  10. Like
    RobG got a reaction from chicken in [POTM] dAISy - A Simple AIS Receiver   
    Have you consider using Molex's Eurostyle 39501 and 39502 series connectors? (search on eBay for 3.5mm pluggable screw terminal block connector)
     
    What's the status of dAISy BoosterPack?
     
  11. Like
    RobG reacted to chicken in [POTM] dAISy - A Simple AIS Receiver   
    One of the most interesting aspects of selling your widget is seeing how other people use your product and what their requirements are.
     
    dAISy was originally built for ship-geeks that are entertained for hours with MarineTraffic (like myself). I also broke out a few pins for tinkerers that want to connect dAISy to other widgets (again, like myself). Turns out, the majority of my customers are boat owners (unlike myself).
     
    Boaters use dAISy to keep track of ships around them for navigation purposes, i.e. avoiding collisions. Free software called OpenCPN turns a laptop (or a RaspBerry Pi for the more geeky faction) into a chartplotter, a device that typically costs $500+. dAISy is connected via USB and provides real-time information about nearby ships. However, many boaters already have a traditional chartplotter and want to connect these with dAISy for AIS input.
     
    Most chartplotters talk NMEA 0183, a serial standard compatible with RS-422. Unfortunately, that's not the same as the UART serial output of dAISy. Which leads to NMEA output as the 2nd most requested feature for dAISy (right after native WiFi*).
     
    Electronic tinkerers can convert dAISy's TX output into a signal that works with some (most?) NMEA 0183 consumers using an NPN transistor and two resistors:

    Exact resistor values don't matter that much, as their purpose is mostly to limit current. Slightly higher values should work as well.
     
    Besides not being really NMEA/RS-422 compliant, requiring to solder obviously is a non-starter for the majority of my customers. So I decided to look for an integrated, more polished solution.
     
    First step is implementing proper RS-422 driven from dAISy's serial output (TX). Luckily there's a chip for that. Well, there are many, but I settled for the TI UA9638.

     
    As I didn't want to change dAISy's main PCB (NRE, the bane of mass production), I designed a PCB that screws to the backside of the existing enclosure. On the inside of the PCB is the RS-422 driver and a connector for a cable to the main PCB. The cable is soldered to existing breakout pads for TX, 5V and GND. Still on the inside, I also added a DC/DC converter so that dAISy optionally can be powered from the boat's 12V power system instead of USB. On the outside of the PCB is a beefy screw terminal to connect NMEA 0183 and 12V wiring.
     
    Here is a picture of the first iteration I built today. The PCB on the left shows the inside, with DC/DC converter and related passives still unpopulated.

     
    The NMEA 0183 output works as expected. I'm not sure yet about including the DC/DC converter in the final design. I'm worried that having a switching power supply inside the enclosure will introduce noise and interfere with the radio's performance.
     
    I plan to add this or a similar design to my Tindie store early next year. In the meantime, any volunteers that have a chartplotter and dAISy and want to test the add-on should contact me.
     
    *Besides being wireless, WiFi is popular because it's the only way to get real-time NMEA data to the iPad. Unfortunately, iOS devices do not support USB or Bluetooth from devices not approved by Apple. Today, dAISy either requires a Raspberry Pi (running Kplex or similar) or some tinkering with an ESP8266. Once it has native NMEA output, dAISy will also work with NMEA routers, some of which include WiFi.
  12. Like
    RobG got a reaction from tripwire in Who knows RGB LEDs?   
    The big spot lights in the video are DMX moving head lights, the rest of the lights are WS2811.
    There are several ways to control them, but you will need specialized software, like Vixen, and one or more controller, like SanDevices' e682 or Falcon F16.
     
    I have few types of floods, WS2811 and plain RGB. The total cost to build 10W is about $12-$15 per flood, 20W $20-$25.
    The 24ch DMX controller kit is $32 and it can be driven from LaunchPad, USB-DMX dongle, or other controllers like e682 (which has pixel and DMX outputs.)
    If you go with WS2811 floods, you will not need 24ch controller.
     
    To learn more, check out http://diychristmas.org/and http://doityourselfchristmas.com
  13. Like
    RobG got a reaction from tripwire in Who knows RGB LEDs?   
    Yes, I have 10W & 20W RGB flood lights with a companion 24ch DMX controller.
     

     
     

     
     
    Here's my board used for Xmas show (in Puerto Rico.)
     

     
    [will post link to video once it's made public]
  14. Like
    RobG got a reaction from yyrkoon in Who knows RGB LEDs?   
    Star PCB is needed for cooling (they should be mounted on larger heat sink, PCB is used as a conductor,) 1W and 3W/4W LEDs do get hot.
    My kits were designed to fit standard 10W and 20W enclosures, those enclosures are made out of aluminum and provide cooling.
    If you power 10W or 20W LEDs without heat sink, they will get super hot and will most likely get damaged after some time.
  15. Like
    RobG got a reaction from yyrkoon in Who knows RGB LEDs?   
    I don't have a blog (at least not one that is up to date.) 
    I post about my stuff here, diyc.com, diyc.org, and just started on hackster.io
     
    You have to first decide what LEDs you want to use.
    If you are thinking 1W-5W, I would use LM317, MOSFET, or NSI50350 as LED driver.
    My driver would be inefficient when used with LEDs <10W.
  16. Like
    RobG got a reaction from bluehash in Who knows RGB LEDs?   
    The big spot lights in the video are DMX moving head lights, the rest of the lights are WS2811.
    There are several ways to control them, but you will need specialized software, like Vixen, and one or more controller, like SanDevices' e682 or Falcon F16.
     
    I have few types of floods, WS2811 and plain RGB. The total cost to build 10W is about $12-$15 per flood, 20W $20-$25.
    The 24ch DMX controller kit is $32 and it can be driven from LaunchPad, USB-DMX dongle, or other controllers like e682 (which has pixel and DMX outputs.)
    If you go with WS2811 floods, you will not need 24ch controller.
     
    To learn more, check out http://diychristmas.org/and http://doityourselfchristmas.com
  17. Like
    RobG got a reaction from pine in Who knows RGB LEDs?   
    Yes, I have 10W & 20W RGB flood lights with a companion 24ch DMX controller.
     

     
     

     
     
    Here's my board used for Xmas show (in Puerto Rico.)
     

     
    [will post link to video once it's made public]
  18. Like
    RobG got a reaction from yyrkoon in Who knows RGB LEDs?   
    The big spot lights in the video are DMX moving head lights, the rest of the lights are WS2811.
    There are several ways to control them, but you will need specialized software, like Vixen, and one or more controller, like SanDevices' e682 or Falcon F16.
     
    I have few types of floods, WS2811 and plain RGB. The total cost to build 10W is about $12-$15 per flood, 20W $20-$25.
    The 24ch DMX controller kit is $32 and it can be driven from LaunchPad, USB-DMX dongle, or other controllers like e682 (which has pixel and DMX outputs.)
    If you go with WS2811 floods, you will not need 24ch controller.
     
    To learn more, check out http://diychristmas.org/and http://doityourselfchristmas.com
  19. Like
    RobG reacted to jazz in SBW MSP430F550x based programmer   
    Programmer is updated for OS X support. Flashing is tested on Leopard (10.5.8) and Mavericks (10.9.5).
     

     
    MacBook-Pro:~ $ flash -f test_msp430f5510.txt -p /dev/cu.usbmodem1d121 -e -w -v -mr

    File: "test_msp430f5510.txt"
    Address: 08000  Words: 16384
    Size: 32768 bytes

    Get Device
    # JTID Fuse Device Core Hard Soft LotWafer DieX DieY
    0  91   OK   3080  1104  30   10  B15B9446 2000 1700
    1  91   OK   3180  1104  12   12  013BB046 2700 2E00
    2  91   OK   3180  1104  12   12  013BB046 1200 1E00
    3  91   OK   3180  1104  12   12  013BB046 0D00 1E00
    4  91   OK   3180  1104  12   12  013BB046 2A00 2100
    5  91   OK   3180  1104  12   12  34449346 2200 3600

    Erase

    Write
    Time: 449 ms  Speed: 71.3 KB/s

    Verify
    Time: 315 ms  Speed: 101.6 KB/s

    Marginal Read
    Mode File  #0   #1   #2   #3   #4   #5
      0  9EF7 9EF7 9EF7 9EF7 9EF7 9EF7 9EF7
      1  9EF7 9EF7 9EF7 9EF7 9EF7 9EF7 9EF7
    Time: 477 ms  Speed: 67.1 KB/s

    Release Device

    Total Time: 1350 ms

    MacBook-Pro:~ $
  20. Like
    RobG reacted to Clavier in How to set up MIDI over USB   
    The endpoint numbers must match everywhere (in the descriptors and in stUsbHandle).
     
    The endpoint index must be one less than the number.
  21. Like
    RobG reacted to Josh in How to set up MIDI over USB   
    Thank you - this worked! Amazing how it was such a small thing... 
    Also, looked again and I don't see any documentation explaining what you just did. I know it's sort-of internal to the API/Descriptor Tool, but off the top of your head did I just miss looking at something?
     
    Anyways, I'm going to clean this up and write some MIDI functions. Will post an update later.

  22. Like
    RobG got a reaction from mvl in Ethernet Booster Pack v3   
    Buy: The 43oh Store or Rob's Tindie Store.
     
    The newest version of the Ethernet BoosterPack is based on the newest chip from WIZnet, W5500.
     
    P1.5 - SCLK
    P1.6 - MISO
    P1.7 - MOSI
    P2.3 - /CS
    P2.4 - /INT
    P2.5 - /RST
     

     
    Configuration jumpers are on the bottom, PMODE1-PMODE3, LINK LED, and ACT LED.
    LED jumpers control which LEDs are used, on board or socket.

     
     
    Available on Tindie.
  23. Like
    RobG got a reaction from bluehash in 2015 Black Friday/Thanksgiving Deal List   
    This is the one I have been waiting for, Ponoko 35% off the making cost of all laser cutting orders.
    http://blog.ponoko.com/2015/11/26/biggest-sale-of-the-year-has-arrived/?utm_source=Ponoko%20Newsletter&utm_campaign=1336aa417e-Black_Friday&utm_medium=email&utm_term=0_218f094e4f-1336aa417e-39212169
  24. Like
    RobG reacted to Josh in How to set up MIDI over USB   
    Thanks for the replies! I've managed to sort out the descriptors. I've got the device showing up in the device manager as a Generic USB Audio device and I've checked the descriptors with USBlyzer and they seem okay. Device manager reports the device is working properly and I'm able to successfully view the device and it's input and output ports in various MIDI programs (tested with midi-ox and ableton live). 

    Now I'm trying to send a midi message to the PC but am stuck again. In my test code I'm trying to spam a note on command (cable 0, channel 1: 0x09905840) in a while loop. Being naive, I tried using the CDC functions from the API example with no success. The example used "USBCDC_sendDataInBackground", but there is also "USBCDC_sendDataAndWaitTillDone", "USBCDC_sendData", and "CdcToHostFromBuffer". All the functions in the API are overwhelming! Looking for some direction here on where to go... Clavier, you mentioned CDC data transfer is essentially the same as MIDI - should I be able to use these functions to send my data?
     
    I'm also a little confused on how the MIDI endpoints are working... to send a note-on message to the host PC: am I sending data with the embedded MIDI IN Jack through the MIDIStreaming Bulk OUT endpoint? And does this have any relevance for how to actually send this data?
     
     
    You're right - MIDI is not supported, trying to alter the files to make it work. What's Reach Logging? (sorry, i'm a noob!)
     
    Thanks for the tips! Made some comments above.

    Thanks again for all the support on this. 

    Edit: Added some of my code...

     
    // Simplified main.c uint8_t midiTest[4] = { 0x09, //cable 0, note-on 0x90, //note-on, channel 1 0x88, //middle C 0x40 //non-sensitive velocity }; while (1) { if (USBCDC_sendDataAndWaitTillDone(midiTest, 4, 0, 1000)) { _NOP(); } else { success = 1; // by setting a watch, this does actually execute // at some point, but usually the call errors instead. } } } /*-----------------------------------------------------------------------------+ | Device Descriptor |-----------------------------------------------------------------------------*/ uint8_t const abromDeviceDescriptor[SIZEOF_DEVICE_DESCRIPTOR] = { SIZEOF_DEVICE_DESCRIPTOR, // Length of this descriptor DESC_TYPE_DEVICE, // Type code of this descriptor 0x10, 0x01, // Release of USB spec 0x00, // Device's base class code 0x00, // Device's sub class code 0x00, // Device's protocol type code EP0_PACKET_SIZE, // End point 0's packet size USB_VID&0xFF, USB_VID>>8, // Vendor ID for device, TI=0x0451 USB_PID&0xFF, USB_PID>>8, // Product ID for device VER_FW_L, VER_FW_H, // Revision level of device 1, // Index of manufacturer name string desc 2, // Index of product name string desc 0x00, // Index of serial number string desc 1 // Number of configurations supported }; /*-----------------------------------------------------------------------------+ | Configuration Descriptor | |-----------------------------------------------------------------------------*/ const struct abromConfigurationDescriptorGroup abromConfigurationDescriptorGroup= { /* Generic part */ { // CONFIGURATION DESCRIPTOR (9 bytes) SIZEOF_CONFIG_DESCRIPTOR, DESC_TYPE_CONFIG, 0x65, 0x00, USB_NUM_INTERFACES, USB_CONFIG_VALUE, 0x00, USB_SUPPORT_SELF_POWERED | USB_SUPPORT_REM_WAKE, USB_MAX_POWER }, { /* start MIDI[0] */ { //INTERFACE DESCRIPTOR (9 bytes) 0x09, 0x04, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, //Class-specific AC Interface Descriptor (9) 0x09, 0x24, 0x01, 0x00, 0x01, 0x09, 0x00, 0x01, 0x01, //MIDIStreaming Interface Descriptors //Standard MS Interface Descriptor (9) 0x09, 0x04, 0x01, 0x00, 0x02, 0x01, 0x03, 0x00, 0x00, //Class-specific MS Interface Descriptor (7) 0x07, 0x24, 0x01, 0x00, 0x01, 0x41, 0x00, //MIDI IN Jack Descriptor (6) 0x06, 0x24, 0x02, 0x01, 0x01, 0x00, //MIDI IN Jack Descriptor (6) 0x06, 0x24, 0x02, 0x02, 0x02, 0x00, //MIDI OUT Jack Descriptor (9) 0x09, 0x24, 0x03, 0x01, 0x03, 0x01, 0x02, 0x01, 0x00, //MIDI OUT Jack Descriptor (9) 0x09, 0x24, 0x03, 0x02, 0x04, 0x01, 0x01, 0x01, 0x00, // Standard Bulk OUT (9) 0x09, 0x05, 0x01, 0x02, 0x40, 0x00, 0x00, 0x00, 0x00, // Class MS Bulk OUT (5) 0x05, 0x25, 0x01, 0x01, 0x01, // Standard Bulk IN (9) 0x09, 0x05, 0x81, 0x02, 0x40, 0x00, 0x00, 0x00, 0x00, // Class MS Bulk IN (5) 0x05, 0x25, 0x01, 0x01, 0x03 }
  25. Like
    RobG reacted to chicken in CAL.430FR: MSP430 Wrist Watch   
    Just came across this very well documented project (not mine):
    http://blog.kemushicomputer.com/search/label/MSP430 ( translate)
    https://github.com/kentN/CAL430FR
     
    It's a wrist watch featuring Energia (incl. custom pin map), MSP430FR5949, Sharp Memory LCD and an accelerometer.

     
    KentN, if you're reading this: great job!
     
     


×
×
  • Create New...