Arduino Forum upgrade scheduled for Monday, October 20th, 11am-4pm (CEST). Sorry for the inconvenience!
Pages: [1]   Go Down
Author Topic: Arduino compatible board - USB bootloader!  (Read 2753 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
God Member
*****
Karma: 0
Posts: 572
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Have you guys seen this?

http://metalab.at/wiki/Metaboard

It's pretty damn awesome!

- (Mostly) Arduino code compatible - use Arduino IDE to write and program. Not exactly clear what isn't compatible - I'm guessing the USB port uses the interrupt lines, so may use one of the hardware interrupt lines.
- No USB-> TTL converter! Bootloader has USB firmware - AtMega168 connects directly to USB port.

It's very close to arduino form factor, but I think the pin headers have been moved to the 0.1 in grid. No ISP headers.

They give a step-by-step procedure for the entries required to the arduino preference and board files to allow you to upload from within the IDE directly over USB. The USB bootloader is linked to at the obdev website for free.

Seems like it could be a great trade off of functionality/pins for the gain of native USB support.

They even provide a full single sided schematic and board file to make your own.  I'm going to try making one this week.
Logged

berlin
Offline Offline
Sr. Member
****
Karma: 0
Posts: 295
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hi trialex,

though i'm reading in safe mode only today, i followed your links. man, hope the pages are still up tomorrow :-)
it definetely helped me waking up this morning. so thanks, for sharing.

best, kuk



Logged

FR
Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm working on this, those days.
Amazing work.
Quote
Since Arduino insists on having a serial line to upload the firmware (although none is needed for usbasp), you may have to edit Arduino's preferences.txt file manually and set the variable serial.port to an existing device. Preferences.txt is in ~/Library/Arduino on the Mac.
With Arduino 11 the serial pb will disappear (not tested yet but something like metaboard.upload.disable_flushing=true will solve the pb)

If you are running Linux like me you will have to set udev rule in order to allow the avrdude process to upload sketch (see http://forums.obdev.at/viewtopic.php?p=4436)
I think a timeout bootloader will be better than the jumper selectable boot mode.
Perhaps it will be better to rewrite completly the bootloader in order to have a CDC metaboard (but perhaps it will load to much the CPU).
This way you will be able to use serial.prints/reads to talk to the host
I'm sure il will be possible to make a simple arduino (able to program other avr, do a serial to usb converter, etc) at a very very low cost (10$ removing the external power regulator)

Nicolas
« Last Edit: April 01, 2008, 07:29:47 am by nrolland » Logged

FR
Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
With Arduino 11 the serial pb will disappear (not tested yet but something like metaboard.upload.disable_flushing=true will solve the pb)

Tested. Yes this work.
I do not speak the metalab.at language, I don't know how to tell us to update instructions.

Nicolas
Logged

Forum Administrator
Cambridge, MA
Offline Offline
Faraday Member
*****
Karma: 12
Posts: 3538
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

This looks awesome, and seems like a great way to make an inexpensive board.

Is it possible to communicate with the computer from within an Arduino sketch?  Would the board still appear as a virtual serial port?  Would there be a way to create a version of the Arduino Serial functions that would work?  How many limitations would that impose on the other processing done by the sketch?
Logged

0
Offline Offline
God Member
*****
Karma: 0
Posts: 572
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I believe that serial communiction is not useable over the USB port. That is the major limitation. I does leave the UART pins free though, not that it is an elegant solution to have then connected to the computer as well.

The project uses the simplest AVR-USB protocol/bootloader. There is a more complicted one on the AVR-USB website that demonstrates serial communication over USB, I'm sure with enough interest someone could develop it for use on the metboard.
Logged

FR
Offline Offline
Full Member
***
Karma: 0
Posts: 105
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Is it possible to communicate with the computer from within an Arduino sketch?  Would the board still appear as a virtual serial port?  Would there be a way to create a version of the Arduino Serial functions that would work?  How many limitations would that impose on the other processing done by the sketch?

This is the main issue to solve. 2 solutions
 - Firmware side : AVR-USB CDC bootloader (see avrdoper for example).
 - Host side : a custom virtual com port

Nicolas  
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 4
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hey I am trying to make this on a bradboard, I flashed the bootloader and did the jumpering, when I connect to PC on WINXP, Unknown device is the message I get.

I tried to install the driver but as per documentation of USBasp loader, after just connecting usb I should get device name as "USBASP" and device driver installation fails....


My configuration is

ATMega8 - 16MHz and connections are as per metaboard schematics....

Can any one help me plzzzzz :-?
Logged

0
Offline Offline
God Member
*****
Karma: 0
Posts: 572
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Did you flash the correct bootloader? I used a Mega168 as opposed to your Mega8. When I first plug it in, I get the "Unknown Device" message, but when I set the bootloader jumper, and press the reset button, I get a "USBasp Device Connected" message, as it asked for the driver.
Logged

Norway
Offline Offline
Sr. Member
****
Karma: 0
Posts: 370
R-Doo-Inoo in the making :3
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

now this has to be tried smiley
 wen i get the needed parts smiley-sad
Logged

B-dui in creation.

0
Offline Offline
Newbie
*
Karma: 0
Posts: 4
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Fimware folder had different .hex files, I choosed the right one for me mega8_16hz as I was using ATMega8 at 16MHz. I loaded this file both from avrdude & CVAVR tools. I did do reset with bootloader jumpered, every time I do reset with jumper I get "Unknown Device" error. If I do reset without jumper winXP is not at all detecting..which I thik is OK because without jumper bootloader doesn't come into picture....


Let me know ur comments.....
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 32
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I employ a simple programmer by attiny2313.
Simple AVR Programmers
http://elm-chan.org/works/avrx/usbspi.zip

I made an META board with mega168.
I recognize win2k to operate HWB-SW.
Following .bat displays device driver easily (and with non-indication as indication).
at Usbasp

"pause
set devmgr_show_nonpresent_devices=1
cd %SystemRoot%\system32
start devmgmt.msc
"
However, I do not know a method to let arduino read firm ware.
How can you read it if you do it?
Please show somebody including order concretely.
« Last Edit: October 11, 2008, 09:53:06 am by apollo21 » Logged

Pages: [1]   Go Up
Arduino Forum upgrade scheduled for Monday, October 20th, 11am-4pm (CEST). Sorry for the inconvenience!
Jump to: