Post what you would like to see in the kit, as apparently I have no idea what you're interested in Razz

I'll start off:

Should we go with a dev board for a microcontroller or start from scratch?

Should we incorporate LCDs?

Calculator projects?

Video game related projects?

Should we focus more on analog electronic projects or digital ones?
Definitely lots of digital stuff. Calculator interfacing, especially with some kind of microcontroller for more powerful external device control, would be excellent (I2C, anyone?).
Digital is definitely easier (not to mention more fun). I'd second I²C parts (DS1307 and some sort of EEPROM). Dallas 1-wire digital thermometers are fun, too, but the protocol is a bit more involved than I²C. (For debugging purposes I find serial comms also invaluable, but if the microcontroller doesn't have a UART you can always bit-bang that yourself). If you go for an LCD you may want to go for a serial LCD, of course, so a UART would be very useful there - a handful of seven-segment displays can display hexadecimal numbers and provide learning experience for multiplexing, too. Wink

Development boards and "official" programmers always seem to be outrageously expensive so I've always gone with a home-made programmer. Building the programmer is a useful starter project, of course (and need not be very complex, eg SI Prog for AVRs and PICs). Popular budget microcontrollers don't seem to need much in the way of support circuitry these days, not even an external resonator!
Definitely no need for a 'proper' dev board. Expecially with, say, a small-ish AVR, just throw it on a breadboard with some form of power supply cicruit and there's still lots of space to work with.

I agree with Ben, digital projects are the way to go. In addition, if you can get the parts for a programmer for cheap enough, it's a great beginning project. Get some idea of how things work before getting into the fun with micros. Smile

As for components, including general interface hardware is a good idea. I'd say a MAX232 or FT232 (for USB fun) and some sort of small graphical LCD (SparkFun sells this, for example, which has a driver very similar to the T6A04 used in the 83+ series) would be very useful. Throw in some basic buttons for input and you can make basic games on it, too.
I like the idea of using even simple LCDs.

Calc and video game related projects - meh. I don't even know where my TI-84 is anymore...

Analog vs. digital - don't really care.

Absolutely must use USB, as I have no serial or parallel ports whatsoever. I've got a PIC USB programmer, though (the PIC Kit 2 I believe)
benryves wrote:
Digital is definitely easier (not to mention more fun). I'd second I²C parts (DS1307 and some sort of EEPROM). Dallas 1-wire digital thermometers are fun, too, but the protocol is a bit more involved than I²C. (For debugging purposes I find serial comms also invaluable, but if the microcontroller doesn't have a UART you can always bit-bang that yourself). If you go for an LCD you may want to go for a serial LCD, of course, so a UART would be very useful there - a handful of seven-segment displays can display hexadecimal numbers and provide learning experience for multiplexing, too. Wink


I think I put in a digital thermometer in the kit list, have to look it up...

You think we should use EEPROM chips or FLASH chips?

The Tari wrote:
Definitely no need for a 'proper' dev board. Expecially with, say, a small-ish AVR, just throw it on a breadboard with some form of power supply cicruit and there's still lots of space to work with.

I agree with Ben, digital projects are the way to go. In addition, if you can get the parts for a programmer for cheap enough, it's a great beginning project. Get some idea of how things work before getting into the fun with micros. Smile

As for components, including general interface hardware is a good idea. I'd say a MAX232 or FT232 (for USB fun) and some sort of small graphical LCD (SparkFun sells this, for example, which has a driver very similar to the T6A04 used in the 83+ series) would be very useful. Throw in some basic buttons for input and you can make basic games on it, too.


