Hi! I’m planning to do a device that will send the files of a USB flash drive to the PC via Bluetooth connection (Bluetooth will act just like a SERIAL connection).
I have the following questions:
- Is the Fez Domino the best choice for this project?
- Can the Domino be used with another MCU? and do the File transfer using the MCU?
- Can transfer FILES regardless of FORMAT and SIZE?
Yes it can do it all. Take a look at the ebook
Ok, but how about the file transfer, do I still need to create a program on the PC to reassemble the read data( .exe ,etc) from the USB?
I’m torn between the Domino and the UsbWiz.
You are confusing tings, USBwiz does NOT do anything beside read and write files. Where FEZ (USBizi) does that and 1000 other things. So, using USBwiz is not really an option.
You will use FEZ to read files and then you can transfer them to the PC anyway you like (bluetooth maybe)…of course you will need something on the PC to receive the data and assemble a file for you.
You can use tera term (see our downloads page) to receive the data from your buetooth serial connection to assemble a file. You can use XMODEM protocol to transfer a file. What is XMODEM? Google will tell you everything XMODEM - Wikipedia
If you are a very beginner, then start with simpler thigns…blink led…then try to read simple file…then try to send something over Bluetooth…then you can think about the final application.
Ok, thank you for clarifying the diff on those two. I’ll go with the Domino now.
Yes, I’m a beginner. Just started about 3 months ago. I’m using a zilog dev kit and already learned how to use its LED and some basic program w/ C.
As for the Bluetooth, yes I will be using a Bluetooth module as serial connection and I’ve already learned how to use it with the zilog dev kit to: initiate automatic connections, and send simple strings to the terminal.
As for C#, I only have experience on C++(old non gui) and basic 2008( used vb08 to create my own hyperterminal-like gui program to plot some data from the MCU) , but there are many resources about C#, so it may not be much of a problem…
As for the file transfer protocol, that’s what I’m trying to do right now. I trying to send a txt file to my zilog dev kit but I still don’t know what to put in my MCU to receive the file. Need to study more…
Do you think it can be done by a beginner in a matter of 2-3 months?
I’ve just read a brief difference on the various file transfer protocols in the hyperterminal. As I see it, Ymodem and Zmodem is good. Ymodem is like Xmodem but sends 1k byte packets instead of 128 bytes on Xmodem, and Zmodem that has an error checking on packets.
Ymodem - bigger packets = smaller number of packets = easier to assemble ???
Zmodem - resends packets when error occur
Are these protocols harder to implement on the Domino?
If you do it in the right steps, I think you can make it work with FEZ in 2 weeks
FEZ is really easy to use…forget about zilog, PIC, AVR, arduino…you will need a bit of work to setup your PC with visual studio, NETMF SDK, GHI SDK…but once you have it setup and you can blink an LED then you can do anything very easily.
Maybe your project can be the $500 winner
I think I need to use it with an MCU (zilog). As I’m currently on training( as part of our college curriculum ) on zilog. And most of the things I do here is interfacing with a zilog dev kit then doing some documentation on what I’ve done.
But this project is for my thesis so if its really hard to do with a zilog then I have no choice. I’m in a luxury on doing my on-the-job-training and also finishing my thesis at the same time.
Btw, I’m from the Philippines and I’m just wondering, can I purchase the Domino online using my local credit card(but still VISA). But my shipping address will be in the US, as we have a friend there that will be coming to the Phil, so I can save on delivery. These projects are to costly for a student… International deliveries are almost as pricey as the actual package.
Tell your professor zilog is too old for anyone to use! We are in 2010
The company was my choice. Because I was thinking of free dev kits to go with my project. Plus, the help I can get in doing this embedded projects. As I really have 0 experience.
I’m an IT student so electronics is really not my expertise. And most of my seniors here are ECEs or MEs.And most zilog chips are used in mechanical machines, so they also don’t have much experience on how to deal with my proj.
BTW, If I order tomorrow( it’s already late there). How long would it take to ship? My friend will be ordering from L.A but he’s coming here on the 22th.
Or should I ask this on the Ghi forum. XD
We usually ship the same day.
Just a question about Xmodem.
I have here a .NET C# Implementation of XModem.
Can I use it with the Fez so that I can skip with be manual Xmodem packet creation on the Fez side? Maybe just a little modification on other parts.
Sorry, if I keep posting late at night(there). Because it’s already morning here.
GHI doesn’t accept puchase with Different Shipping(US) and Billing(PH) address. (as always) :))
Either I pay additional 50USD for shipping, or find a friend with a Credit card that have a billing address in US.
We have many distributors around the world.
Do not do anything with xmodem till you have the first steps done like I suggested before
Ok, I’ll just wait first until I manage to get the Fez domino. But man, xmodem is slow(1mb = 7mins in hyperterminal to hyperterminal,2 Pc). If I can do 1k xmodem(1mb=1min), it would be much better.
And keep in mind that FEZ is 72mhz and your PC is over 2000mhz!
You can jut transfer raw files. No need for any protocol. Nomattet what you want to use, it is too early to think about it. There is a lot of learning to be completed
I’m working on similar serial communications in my project. Right now I transfer a file over xbee byte by byte and It takes roughly 15 seconds for 30KB i’d say. I’m looking for a protocol also, and have glanced at the C# xmodem sample. It looks clean, but out of the box I couldn’t get it to work, probably because the NETMF api is slightly different than .NET (ie, there’s no ReadByte() command command for example).
I’m sure it can be done though. Just keep in mind that a protocol might be more reliable, but it could consume more resources. I found that tweaking the baud rate and watching for buffer overruns was all I needed to stabilize protocol-less serial file transfer. And I really don’t use much more memory than the file itself.
You might want to think about your own protocol too if you have already written a term program. KeiModem could do what I do, send the filesize as an int first, then compare the number of bytes received to the size. if they’re different, resend. not the best, but it works!
XMODEM is very simple to implement…VERY simple! I have done it many times in the past fro many projects. I do not mind helping you guys if you start a new project page on the wiki. The trick here is to use the very old XMODEM with no CRC.
See this XMODEM - Wikipedia
That would be awesome, but I won’t ask you guys to do our homework, you got more important things to do. I’ll start a page and give it the old college try first. Thanks for the link
Quick organizational question. Since this really wouldn’t be a project for the contest, would you prefer I post it on the projects site instead of the wiki?
Or would you like to put a second wiki sidebar link under “Projects” for “User Projects” in addition to “Project Contest”?
I just don’t want to create confusion.
We are discussing replacing the project website with a wiki! Not sure where this will go but you can just add it to the contest projects. It is easy to move things on wiki.
Fortunately, I’ve found a C# implementation of xmodem. And it worked on my VB2008 based GUI terminal. Now I can do file transfers using my own hyperterminal-like program. I setup’d the connection as a loop, (my PC -> serial ->BT module-> usb BT dongle -> my pc again).
But just like you Matt, my file transfer takes too long, sending 900kb took 13mins. My Bluetooth module being the bottleneck. Because it can only work @ 9600k Baud +++soooooo many crc error. Had 20+ errors just by sending a 900kb .exe file. But it still worked.
Now, I just wish they would work in the FEZ with little modifications. The xmodem source files are very long with so many numbers inside.