I just put the finishing touches on a development board for Luminary Micro's LM3S3651 chip. Luminary is now part of Ti. I love the peripheral library that comes with them it makes them really easy to use, particularly for ARM microcontrollers.
Basically I designed the board with USB Host or Dev applications in mind mainly. Mostly I wanted something that could do hosting of power hungry USB devices (like hard drives), but it is good for much more than that.
It is Cortex M3 128 KB Flash, 32 KB SRAM, 50 MHz, 29 GPIOs, SPI, UART, I2C etc.
Anyway I just wanted to start a thread for anyone who needs help using it. Though I wrote really comprehensive docs I think: http://teholabs.com/docs/eridani:overview (http://teholabs.com/docs/eridani:overview)
I go over setting up both serial and JTAG toolchains. I plan on full support for the BusBlaster when it is in good shape.
Eridani is available for sale at: http://teholabs.com/products/eridani.html (http://teholabs.com/products/eridani.html)
I'm looking for a microcontroller environment that can function as a USB host. I'm building an MP3 player / media center for my car, and would like to be able to swap USB flash disks (containing, e.g., playlists, audio books, and music) depending on the trip I'm taking. I'd like to be able to drive a graphical touch display, for controlling the player.
I'm also looking at trying to incorporate basic GPS datalogging and fuel economy monitoring into the device.
[Edit]: By the way, I was looking at the writeup of the Eridani design. I enjoyed reading about the tradeoffs and goals you had in developing this thing, and the design decisions that went into it. Thank you for providing that insight into your process.
[Edit 2]: I am located in St. Louis, MO
I am planning on building a custom USB drive that handles at minimum the RSA side of the SSH protocol and preferably the whole process just sending and receiving packets to the host application which passes then directly to the network and sending and receiving text to the host application for interaction.
The basic idea behind this was to still provide a secure connection back to my SSH server (and thus my home network) on an untrusted machine without giving that machine any access to my private key or possibly even the session key.
I am currently an AVR hobbyist but recognize that it may not be the best way to make this project. I also would prefer to not have to make a ton of different boards and so a dev board that has a USB port on it will allow me to develop and figure this out before I make final form-factor circuit boards. Also, I prefer setups that have information on what and how to build things such that I have an idea of what I am trying to do before I hit the datasheet to find out exactly how to do it.
So yes, one of these would advance my project immeasurably.
Edit: Fixed formatting and added a line I forgot the first time.
If I were to win one of the development boards I would use it to introduce me into the world of embedded systems. I am a computer engineering student and I have a lot of courses that teach around the subject but I wont be creating anything cool in those classes until third year, so I’ll use this for all the projects that I have created.
A friend and I are currently fooling around with analog circuits (op-amps: band-pass filters) but we would like to start getting into digital circuits and maybe even start a club (our school just opened a new building for student clubs/projects).
I do not have any specific ideas for what we would do but I do know that we would use it every day to learn and create amazing things :)
If I were to win one of the development boards I would use it to introduce me into the world of embedded systems. I am a computer engineering student and I have a lot of courses that teach around the subject but I wont be creating anything cool in those classes until third year, so I’ll use this for all the projects that I have created.
A friend and I are currently fooling around with analog circuits (op-amps: band-pass filters) but we would like to start getting into digital circuits and maybe even start a club (our school just opened a new building for student clubs/projects).
I do not have any specific ideas for what we would do but I do know that we would use it every day to learn and create amazing things :)
---------------------
Left no contact information above (whoops)
Ideas I thought of now:
* I have a lot of electric motors, and have been wanting to build a remote controlled car/vehicle
* I hate having to walk over to my friends room to reset the router if it stops working and if he isn't home then I'm out of luck, I would build a restarter that didn't need me in the room.
* A door unlocker when it hears a specific rhythm or beat on the door
* An alarm clock that I can plug my ipod in and that turns the lights on as well as plays music (maybe even open the blinds)
I would build a controller for a reflow oven with a graphical displayto show and enter new profiles. With this board would be great to enter new profiles via USB flash memory.
I'm a student of Electronic Engineering (8th semester) at the University of the Andes (Bogotá, Colombia).
I have experience with a AT91SAM7S512. I would like to experiment with a Cortex M3, then it would be perfect for me to get one :)
Lot of good ideas coming! I'd love to give you all boards but I can't afford that... I hope you guys won't be upset when I pick :-)
[quote author="schazamp"]I'm looking for a microcontroller environment that can function as a USB host. I'm building an MP3 player / media center for my car, and would like to be able to swap USB flash disks (containing, e.g., playlists, audio books, and music) depending on the trip I'm taking. .[/quote]
What will you use for the decode? A co-processor or do you think you can fit a codec into 32 K of RAM? I was thinking of using LM3S9B90 for a media player I made a post about it in another thread. It wouldn't be small for like iPodish things but it could work in a car too. I mostly looked into the CODEC overhead of FLAC though
LM3S9xxx series have ethernet, usb host and.... external memory interface so you can add a big hunk of SDRAM.
[quote author="alextm"]I am planning on building a custom USB drive that handles at minimum the RSA side of the SSH protocol and preferably the whole process just sending and receiving packets to the host application which passes then directly to the network and sending and receiving text to the host application for interaction..[/quote]
Sounds like you are a good programmer. I have been interested in RSA like things on micros mostly because email transfer these days needs to be done over a secure layer. I find email a easy way to send command to internet enabled projects.
[quote author="brian"]
What will you use for the decode? A co-processor or do you think you can fit a codec into 32 K of RAM? I was thinking of using LM3S9B90 for a media player I made a post about it in another thread. It wouldn't be small for like iPodish things but it could work in a car too. I mostly looked into the CODEC overhead of FLAC though
LM3S9xxx series have ethernet, usb host and.... external memory interface so you can add a big hunk of SDRAM.[/quote]
I was going to use an external decoder chip, like the STA013 / STA015 (for MP3 only) or maybe the VS1053 (which does many more formats, including Ogg, Wav. and FLAC). I have the STA013 that I am trying to use with an AVR, but it looks like something more powerful might be necessary.
Hey Brian,
Firstly thanks for hosting contests like this. There awesome and it gives me a lot of ideas.
If I won one, I would like to make a GPS system that uses RFID tags to determine where to point ( degree + distance).
I think this would be great because as rfid tags get cheaper, more things could have RFID tags in them
(like business cards that could point to the shop/company).
Otherwise, I'm interested in making a gas monitoring station with multiple gaz sensors that would output there readings to a site like Pachube.
Sincerely
Paul
PS: I don't mind helping with shipping charges (Paypal) .
;)
Hello,
If I win the board I would build a Laser light Show Projector.
Thanks,
Jose.
NH
I would like to receive one of the boards to develop a control system for my niece who has cerebral palsy. She is confined to a motorized wheelchair and has difficulty moving the controls with her hands. An imbedded system would help her to control the chairs many functions without having to use her hands.
Thanks
Stephen Kuhl, Sr.
Fort Smith, AR
USA
[quote author="brian"][quote author="alextm"]I am planning on building a custom USB drive that handles at minimum the RSA side of the SSH protocol and preferably the whole process just sending and receiving packets to the host application which passes then directly to the network and sending and receiving text to the host application for interaction..[/quote]
Sounds like you are a good programmer. I have been interested in RSA like things on micros mostly because email transfer these days needs to be done over a secure layer. I find email a easy way to send command to internet enabled projects.[/quote]
I would not say "good", I would say learning with a hope to branch out. That would be my first real computer app, second USB project, and first or second crypto project, (depending on if I start on of my other AVR projects first).
Not a project idea, as my two current in-mind projects are better suited to other Luminary devices (LM3S811 for a DMX dimmer, LM3S6965 either on its own or paired with a Xilinx Spartan-3E for an Ethernet-to-other-stuff bridge), but a comment/question:
Is the GPIO header prepopulated? It appears that it is prepopulated with a male header. Given that it is a two-row header (cannot be plugged into a breadboard in any way), why not leave it unpopulated (a la the wing headers on Gadget Factory boards, or the TI/Luminary EKx-LM3S6965 board) permitting a female header to be placed there? (easier to jumper to a breadboard for prototyping than a male header).
Or, since you don't have many GPIOs, why not split them across the sides of the board in two single-row male headers? This would permit the board to "straddle" between two breadboards (similar to how the EKx-LM3S811 board can be used if populated with downward-facing single-row headers).
I remember you've made some negative comments regarding the way Arduino I/Os are arranged (And I agree with you here - it is an incredibly stupid design that makes it impossible to even achieve the "straddle" approach described above even when the female headers are replaced with downward-facing male headers. The fact that they rushed it out the door instead of just slipping a week is simply inexcusable for such a high-impact mistake.), but honestly your approach here doesn't seem much better.
If you had as many IOs as the EKx-LM3S6965 or STM32-H103 boards, this would be understandable since 26-pin single-row headers on each side is getting a bit too long, but in this case you only would need two 20-pin single-row headers on each side to support the "straddle" approach.
Edit: Correction, EKx-LM3S6965 and STM32-H103 would only need two 26-pin single-row headers, current config is dual 2x13, one on each side.
Robotics! I'd like to use it to compare something like FreeRTOS against timer/interrupt based programming (such as on the various Arduino-based multicopter control boards).
Micro Aerial Vehicle (Quadrotor) Control Board Proposition
Hi! :-) I'm the lead software dev at NC State Aerial Robotics (http://http://art1.mae.ncsu.edu/) and we work on autonomous planes, helicopters, and more recently: Quadrotors (http://http://www.youtube.com/watch?v=Ng5cj4m8uaw&feature=player_embedded).
We are trying to minimize the design, so if we got a board, we would turn it into our next version of (even smaller) quadrotors. We've had success developing for Cortex-M3 for the past year (mbed, blueboard and DIY-ed microcontroller boards), so setting up a developing and programming environment would be a breeze.
All of the work (code/build scripts/documentation/etc) would be open source, and we could host it or could host it externally. (Personally I prefer Github (http://https://github.com/ajray) for hosting open-source code).
The basic overview is use the timers to generate PWMs to control the motors (actually control the ESCs to control the motors), and use SPI/I2C to talk to the sensors (accelerometer, gyros, magnetometer). A traditional RC Aircraft Transmitter/Reciever (TX/RX) combination is used for remote control, and the board would use simple digital interrupts to communicate with the reciever.
The remaining digital I/O would be used to control various peripherials: battery voltage monitor, current measurement (to motors), vehicle lighting, LCD status display/Color LED status indicator.
If you want to learn more about the open source MAV/UAV community, definitely head over to DIY Drones (http://http://diydrones.com/).
Feel free to contact me for questions/concerns/good jokes/bad jokes/college stories :-)
Thanks,
~Alex
Entropy:
I appreciate your feedback and opinion.
The reason it is male is so that you can use a ribbon cable and have a daughter board really. For breadboard I understand that is not ideal. The main advantage of using ribbon cables is that you preserve signal quality and speed.
I thought of doing two rows, on each side, but I wanted all SMD and so I couldn't. I could have left it unsoldered. Perhaps if there is a REV 3 I will do that if people don't mind soldering. There are some layout issues with doing it also... If you scrap the second JTAG interface you can get enough edge space.
I use this sort of thing: http://www.sparkfun.com/products/9385 (http://www.sparkfun.com/products/9385)
For prototyping. Yes they aren't super cheap but a good thing to have around for breadboarding. Lots of things have male headers. :-)
Edit: Check ebay for: "Jumper Wires Male Female" if you need the sort of thing I mention I found 30x for 5.50 shipped
I've been wanting to get an ARM-based mocrocontroller board to get started working on porting Codec2 to a lower cost platform. Codec2 is an open source audio codec designed for low-bandwidth links to enable low-to-zero cost telephony, with obvious applications in the mobile and third-world areas.
There has been some work to try and get it running on higher-end AVRs and PICs, but the lack of floating-point support means we need significantly more fixed-point support to be able to perform the involved DSP calculations needed than is possible on 20MHz 8/16 bit processors.
I doesn't have a concrete idea, but the board could be a good way to get involved in the ARM world.
Maybe I could use this to change an old project that uses a dsPIC to control an autonomous robot. Another project is try to build a simple robot based in fuzzy logic.
Hello,
If I had one of these boards, I'd be excited to port the Nuttx RTOS to it. I'm currently finishing a port for the TI Evalbot (LM3S9B92 based).
A working Nuttx port would give the Eridani the following:
FIFO and round-robin scheduling
file system support (FAT12/16/32, ramdisk, etc..)
TCP/IP (with DHCP, SMTP, TELNET, TFTP, HTTP)
USB device support (and I'd also like to port USB host support but that is a bigger project)
Integrated C library
..plus a lot more.
Tried to post a link but the spam filter won't let it through. Just google nuttx; it's hosted on sourceforge. Very nice looking board BTW. Love the black PCB :) Lastly, I'm US based.
Hi,
The television society (MAD TV) at my University is currently building boom and rail mounted trolley camera mounts (both with 3 axis pan/tilt heads as well as motorized boom and tracking, the latter for the rail mounted one).
We are currently thinking of solutions for control and this board looks perfect!
If we used it we could control all motors using control loops with feedback, and then implement saved locations as well as live control. This can be controlled from a small unit with a graphic display giving details of the motors and movement status. It can also be interfaced to a computer/laptop for software control, or the computer software could be used to save locations, modeled in 3D, to a memory stick for the system to use.
From the look of the docmentation ('u' removed for spam filter...), the peripheral libraries would make this very easy to implement, which would be great as the big show we want to unveil it at is only in a few months time!
Thanks, Laurence
[quote author="brian"]Entropy:
I appreciate your feedback and opinion.
The reason it is male is so that you can use a ribbon cable and have a daughter board really. For breadboard I understand that is not ideal. The main advantage of using ribbon cables is that you preserve signal quality and speed.
I thought of doing two rows, on each side, but I wanted all SMD and so I couldn't. I could have left it unsoldered. Perhaps if there is a REV 3 I will do that if people don't mind soldering. There are some layout issues with doing it also... If you scrap the second JTAG interface you can get enough edge space.
I use this sort of thing: http://www.sparkfun.com/products/9385 (http://www.sparkfun.com/products/9385)
For prototyping. Yes they aren't super cheap but a good thing to have around for breadboarding. Lots of things have male headers. :-)[/quote]
A DIY version of those is described at http://forums.adafruit.com/viewtopic.ph ... ser#p77776 (http://forums.adafruit.com/viewtopic.php?f=25&t=15740&p=77776&hilit=jumper+Mouser#p77776) and http://forums.adafruit.com/viewtopic.ph ... ser#p77777 (http://forums.adafruit.com/viewtopic.php?f=25&t=15741&p=77777&hilit=jumper+Mouser#p77777) - It's a bit of a pain in the butt, but potentially cheaper than the SFE jumpers.
[quote author="Entropy"]
A DIY version of those is described at http://forums.adafruit.com/viewtopic.ph ... ser#p77776 (http://forums.adafruit.com/viewtopic.php?f=25&t=15740&p=77776&hilit=jumper+Mouser#p77776) and http://forums.adafruit.com/viewtopic.ph ... ser#p77777 (http://forums.adafruit.com/viewtopic.php?f=25&t=15741&p=77777&hilit=jumper+Mouser#p77777) - It's a bit of a pain in the butt, but potentially cheaper than the SFE jumpers.[/quote]
I can vouch for this style cables. Whenever we're prototyping things in the robotics lab we take the time to color-code and color-match our cables and crimp-solder-heatshrink the ends with males/females. Takes a little time but its really worth it (and gives us something to do while we run the next compile-program-run cycle for our ARM uC).
[quote author="kphlight"]Hello,
If I had one of these boards, I'd be excited to port the Nuttx RTOS to it. I'm currently finishing a port for the TI Evalbot (LM3S9B92 based).
TCP/IP (with DHCP, SMTP, TELNET, TFTP, HTTP)
[/quote]
So you know there is no Ethernet MAC on this one unlike the LM3S9B92 which even has the PHY on it.
i bought a bunch of sensors recently and im heading to analyze my movements in our world :o)
first i got 3 axes accelerometers and 3 axes gyro, and few others like atmospheric pressure and temperature + few old gps laying around.
is all that stuff will be better that our old trusty cessna172 airplane standard instruments, we will see :o)
those arm seems to be interesting, and first step is to try some prototype stuff to learn the development tools chain etc etc :o)
so this free board will be very welcome :o)
[quote author="brian"]So you know there is no Ethernet MAC on this one unlike the LM3S9B92 which even has the PHY on it.[/quote]
It is still a potential feature :) One of the nice things about Nuttx is that you can choose NOT to compile X component into the kernel if you like. And if someone really, really wants TCP/IP without Ethernet MAC/PHY, that'd be up to them :)
[quote author="phirephly"]There has been some work to try and get it running on higher-end AVRs and PICs, but the lack of floating-point support means we need significantly more fixed-point support to be able to perform the involved DSP calculations needed than is possible on 20MHz 8/16 bit processors.[/quote]
How much more power do you need? It is 1.25 DMIPS / MHz at 50 MHz, of course the core is integer only. I would think for such a low data rate codec (naively) you could do it with a lot of things. Are you planning to transducer the audio? PWM? Something else?
[quote author="brian"]How much more power do you need? It is 1.25 DMIPS / MHz at 50 MHz, of course the core is integer only. I would think for such a low data rate codec (naively) you could do it with a lot of things. Are you planning to transducer the audio? PWM? Something else?[/quote]
The compression used is pretty MIPS intensive per bps, so it's really a matter of latency processing each packet before the next one arrives. Depending on how much power is left over, the DAC and ADC may have to be offloaded, but hopefully not. 20MIPS on a 16 bit processor may be possible, but no one has proven anything yet...
Gotcha, there are a lot of parallel load DACs you probably could use easily enough if you just need raw level conversion. I was thinking of doing an audio player with LM3S9xxx and a big hunk of RAM (it has a RAM interface), it runs a bit faster at 80 MHz but still I don't know if that is fast enough to do the decode. That one has I2S on it for DAC.
Edit: the wav samples on the top google hit didn't work for this CODEC FWIW (files weren't there) RAW and competitors yes.
Hi folks,
I'm planning to develop a display for the FLARM-system, a collision warning system for general aviation, mosly used by gliders
This system is very popular in the soaring community, especially in Europe.
It's GPS based, every FLARM-system transmits its position over a wireless channel.
It outputs the GPS-position and the relative position of the other aircraft in range, which are equipped with FLARM, via a simple serial connection.
My idea is to build a system which processes this type of data, giving the pilot a clear and intuitive representation of the traffic and potential hazards.
Even though these types of displays are already commercially available, they are pretty expensive.
Especially in cross-country-soaring the glider-pilot needs much more information, like altitude, airfields in range, controlled airspace, average speed, etc.
Currently I'm searching for a suitable and inexpensive controller with enough speed, computing and displaying this type of data in a clear and intuitive way.
Looking over the specs of this dev-board, it would be a handy start, especially on testing some lcd-displays and their readabilty when they are exposed to direct sunlight (very important for glider pilots) :-)
Cheers, Felix
Let me add a small design confession on the 40 pin header also. I had hoped people would just be able to use IDE cables with it, that is actually why it is 40 pins. But what I didn't think of until after it was done was that IDE cables might be internally connected for the grounds, it turns out they are in the case of all of the ones I have so sadly you have to go buy a ribbon cable to get a board to board. I had hoped everyone would just have free ones laying around that would work but it was not meant to be...
When I make projects what I do is breadboard then I would make a daughter board PCB with a board to board ribbon cable for the final design. Or you can use jumper cables with 0.1" pitch. These come with some motherboards and SFE started to sell shorter blocks if you don't need a full patch of 40 to a daughter board.
[quote author="brian"]Edit: the wav samples on the top google hit didn't work for this CODEC FWIW (files weren't there) RAW and competitors yes.[/quote]
They're all good on his personal site, which I can't link to (new user), but click on the "contribution" link from the codec2 org site. mangled: rowetel com /blog/ ? page_id=452
And I'm certainly concerned about the actual ADC/DAC conversions. The decision between trying to do it all PWM on-board with analog filters vs offloading it all to parallel, or even SPI auxiliaries is a devil of detail. The primary concern is implementing the core algorithm portably, seeing if it can decode in real time, and seeing if it can handle duplex communication.
Once we have that running, building different ATA devices isn't going to be too difficult.
I didn't think anyone would want serial development under linux right away but it seems I was wrong...
Just finished writing a guide for that:
http://teholabs.com/docs/toolchain:seriallin (http://teholabs.com/docs/toolchain:seriallin)
Probably has a typo or two in it but problem solved...
[quote author="phirephly"]
They're all good on his personal site, which I can't link to (new user), but click on the "contribution" link from the codec2 org site. mangled: rowetel com /blog/ ? page_id=452
[/quote]
Yep those samples work :-) CODEC does work... Good good...
Hi there,
I have been trying to parallel/simultaneous interface with 3 USB 3G modems (can be scaled up, though the usb port throughput and communication overheads should be considered) using a single router, the reason being i am SICK AND TIRED OF MORE AND MORE ISPs ADOPTING STUPID "FAIR USE POLICIES" FOR UNLIMITED BROADBAND SERVICES INSTEAD OF UPGRADING EXISTING INFRASTRUCTURE, this set-up essential makes me 3 low-speed users instead of 1 high-speed user to the ISP, while maintaining the same costs, and since the ISP can only throttle your min speed so low, multiple that by 3 and you get truly unlimited broadband at a reasonable min speed. The process is described below.
1. say i type in the google homepage and hit enter on my computer that is connected to this single router
2. all 3 USB 3G modems send out a request (using a different router MAC id for each USB 3G modem request, as programmed in the router micro-controller) and receive 3 identical responses, including a list of web-page elements to be loaded
3. the router micro-controller takes this list and orders them in any way you want (i prefer alphabetically), then assigns 1/3 of the entire list to each of the 3 USB 3G modems for loading (Modem1 gets elements 1,4,7,10 etc; Modem2 gets elements 2,5,8,11 etc; Modem3 gets elements 3,6,9,12 etc)
4. the 3 USB 3G modems load their respective elements and feed them back to the router micro-controller which joins everything together into a single connection stream (may it be via wifi or a RJ45 cable) to communicate with the computer in question.
5. Limitations => in applications that require a single continuous connection such as video streaming, this set-up wouldn't give the X3 speed boost, however if you download the same video via a multi-connection download manager, it would give the X3 speed boost. (and yes, i works especially well with torrents ^_^)
The main problem now is that the router micro-controller is too miserly both in processing speed and memory space, most of which is taken up pseudo-USB support for the 3 USB 3G modems, so i would appreciate it if i could get 1 of your boards so i can further develop this technology that could POTENTIALLY FORCE ISPs TO UPGRADE EXISTING INFRASTRUCTURE, AS THEY WOULD HAVE NO OTHER CHOICE (add evil laugh/chuckle).
If i do win pls e-mail me at my YAHOO E-MAIL ACCOUNT under user "mrjohngoh" (the anti spam is preventing me from typing my e-mail, sigh)
Well mrjohngoh it could work in a crude type N kind of way, but you may well have RF blocking effects on 3 receivers so close to one another, most RF designers aren't assuming so many so close, though I assume the blocking resistance of most RF chipsets for these things are very good, I do know that they aren't cutting edge. For instance the LNA noise floor for things of this nature tends not to be better than -110 to -120 dBm while you could in principle get to -164 dBm (though even a pretty good amp has 3-4 dB noise figure).
[quote author="schazamp"]I was going to use an external decoder chip, like the STA013 / STA015 (for MP3 only) or maybe the VS1053 (which does many more formats, including Ogg, Wav. and FLAC). I have the STA013 that I am trying to use with an AVR, but it looks like something more powerful might be necessary.[/quote]
Thanks for mentioning the VS1053. I was previously unaware that anyone had designed a FLAC decoder chip. Unfortunately, the VS1053 is limited to 48 kHz, and I already have 96 kHz. What I would really like to see is a hardware implementation of FLAC that could handle stereo 24-bit 192 kHz, even if it's only rarely used at that rate.
Sorry to hijack the thread briefly, but this is interesting news (hardware FLAC).
[quote author="brian"]Well mrjohngoh it could work in a crude type N kind of way, but you may well have RF blocking effects on 3 receivers so close to one another, most RF designers aren't assuming so many so close, though I assume the blocking resistance of most RF chipsets for these things are very good, I do know that they aren't cutting edge. For instance the LNA noise floor for things of this nature tends not to be better than -110 to -120 dBm while you could in principle get to -164 dBm (though even a pretty good amp has 3-4 dB noise figure).[/quote]
Yup. There's also the fact that even without local co-interference, three users simultaneously in the same pattern might do weird things.
One thing to keep in mind regarding infrastructure upgrades is that to add more cells to a network is VERY difficult - in some areas there simply might not be any sites for new cells. (NIMBYism - it is a common thing for residents of a neighborhood to vehemently oppose construction of a new cell tower and then complain that their cellular service sucks.)
Spectrum availability is gated by the FCC, that is another limitation in terms of upgrades. Improved modulation schemes are improving spectrum efficiency, but it isn't the providers that are slow here, it is the standards organizations. LTE Advanced is not finalized yet...
Also, how exactly is are the costs the same? You need three separate wireless accounts in this situation. For example, AT&T's 200MB plan is $15/month, the 2GB plan is $25/month (less than double the price for 10x the monthly transfer), the 4GB tethering plan is $45/month (slightly less than double the price for double the monthly transfer and significantly reduced overage charges). Oh yeah, technically this approach is violating the terms of service anyway regarding tethering for the lower plans.
[quote author="rsdio"][quote author="schazamp"]I was going to use an external decoder chip, like the STA013 / STA015 (for MP3 only) or maybe the VS1053 (which does many more formats, including Ogg, Wav. and FLAC). I have the STA013 that I am trying to use with an AVR, but it looks like something more powerful might be necessary.[/quote]
Thanks for mentioning the VS1053. I was previously unaware that anyone had designed a FLAC decoder chip. Unfortunately, the VS1053 is limited to 48 kHz, and I already have 96 kHz. What I would really like to see is a hardware implementation of FLAC that could handle stereo 24-bit 192 kHz, even if it's only rarely used at that rate.
Sorry to hijack the thread briefly, but this is interesting news (hardware FLAC).[/quote]
You have to apply a SRAM patch RSDIO. I have a functional player that plays everything sequentially for STM32F103 if you want the code. It is in a rough state but uses a regular LCD for track info: does MP3, ACC, WAV, OGG, FLAC. I used the I2S output of the VS chip to drive a DAC board I built :-)
I guess you say you have something already. Nevermind. FWIW I won't be going right to 96 KHz on openHiFi.
[quote author="Entropy"]Yup. [/quote]
Yup. It is amazing how much people demand from these wireless companies, the engineering and infrastructure requirements are huge, it isn't that they are just trying to @$$(#U people. I personally would rather see less bandwidth at a reasonable cost. Phone service vs bandwidth is overpriced in the US to subsidized these other services... (70+ a month is not reasonable when food for a month is <200 dollars).
I would use it to design a stand alone programer for programing MCUs on the field were code could be uploaded via usb or ethernet. it would be realy usefull to update firmware of the many lab tools in the mcu, mpu and dsp lab at the student center in my university wich are constantly being modified.
[quote author="brian"][quote author="rsdio"][quote author="schazamp"]the VS1053 (which does many more formats, including Ogg, Wav. and FLAC)[/quote]Thanks for mentioning the VS1053. I was previously unaware that anyone had designed a FLAC decoder chip. Unfortunately, the VS1053 is limited to 48 kHz, and I already have 96 kHz. What I would really like to see is a hardware implementation of FLAC that could handle stereo 24-bit 192 kHz, even if it's only rarely used at that rate.[/quote]
You have to apply a SRAM patch RSDIO. I have a functional player that plays everything sequentially for STM32F103 if you want the code. It is in a rough state but uses a regular LCD for track info: does MP3, ACC, WAV, OGG, FLAC. I used the I2S output of the VS chip to drive a DAC board I built :-)
I guess you say you have something already. Nevermind. FWIW I won't be going right to 96 KHz on openHiFi.[/quote]
Are you saying that an SRAM patch would allow 24-bit 192 kHz FLAC decoding? I assumed that the VS1053 was computation bound, not memory bound. What are the sample rate and sample depth limits of your STM32F103 solution? Seems like 24-bit support might be easy, but 96 kHz and 192 kHz could potentially pose a problem, at least judging from commercial product support.
By the way, I2S interfacing to a separate DAC board seems like a perfect idea. I2S shouldn't care about 24-bit and 192 kHz so long as the clock rate is high enough. Then the DAC board can be swapped for users who want lower cost versus high definition audio.
[quote author="rsdio"]
By the way, I2S interfacing to a separate DAC board seems like a perfect idea. I2S shouldn't care about 24-bit and 192 kHz so long as the clock rate is high enough. Then the DAC board can be swapped for users who want lower cost versus high definition audio.[/quote]
I only have 44.1/48 KHz sources. What I meant by SRAM patch is that it isn't inside the firmware on the VS chip. Let's talk about this in the openHiFi thread if you want to talk about it more.
The patch is here:
http://www.vlsi.fi/en/support/software/ ... tches.html (http://www.vlsi.fi/en/support/software/vs10xxpatches.html)
"Currently 16-bit FLAC files upto 48 kHz are tested to play smoothly in an actual system
(SD card as storage). If you can manage high enough transfer rates you may be getting
24-bit files to play smoothly as well." I think the chip runs like 40-50 MHz so 20 Mbps for the SPI I think. It has I2S out but I was concerned about jitter/cost using it.
[quote author="Entropy"]
Also, how exactly is are the costs the same? You need three separate wireless accounts in this situation. For example, AT&T's 200MB plan is $15/month, the 2GB plan is $25/month (less than double the price for 10x the monthly transfer), the 4GB tethering plan is $45/month (slightly less than double the price for double the monthly transfer and significantly reduced overage charges). Oh yeah, technically this approach is violating the terms of service anyway regarding tethering for the lower plans.[/quote]
Consider the following scenario, assuming
i am an insane internet user, i transfer upwards or 24GB or data daily (approx 1GB per hour)
even if there was a (20GbX30days=600GB) plan, after i crossed that mark (600GB) my speed would be capped at a very low X Mbps (different ISPs have different low points), as well as charged for the extra data by SOME ISPs
whereas if i got 3 of the lowest data plans (eg. 200mb per month, as you mentioned), from an ISP who only caps your speed but doesn't charge for any extra data, then i set-up all 3 accounts in parallel (as mentioned in my prior post), then i can transfer an infinite amount of data at 3X Mbps even after i have passed the data cap.
The thing you have to understand here is that the absolute cost of 3 accounts maybe higher, however the ability to consistently transfer at 3X Mbps instead or X Mbps 24h a day 7 days a week even after the assigned data cap, would mean that any extra cost could potentially be divided by an infinite data amount (real-world eg.as you mentioned, 3 200mb accounts are, $15x3=$45, so if i use them to transfer 600GB of data, then $45/600GB=$0.075 per GB ^_^)
ISPs PWNED
[quote author="JohnGoh"] so if i use them to transfer 600GB of data, then $45/600GB=$0.075 per GB ^_^)
ISPs PWNED[/quote]
You are NEVER going to get 600GB through three rate-limited cell data plans. Even if you tried, like others said, the cross-interference from the three devices would cause the available bandwidth to be further reduced. I wish I could have the bandwidth to even have the ability to use 600GB in a month.
If you lived in an area without high speed internet service, a single 3G modem may be faster than a dial-up connection, but by then you'd probably not have 3G service either.
Your arguments really don't mean anything until you start pulling real hard numbers as to how much you can get through an ISP connection vs three modems; Are you trying to straight-up beat ISP bandwidth? Are you trying to beat up-time? What's you point, let alone the actual math to support it?
To my knowledge, none of the carriers out there offer rate-capped but not total-transfer-capped service.
All of the wireless carriers out there are currently offering total-transfer-capped service.
If you want to do something like this with a cable or DSL provider, you're going to need something with multiple Ethernet ports. This particular unit isn't going to do the trick for the kind of bandwidth you are talking about, and you're more likely to have success doing channel bonding with something like a hacked wireless router supported by DD-WRT. (Play with the VLANs and you can do multi-WAN).
However, I think in nearly all cases, pricing tiers are such that it will be cheaper to bump yourself up a pricing tier or two within a single account than obtain multiple accounts. I already did this analysis for AT&T, but I'm fairly certain it holds true with most of not all cable/DSL providers.
Note that what you're trying to do has been done, however it was not done for cost savings, but to obtain performance greater than what was available from the service provider in the case of a service provider (Iridium Satellite) that only offered circuit-switched data at 2400 bps. (A research institution channel bonded four Iridium modems to get 9600 bps throughput at an insane cost to support a research station in Greenland. Modem co-interference was a challenge for them.)
I have the winners. But I am waiting to here from #2. I will post when it is all sorted.
Hi,
I do realize i'm a little late,but i'll post this on anyway..My Idea is to design a hand held lab instrument.Connected to a small display,(or a proper monitor),this will be able to act as an oscilloscope,function generator,along with the features of the BusPirate,like SPI,I2C sniffing etc.Also,apart from USB connectivity,it shall have network connectivity,implemented via the ENC28J60,allowing not only control of this device over the Ethernet,but it can also upload/sync data from a central webserver.
This is an ideal instrument for universities.
It is a good idea kmmankad. I hope you try it if not with this board with someone other one. For what is is worth I think you should use an ARM with an integrated MAC at least if you want Ethernet. The board being designed for openHiFi will have this. Ti itself sell some kits for 100 dollars that have this function and include a FT2232 based JTAG. STM32 connectivity line has a built in MAC so you still need a PHY IC plus a magjack. The luminary/Ti parts have the MAC/PHY both built in. Some people have complained about the FIFO nature of the ETH hardware while the STM32 is packet based in hardware. There are examples to do Ethernet stuff hardware in StellarisWare. There are also lower cost devices that have Ethernet without USB I think LM3S6xxx.