I'm probably not going to include the MAX232 as only a few of us still have full-spec serial ports around; however, I will be including a serial cable to initially program the PIC18F2550 (or maybe PIC18F2450) via a JDM-esque programmer I'm still working on for the USB multi-chip programmer (http://openprog.altervista.org/OP_eng.html).

As for the FT232, there's no need for it as all the microcontrollers we'd be using all have onboard USB (or can be virtualized in software).

In regards to using an LCD, what would you guys be interested in using? A simple 20x2 character lcd, graphic lcd, oled lcd, etc.?
Ultimate Dev'r wrote:
I think I put in a digital thermometer in the kit list, have to look it up...
A DS18B20 is cheap and pretty accurate, though it does return its results in Celsius. If this kit is geared towards learning then a thermistor connected to a microcontroller's ADC may be a more useful teaching experience, though.
Quote:
You think we should use EEPROM chips or FLASH chips?
I was going on the assumption that the microcontrollers you had picked had a limited amount of built-in storage, so an external memory could be used to load/save data. 24-series I²C EEPROMs are cheap and easy.

If you're connecting your microcontroller to a modern PC's serial port, then a MAX232 is overkill. A suitably large resistor (22K) to limit current should deal with the +12V from the PC and the microcontroller's internal clamping diodes should deal with the corresponding -12V; and although the standard asks for at least +3V/-3V when sending data back from the microcontroller most ports are happy with +5V/0V.
benryves wrote:
Ultimate Dev'r wrote:
I think I put in a digital thermometer in the kit list, have to look it up...
A DS18B20 is cheap and pretty accurate, though it does return its results in Celsius. If this kit is geared towards learning then a thermistor connected to a microcontroller's ADC may be a more useful teaching experience, though.


*digs through forum and pulls up old kit list*

I have the LM335Z Temperature Sensor IC in the kit; here's the datasheet.

benryves wrote:
Ultimate Dev'r wrote:
You think we should use EEPROM chips or FLASH chips?
I was going on the assumption that the microcontrollers you had picked had a limited amount of built-in storage, so an external memory could be used to load/save data. 24-series I²C EEPROMs are cheap and easy.


The microcontrollers I have in the kit right now (suggestions are welcome) are:
01M6901, 1, ATMEGA8 Microcontroller
69K7639, 1, PIC16F877 Microcontroller
74K8623, 1, PIC18F4550 Microcontroller

So they all have onboard EEPROM and are generally a lot more powerful than the PIC12C508 and PIC16F84 chips we grew up on Razz

benryves wrote:
If you're connecting your microcontroller to a modern PC's serial port, then a MAX232 is overkill. A suitably large resistor (22K) to limit current should deal with the +12V from the PC and the microcontroller's internal clamping diodes should deal with the corresponding -12V; and although the standard asks for at least +3V/-3V when sending data back from the microcontroller most ports are happy with +5V/0V.


Wow; that's a lot simpler than the way I've been doing it (using transistors as level shifters similar to figure 1A: http://www.ermicro.com/blog/wp-content/uploads/2008/12/rs232_02.jpg) I'll have to give this a try Good Idea
The PICs you mentioned have 256 bytes of EEPROM and the AVR has 512 bytes - I was thinking more of something like a 24C512 which would let you load/store 64KB. Of course, if you're feeling clever you could interface directly with an SD card or similar over SPI instead. Smile

The PICAXE download circuit (page 7) uses the sort of serial interface that I mentioned; the 10k resistor is just to pull the serial download pin low when the programming cable is disconnected. The cable doesn't have anything special inside it (it's one of those old 3.5mm stereo jack serial cables that you used to find on digital cameras) and the PICAXE chips are just regular PIC micros with a preinstalled BASIC interpreter.
benryves wrote:
The PICs you mentioned have 256 bytes of EEPROM and the AVR has 512 bytes - I was thinking more of something like a 24C512 which would let you load/store 64KB. Of course, if you're feeling clever you could interface directly with an SD card or similar over SPI instead. Smile

The PICAXE download circuit (page 7) uses the sort of serial interface that I mentioned; the 10k resistor is just to pull the serial download pin low when the programming cable is disconnected. The cable doesn't have anything special inside it (it's one of those old 3.5mm stereo jack serial cables that you used to find on digital cameras) and the PICAXE chips are just regular PIC micros with a preinstalled BASIC interpreter.


The PIC18F4550 has 32k of program memory and 2k of RAM, so 256 bytes of EEPROM isn't likely to be an issue.
Kllrnohj wrote:
benryves wrote:
The PICs you mentioned have 256 bytes of EEPROM and the AVR has 512 bytes - I was thinking more of something like a 24C512 which would let you load/store 64KB. Of course, if you're feeling clever you could interface directly with an SD card or similar over SPI instead. Smile

The PICAXE download circuit (page 7) uses the sort of serial interface that I mentioned; the 10k resistor is just to pull the serial download pin low when the programming cable is disconnected. The cable doesn't have anything special inside it (it's one of those old 3.5mm stereo jack serial cables that you used to find on digital cameras) and the PICAXE chips are just regular PIC micros with a preinstalled BASIC interpreter.


The PIC18F4550 has 32k of program memory and 2k of RAM, so 256 bytes of EEPROM isn't likely to be an issue.


Not if you want to do a lot of logging & data storage (i.e. extra lcd fonts & graphics, constant temperature readings, etc.), but then again, that's still up in the air if anyone's interested in doing this with the kit.
Ultimate Dev'r wrote:
Not if you want to do a lot of logging & data storage (i.e. extra lcd fonts & graphics, constant temperature readings, etc.), but then again, that's still up in the air if anyone's interested in doing this with the kit.


