Jump to content
43oh

zeke

Members
  • Content Count

    1,782
  • Joined

  • Last visited

  • Days Won

    102

Reputation Activity

  1. Like
    zeke reacted to Rickta59 in What is your Backup Process?   
    I had taken a quick glance at the feature list and had noticed that it is supposed to support that feature. I thought I read a further comment stating at some point it starts throwing away old versions to make room. I didn't dig deeper. I thought you might have.
    While it is all well and good to backup files as they change, it seems like it would make sense for some scenarios to only create a backup if the contents change.  However, I can imagine other situations where it would be important to note file timestamp changes.
    I've noticed that simplistic approaches to backup schemes lead to data loss, while giving the user a false sense of safety that really isn't there.  They only find out about an unrecoverable data loss after the fact.
    Write open source software, share it with all your friends. If you ever lose a file you just reach out for a little help from your friends.
     
  2. Like
    zeke reacted to johnsondavies in Installing MSP432 broke MSP430   
    I've figured out why I got confused: I'd been testing the same source file (uLisp Zero) on ATmega boards, under the Arduino IDE, and on MSP430 boards, under the Energia IDE.
    I have the Preferences set the same on both IDEs, in particular, Compiler warnings: All.
    On the Arduino IDE the source compiles fine with no errors or warnings.
    On Energia when you select a different board any source, even BareMinimum, compiles with about 60 warnings the first time you compile it, many of these trivial and relating to the core; for example:
    <command-line>:0:12: warning: missing whitespace after the macro name [enabled by default]
    Compiling the same source a second time seems to suppress these warnings, but my source file still gives some warnings related to "strict-aliasing rules", presumably due to differences between the C compilers on the two platforms. But it runs OK.
    I installed the Energia MSP432 boards by Energia" package from Boards Manager to try the same source on the MSP432P401R LaunchPad, and I think the reappearance of the warnings confused me, and I falsely attributed them to the newly installed package. I should have taken more care to figure out what was going on before posting on the forum, and thanks for your tolerance!
  3. Like
    zeke reacted to yyrkoon in What is your Backup Process?   
    This is where (possibly) git could come in handy, Lets say you need a specific file from a specific day for whatever reason. But anyhow, I personally, do not necessarily agree with the strategy you chose. But the point is here. we do not have to agree, because what you're getting is what *you* want. At minimum, what you think you want right now.
    Still, I urge you to look at your process, and think about it objectively. Which I think is what Rick was also trying to do. Finding an outside corner case where your backup strategy would fail you for a specific case. But let's say it does not fail, and does end up copying 1000 iterations of the same file slightly modified . . . this also may be less than desirable if that outside corner case just makes 1000 copies of the same file, with a different time stamp. or whatever.
    Really, what you need to think about is exactly what you want, and if your strategy is fulfilling what you want / need. For me, the difference between a file being saved when actual code differences have been made is a must, Meaning, I change a single line, I may want that change to stick and be persisted, For you, that may not be appropriate?
    So, for me personally. I think a local git hub may be exactly what I want, but also having a redundant copy of that local git would be necessary. For you . . . it may be different. Have I beat this horse a bit too much ?
  4. Like
    zeke got a reaction from Frida in Is it just me ?   
    I hear you. 
    I understand.
    You're right.
    I appreciate your honesty.
    Thanks for keeping it real.
  5. Like
    zeke got a reaction from yyrkoon in What is your Backup Process?   
    So I have finally got my new file realtime backup system installed and operational.
    The file server details:
    OS: Ubuntu 16.04.2 box Storage: 8TB Western Digital Red Software: NextCloud server The client details:
    Client 1 OS: Win10 Client 2 OS: mac OS Client 3 OS: Ubuntu 16.04.2 Desktop Software: NextCloud client on each Usage:
    Using NextCloud Client, sign into the Server Select local directory you want to backup Add it to the Server Stand back and it will copy everything over to the server automatically I have observed that if you create a new file in the local monitored directory then the NextCloud Client will almost immediately copy it over to the Server without your interaction. I like that.
    If desired, you can setup another client machine and get it to replicate a files from the server to itself locally. Multiple redundancy.
    So far, this system has transferred over 110GB to the server unattended.
    This configuration will backup files that I generate on a regular basis. Now, I want to setup git and subversion on this same server so that I can take care of files generated during software coding (git) or hardware design files generated by Altium (SVN).
    So far, I like NextCloud and it fits my work processes.
     
  6. Like
    zeke got a reaction from yyrkoon in Is it just me ?   
    I hear you. 
    I understand.
    You're right.
    I appreciate your honesty.
    Thanks for keeping it real.
  7. Like
    zeke got a reaction from NurseBob in What is your Backup Process?   
    So I have finally got my new file realtime backup system installed and operational.
    The file server details:
    OS: Ubuntu 16.04.2 box Storage: 8TB Western Digital Red Software: NextCloud server The client details:
    Client 1 OS: Win10 Client 2 OS: mac OS Client 3 OS: Ubuntu 16.04.2 Desktop Software: NextCloud client on each Usage:
    Using NextCloud Client, sign into the Server Select local directory you want to backup Add it to the Server Stand back and it will copy everything over to the server automatically I have observed that if you create a new file in the local monitored directory then the NextCloud Client will almost immediately copy it over to the Server without your interaction. I like that.
    If desired, you can setup another client machine and get it to replicate a files from the server to itself locally. Multiple redundancy.
    So far, this system has transferred over 110GB to the server unattended.
    This configuration will backup files that I generate on a regular basis. Now, I want to setup git and subversion on this same server so that I can take care of files generated during software coding (git) or hardware design files generated by Altium (SVN).
    So far, I like NextCloud and it fits my work processes.
     
  8. Like
    zeke got a reaction from yyrkoon in Am i doing something wrong trying to program a 28 tssop 430g2553 with a launchpad   
    This is my schematic for a typical msp430 programming setup.
    Notice the resistor and capacitor on the SBWTDIO line?
    Compare that to your schematic. What do you see?
     

  9. Like
    zeke got a reaction from yyrkoon in What is your Backup Process?   
    I am not a fan of RAID arrays either. I see them as pointless since the new drives are so big and fast compared to 15 years ago when RAID actually made a difference. It was all about transfer speeds and creating large amounts of disk space.
    If I really really really cared about backing up stuff then I would go and find an LTO tape drive and figure out how to use it.
     
    I have had both Western Digital and Seagate drives fail on me. The latest failure (this week) was a Seagate ST3000NC000 3GB. I believe the magnetic media is peeling off of the platters inside. I have tried to rescue it numerous times over this past week but nothing is helping it. I tried getting it to map out all of the bad sectors but there is just too many of them. I cannot get gparted (on linux) to make a new GPT but the disk refuses to co-operate. 
    I tried getting warranty on it but it's over a year out of warranty so I'm screwed that way. I may go and harvest the magnets out of it.
    So, I checked out the BackBlaze hard disk failure data because they beat the snot out of commercial type hard drives. I wanted to see which drive had the lowest failure rates for them. The Western Digital 8TB drives had zero failures for them. So that's what I went and purchased yesterday. 
    I am still not certain which backup/syncing process I am going to employ but I am leaning towards setting up a separate Linux box with the 8TB drive inside and install NextCloud on it and then sync against it with all of my clients.
    I am trying to go towards the least amount of effort with the greatest amount of success that works for Windows, Mac, and Linux clients.
    The Lazy Way can be The Most Efficient Way
    ;-)
  10. Like
    zeke got a reaction from yyrkoon in What is your Backup Process?   
    @NurseBob
    I had been playing around with github but not every program that I use can use github i.e.: Altium.
    I may have to setup a subversion server as well.
     
    But, I am trying to not depend on an external cloud storage option so I went to a local supplier today and purchased a WD 8TB Red NAS drive today. This will allow me to setup my own cloud storage and sync files against it.
    Since I want to set something up locally, I looked for the following options:
    Self-hosted Linux client Windows client Mac client Open source These are the possible programs I found today:
    Nextcloud Owncloud Seafile Pydio Syncthing I've installed Nextcloud but I haven't tried it out yet because I've run out of time today.
    The important thing will be the automated process of syncing/backing up all the files on the different sources.
     
  11. Like
    zeke got a reaction from NurseBob in What is your Backup Process?   
    Wow! My head is spinning trying to understand your description of your backup processes. 
    It's cool though. It looks well thought out.
    My challenge is trying to come up with a process that will work on windows, mac, and Linux simultaneously.
    I am reading about AWS S3 services. It's bewildering because of all the options available.
    It would be cool if there was an application that could run on windows, mac, and linux that would orchestrate the backup process.
  12. Like
    zeke reacted to NurseBob in What is your Backup Process?   
    Yep.  I've been though a couple of cycles of boot and data drive upgrades.
    I love being a kindred spirit!
    My primary workstation is an i7 x980 with 24GB ram and 7 hard drives (21TB total storage).  I built this machine to do viideo and photo editing.  Even at 6+ years old, it will render an hour of 1080p HD video in just under an hour. Everytime I think about upgrading, I find myself looking at Xeon processors and about 4 - 6 grand to get any significant improvement in performance.  Since I really only do the video for non-commercial stuff, it's not worth the extra cost.  So, since the system is responsive, meets my current needs, I don't get too caught-up in getting the latest and greatest - though I am wanting one of the Wacom Cintiq HD tablets. Maybe for Christmas???
    Off topic: I've found that having multiple monitors and running two instances of CCS or IAR an interesting and productive way to debug comms between a pair of '430 devices.
  13. Like
    zeke reacted to NurseBob in What is your Backup Process?   
    Bummer is certainly an understatement.
    As to my local backups I run Macrium reflect pro (now V7 home edition). I have all of my code and eagle files on a 1TB 10k  rpm hard drive. Macrium does a full backup every day around 02:00 to an internal 5TB drive, and then copies to my server's 24TB JOBD array.  Finally, the source files get posted to my AWS account for "offsite" storage.  My AWS account runs about $2.00/month. And the last upgrade for my 5 licenses for Macrium was about $150.  Money well spent.  All of the machines on my home network run daily backups. In general, I do a daily full system image for the boot drives, and then the data files are incremental folder/file backups.  I generally keep 8 full backups of my system images, and for the data files, there's a full backup done weekly, and I keep four full backups + the incrementals for a month.  FWIW, Macrium's Windows PE rescue disk saved my butt last week when the system files became corrupted due to a problem with my aging RAM.  I was able to recover the system and get completely back up and running after a day's effort (about 200 reboots while playing with BIOS HD settings...)
  14. Like
    zeke got a reaction from yyrkoon in Implementing an I2C slave device.   
    It was a bit of a mind bender for me at first but then I just read the I2C spec and it did not specify that the communication *had* to be at 100kHz. 
    The way I choose to understand things is that the I2C slave device has a communication state machine inside of it. All I have to do is put in one bit and turn the crank once. Then repeat. Over and over. Then the slave device will just do its job merrily. 
  15. Like
    zeke reacted to yyrkoon in What is your Backup Process?   
    It'll be a steep learning curve figuring it out. But once learned it's really awesome. Actually, I've known of it for years, and have used it a few times, and still do not know everything about it There's guides online though.
    As for Linux, use a systemd timer to fire off once a day or whatever, that calls a script to run your rsync's. If not using systemd, then use a cronjob once or so a day to fire off that same previously mentioned script.
  16. Like
    zeke reacted to yyrkoon in What is your Backup Process?   
    Which platform ? Windows ? Linux ? OSX ?
     
    But rsync is a pretty good way if you use the correct strategy. This can be done on Windows too using the rsync application Deltacopy. Which runs services, and will automatically sync your watched directory, to the backup location.
  17. Like
    zeke got a reaction from yyrkoon in Implementing an I2C slave device.   
    I'm talking about both, actually.
    The DS28EA00 has two GPIO lines.
    Using 1Wire protocol, I turned them on and off in a way that looked like very slow I2C to the pressure transducer that was attached to those two GPIO lines.
    Essentially, using the 1Wire protocol, I spoke I2C to a slave device.
    Does that make sense?
  18. Like
    zeke got a reaction from cubeberg in Setting up a workspace - setup suggestions?   
    For organizing cables, parts, and random stuff, I am using clear Samla Series boxes from Ikea:
    Small = 701.029.72 Medium = 401.029.78 Large = 801.029.76 Huge = 001.029.75 There are more sub-types that these.
    The benefits are:
    They stack on top of each other They are clear so you can see what's inside of them They all have matching lids to keep the dust out You can put slips of paper on the inside facing outwards to label the contents They are inexpensive I have created two wall mounted shelving units to hold these boxes. This is the BOM for one of the shelving units:
    4x Rubbermaid 70" black twin track uprights screwed into the wall studs 16x Rubbermaid 11.5" black twin track shelf brackets - 4x per shelf 1x sheet of 4'x8' sheet of 3/4" plywood cut into four 8' strips The shelves are spaced so that two small Samla boxes can stack on top of each other comfortably.
    I like the results.
     
  19. Like
    zeke reacted to Peabody in G2553 BSL using BSLDEMO2?   
    I finally figured it out.  The special signalling pattern didn't work because DTR is inverted coming out of BSLDEMO2.  So that was never going to work.  But entering BSL cold start from an application gave errors because I used the +u switch in the command line.  It looked like that was the correct thing to do since I was indeed bypassing the signalling pattern, but for reasons I don't understand, when you use that switch the program doesn't send the password on all commands, in particular the ones I was trying to test with (read and verify).  But of course the G2553 was expecting a password for these commands, so I got an error.
    I've recompiled BSLDEMO2.exe from the source code provided by TI, but with the polarity of DTR reversed.  So it should all work now.  I've asked TI to publish a new version of BSLDEMO2 with DTR polarity the right way for use with the USB-to-serial adapters, but I doubt they will do that.  This is all "deprecated", so I doubt they will be willing to spend any effort or money fixing it.
     
     
     
  20. Like
    zeke got a reaction from nickds1 in Implementing an I2C slave device.   
    This is my approach to state machines. Your mileage may vary.
    Determine all of the sub-systems that you will want to service Commands, Controls and Inputs, User Interface, and Data Setup a system tick timer that fires its interrupt on a regular consistent basis. This system doesn't have to go into LPM4. If it does then periodically wake up the system and cycle through the software service loops then go back to sleep. Setup a series of service flags that are set during the interrupt service routine and cleared after being serviced: Flag(s) for Commands, Flag(s) for Controls and Inputs, Flag(s) for User Interface, and Flag(s) for Data Setup a variable that acts like the system timer odometer. Every Odometer == (DesiredInterval%ServiceFlag_n_now) set the ServiceFlag_n Decide how often you will service the other functional blocks of your code. For example, Update the 2x20 LCD display every one second, or Update the Serial Console every 250ms, or Retrieve the Temperature from a sensor every 15 minutes. Setup an Interrupt Service Routine to catch any characters coming into the Serial Port Buffer. Stuff them into the Input Ring Buffer Set a flag that there's something to service. In the main loop, scan all of the service flags to see if any are set. Call the servicing function for each set flag. Clear the service flag at the end of that process. Configure the program to repeat continuously until Kingdom Come.
    I've left out significant details about setting up all of the peripherals and general variables so don't forget to do that stuff.
    This is just the basic gist of my state machines on a bare metal level.
  21. Like
    zeke got a reaction from yyrkoon in Implementing an I2C slave device.   
    @yyrkoon,
    This is a schematic of a typical programming setup.

    It doesn't matter what MSP430 that you use because they all can be wired up like this.
    To program this unit, I connect another G2 LaunchPad to this circuit using a four wire cable between P1 of this circuit and either J3 or J4 of the G2 LaunchPad board.
    Then program the circuit as if you were programming the G2 LaunchPad.
     
     
     
  22. Like
    zeke got a reaction from yyrkoon in Implementing an I2C slave device.   
    This is my approach to state machines. Your mileage may vary.
    Determine all of the sub-systems that you will want to service Commands, Controls and Inputs, User Interface, and Data Setup a system tick timer that fires its interrupt on a regular consistent basis. This system doesn't have to go into LPM4. If it does then periodically wake up the system and cycle through the software service loops then go back to sleep. Setup a series of service flags that are set during the interrupt service routine and cleared after being serviced: Flag(s) for Commands, Flag(s) for Controls and Inputs, Flag(s) for User Interface, and Flag(s) for Data Setup a variable that acts like the system timer odometer. Every Odometer == (DesiredInterval%ServiceFlag_n_now) set the ServiceFlag_n Decide how often you will service the other functional blocks of your code. For example, Update the 2x20 LCD display every one second, or Update the Serial Console every 250ms, or Retrieve the Temperature from a sensor every 15 minutes. Setup an Interrupt Service Routine to catch any characters coming into the Serial Port Buffer. Stuff them into the Input Ring Buffer Set a flag that there's something to service. In the main loop, scan all of the service flags to see if any are set. Call the servicing function for each set flag. Clear the service flag at the end of that process. Configure the program to repeat continuously until Kingdom Come.
    I've left out significant details about setting up all of the peripherals and general variables so don't forget to do that stuff.
    This is just the basic gist of my state machines on a bare metal level.
  23. Like
    zeke got a reaction from bluehash in Implementing an I2C slave device.   
    This is my approach to state machines. Your mileage may vary.
    Determine all of the sub-systems that you will want to service Commands, Controls and Inputs, User Interface, and Data Setup a system tick timer that fires its interrupt on a regular consistent basis. This system doesn't have to go into LPM4. If it does then periodically wake up the system and cycle through the software service loops then go back to sleep. Setup a series of service flags that are set during the interrupt service routine and cleared after being serviced: Flag(s) for Commands, Flag(s) for Controls and Inputs, Flag(s) for User Interface, and Flag(s) for Data Setup a variable that acts like the system timer odometer. Every Odometer == (DesiredInterval%ServiceFlag_n_now) set the ServiceFlag_n Decide how often you will service the other functional blocks of your code. For example, Update the 2x20 LCD display every one second, or Update the Serial Console every 250ms, or Retrieve the Temperature from a sensor every 15 minutes. Setup an Interrupt Service Routine to catch any characters coming into the Serial Port Buffer. Stuff them into the Input Ring Buffer Set a flag that there's something to service. In the main loop, scan all of the service flags to see if any are set. Call the servicing function for each set flag. Clear the service flag at the end of that process. Configure the program to repeat continuously until Kingdom Come.
    I've left out significant details about setting up all of the peripherals and general variables so don't forget to do that stuff.
    This is just the basic gist of my state machines on a bare metal level.
  24. Like
    zeke reacted to greeeg in GPS logger for a local Beagle club   
    This project was put on hold over the holidays. It's always a busy time, plus the club doesn't hold meets over summer.
    But I have just completed another 10 units. More of the same, but thought you guys might enjoy some more photos.





     
    I couldn't get the same batteries as the last batch, which were 650mAh, these have much smaller 220mAh. But this still provides about 4 hours of run time.
    The uBlox GPS modules are a huge improvement. Even without the SAW filter in the RF path and the sub-optimal PCB size compared to the antenna. These find more GPS satellites faster than the G.top modules, plus they also use glonass which doubles the visible satellites.
     
     
  25. Like
    zeke got a reaction from NurseBob in Open Source Books that teach C Programming   
    I stumbled across a list of nine open source books on Hacker News today that will help people learn how to program in C.
     
    YMMV
×
×
  • Create New...