I have a program called wipedrive. It wipes 0's to a regular hard drive. I also have read that doing that to a ssd would make it think it is full or the cells are in use is that correct and can I use any hard drive program to erase or I have to use a special one?
Is there also a special diagnostic program to use like how western digital has it's diagnostic program?
Wiping 0's on a SSD will not make it think it is full, the drive will be completely empty no data on it, the drive will also be as fast as it was when you got it new. I use CCleaner and the erase disk function if I ever need to wipe a disk. I also use Active@Delete (Free). CCleaner will more securely erase if you specify more passes or a different wipe standard, both can negativly impact SSD life with alot of write operations.
As for diagnostics you can try using Seatools I dont know if that will work for SSD's, There is also HD Tune where you can read S.M.A.R.T data and do an error check, erase the hard drive and do speed tests.
Wiping 0's on a SSD will not make it think it is full, the drive will be completely empty no data on it, the drive will also be as fast as it was when you got it new.
Quite the opposite. If you write 0s all over an SSD, it will not just think that it's full, it will be full. 1s represent the reset state of a cell, not 0. What is important is that the software which writes 0s then deletes whatever file it wrote to fill up the space, and that the TRIM command is sent correctly. If this occurs then the SSD controller will reset all of the cells to 1s again. You can do this by connecting the drive up to another computer that supports TRIM. That's the only way to completely fill and erase a drive the "easy" way (since you can't erase Windows from a drive that you just booted off). The other option is to use some software that can send the ATA Secure Erase command. Many Linux Live CDs will be able to do this for you, but there's also HDDErase.
Is this normal for an ssd? I downloaded the latest version of hd tune pro. I did a full error test and nothing came up but am still concerned.
Ok so for instance I have a program called wipedrive. I can set up a custom wipe of all 1's. Would doing that opposed to running hdderase and using the secure erase function be the same result or be worse?
Assuming it is running as a second drive on another system, you can delete all of the existing data as you would normally, then run wipedrive over the entire thing. Running with 1s is best, because it won't affect blocks that are already reset. If you write 0s over the whole thing then any already reset blocks will incur an additional and unnecessary program/erase cycle.