I'm pretty sure (on the PIC18F, anyway) that you can read/write to the program memory without issue. So you still have 32k to divide between code and data.
I know you can write (and hence read) to program memory on the 16F877, as well. It has two sectors, 0000-0FFF, and 1000-1FFF.
Looky what I found: http://atmel.com/dyn/products/product_card.asp?part_id=4600

Also, I'm leaning more towards putting in a dev board of some sort and buying discrete components to play with instead of building everything from scratch, to cut costs and to solve the catch-22 of needing a programmer to program a chip, but no way to program the chip in the programmer (we wouldn't have this problem if a) PC manufacturers kept serial ports on motherboards and b) there was a cheap USB-TTL cable or DIP package Mad).
What type of LCD do you guys want? 8x2, 16x2, or a graphic LCD?
Ultimate Dev'r wrote:
What type of LCD do you guys want? 8x2, 16x2, or a graphic LCD?
What kind of graphic LCD were you thinking of? The easiest to output to is the simplest 8x2 or 16x2 Hitachi-compatible display, so think that would be a good place to start.
Those are indeed pretty easy to work with, but I rather think it would be more useful to have a smaller graphic LCD, such as sparkfun's 128x64 serial graphic LCD. As a bonus, the driver on that is very similar to the 83+'s T6A04.
KermMartian wrote:
Ultimate Dev'r wrote:
What type of LCD do you guys want? 8x2, 16x2, or a graphic LCD?
What kind of graphic LCD were you thinking of? The easiest to output to is the simplest 8x2 or 16x2 Hitachi-compatible display, so think that would be a good place to start.


I was thinking of a graphic LCD using the KS0108 controller, similar to the one The Tari posted. Only problem is, nobody wants to spend more than ~$45 on the kit, so I'm trying to see where I can make some cuts.

Right now I'm thinking of going over to the dark side and putting in an Arduino into the kit as they have a MASSIVE project database and popularity, and they are essentially just ATMega328 dev boards. I'm looking into putting in a Freeduino kit & soldering kit (that way you can build your own dev board), or putting in a Duemilanove instead (lower cost, but you don't get the fun of building it). The reason I'm doing this is because not everyone has legacy serial/parallel ports to initially program a chip for a programmer and buying a preprogrammed chip, protoboard, discrete components, FT232RL (smd part) for USB comm and bit banging to program the chip are more expensive and difficult to put together for a beginner than buying an Arduino. Plus with an Arduino you can add "shields" (add-on boards) and whatnot later on down the road.

Dev Boards

Arduino Duemilanove - newest Arduino board with an ATMega328 at its core; ~$27

Freeduino kit - Compatible with the Duemilanove; only difference is that this needs to be assembled. ~$23


Memory

SD-card connector - Allows you to use SD cards in projects, but breakout boards for those things are +$10

EEPROM - tiny, but cheap (~$1 for 512K)

FLASH - expensive in PDIP (breadboard-friendly) format


LCD

8x2 - Very tiny, doesn't show a lot, but cheap (~$5)

16x2 - Good middle ground; 2 lines of 16 characters should be able to display most text-based items of interest (~$8)

128x64 Graphic LCD - Most versatile; can display anything you want on screen; most expensive of all (~$15-$20)


Sensors

Temperature sensor - Allows you to read in ambient temperature over a serial protocol


Speaker

Speaker - Good for listening to chip-generated music; ~$1


Discrete Components

Found a good grab bag here
Found a very good intro to electronics tutorial here
Might want to take a look at this kit for parts guidance

LEDs - Indicators; very cheap

Resistors - not sure exact values; very cheap

Capacitors - not sure exact values; very cheap

Transistors - NPN, PNP; very cheap

Pushbuttons - Gotta have these (actually everything in this category); very cheap


Prototyping

Soldering Kit - Allows you to bond electronic components with MOLTEN METAL; ~$10-$15 (only required if you get the Freeduino kit)

Solderless breadboard - Need this; price dependent on size (~$4 for 170 holes, ~$6 for 830)

Jumper wires - Without these you're going nowhere with the kit; ~$5-$10


TL;DR
Right now I can make a kit that does everything for about $60-$75. It all comes down to what everyone is willing to sacrifice; parts or their cash.
I'm gonna be getting some prize money from IBM soon Smile so I'm cool with paying a bit more for a more inclusive kit with an Arduino. Really, I've done almost nothing in this area, so I'm up for learning anything, as long as it's programmer by USB Very Happy
I'm willing to pay upwards of $100 if need be
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 3
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement