Actions

Difference between revisions of "Main Page"

From Just in Time

 
(91 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<big>JustInTime Project Pages</big>
+
=Just In Time Project Pages=
 +
These pages contain descriptions of our electronics projects, mainly involving [http://www.atmel.com/products/avr/ AVR] microcontrollers.
 +
__TOC__
 +
==Featured==
 +
{| class="wikitable" border="1"
 +
|-
 +
|style="width:64px;"|[[File:Ws2811 thumbnail.jpg|upright=1.0|link=Driving the WS2811 at 800 kHz with an 8 MHz AVR]]
 +
| '''WS2811 LED strips & 8Mhz AVR'''
 +
Want to know how to drive a WS2811 led string from an 8 Mhz AVR? [[Driving the WS2811 at 800 kHz with an 8 MHz AVR|This page]] has the code and explains it. Works for Arduino too...
 +
|-
 +
|[[File:Hamsterwheel thumbnail.png|64px|link=Internet of Hamsters]]
 +
|'''Internet of Hamsters'''
 +
It's [[Internet of Hamsters|hamsters]]. It's internet. What more could you possible want?
 +
|-
 +
|[[File:Telescope thumbnail.png|64px|link=WiFi telescope and camera control]]
 +
|'''Telescope and camera control'''
 +
[[WiFi telescope and camera control|WiFi-to-serial bridge]] allowing existing apps to talk to a telescope, but also control an attached camera
 +
|-
 +
| [[File:Transceiver433 cropped.jpg|64px|link=Cheapest ever 433 Mhz transceiver for PCs]]
 +
| '''USB 433Mhz transceiver for $3'''
 +
Cheap 433Mhz receivers and transmitters are ideal to communicate with your microcontroller, but can also be used to control inexpensive RF-controlled switches. If you've got $3, an ebay account and a soldering iron, you can now [[Cheapest ever 433 Mhz transceiver for PCs|control your light switches through a USB port]].
 +
|-
 +
| [[File:FD8 thumb.jpg|64px|link=Digital FD-8 pedal]]
 +
| '''Digital FD-8 repair'''
 +
Roland FD-8 hi-hat pedals have a tendency to become unresponsive over time. Instead of trying to repair the internal film resistor, why not completely [[Digital FD-8 pedal|replace its guts with a small microcontroller]] for accurate control without wear and tear? If you think a microcontroller is overkill, we also have [[Roland FD-8 Issues: Hall Sensor Modification|an analog electronics version]].
 +
|-
 +
| [[File:Straddling header thumbnail.jpg|64px|link=Evolution of breadboard programming headers]]
 +
| '''Breadboard AVR Programming Headers'''
 +
To celebrate the release of Vinnies [[Vinnies Definite Straddling Header‎‎|student-proof, straddling programming header]], we've finally gotten around to documenting the [[Evolution of breadboard programming headers|programming headers]] we use for AVR breadboard programming!
 +
|}
  
You'll find some descriptions of [http://www.parallax.com/sx/index.asp SX] and [http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=74 PIC] projects on these pages. And [[other stuf]].
+
==Projects==
===Projects===
+
Here are some finished, or work in progress activities:
* As a 'hello world' #2 exercise, we've done some [[Knight Rider]] walking led experiments. These experiments demonstrate: pwm, either through SX [[Virtual Peripherals]] or inline and [[How to drive many leds with a few io-pins]].
+
{| class="wikitable sortable mw-collapsible" border="1"
* [[Driving a shift register led display driver]].
+
|-
* [[Driving 4 seven segment led displays]]
+
! Project
* [['Very Limited Space' Midi Sustain Pedal]].
+
! Page status
* [[Fake Cricket]].
+
! Project status
* [[Reading Rotary Encoders]]
+
|-
 +
| [[Identifying Christmas Lights]] (ongoing project log)
 +
|started
 +
|ongoing
 +
|-
 +
| [[Fast, arduino compatible digital pin functions]], digitalWrite() in 2 clock ticks
 +
| started
 +
| finished
 +
|-
 +
| [[Sending location information from an Android phone to a Nikon camera]]
 +
| started
 +
| halted
 +
|-
 +
| [[WS2811 "Water torture"]]
 +
| started
 +
| finished
 +
|-
 +
| [[Driving the WS2811 at 800 kHz with an 8 MHz AVR]]
 +
| finished
 +
| ongoing
 +
|-
 +
| [[4x4x4 Led Cube - AVR doing Bit Angle Modulation / Single PCB base]]
 +
| started
 +
| finished
 +
|-
 +
| [[Cheapest ever 433 Mhz transceiver for PCs]]
 +
| complete
 +
| finished
 +
|-
 +
|[[Roland FD-8 Issues: Hall Sensor Modification]]
 +
| complete
 +
| finished
 +
|-
 +
|[[Antique Clock Start Stop Automation]]
 +
| complete
 +
| finished
 +
|-
 +
|[[Knight Rider]] walking led experiments<br> demonstrating pwm, either through SX [[Virtual Peripherals]] or inline and [[How to drive many leds with a few io-pins]].
 +
| basic
 +
| finished
 +
|-
 +
|[[Wireless LCD display]]
 +
| rudimentary
 +
| finished
 +
|-
 +
|[[Driving a shift register led display driver]].
 +
| rudimentary
 +
| finished
 +
|-
 +
|[[Driving 4 seven segment led displays]]
 +
| not started
 +
| finished
 +
|-
 +
|[['Very Limited Space' Midi Sustain Pedal]].
 +
| not started
 +
| finished
 +
|-
 +
|[[Fake Cricket]].
 +
| complete
 +
| finished
 +
|-
 +
|[[Reading Rotary Encoders]]
 +
| complete
 +
| finished (component)
 +
|-
 +
|[[Oven temperature controller]]
 +
| in progress
 +
| halted
 +
|-
 +
|[[RGB Light Show (Wired/Wireless)]]
 +
| started
 +
| finished
 +
|-
 +
|Digital Analogue Clock with Traffic Light alarm
 +
| not started
 +
| finished
 +
|-
 +
|[[Diffusing Leds the Fast Way]]
 +
| complete
 +
| finished
 +
|}
  
===Programming===
+
Some older software projects:
For newer PICs, the picprog programmer needs to be [[Modified Pic Programmer|Modified]]. SX chips should best be programmed with the SX-Key or the SX-Blitz.
+
*An [[eclipse plugin for SX assembly language]].
 +
*[[Sxgo]], a fast, portable SX28 emulator.
  
Although almost each project could be done with an SX as well as a specific PIC chip, the approach and philosophy between both is quite different. Look at the [[differences between the SX and the PIC]] we found (on the internet) and discovered (ourselves) between the two competitors.  
+
==Programming AVRs==
 +
You might want to know how to [[running avrdude from eclipse under linux|run avrdude from eclipse under linux]].
  
A very useful utility for programming timing loops is [http://www.mnsi.net/~boucher/picloops.html PicLoops]. It works for SX as well as PIC.
+
Atmel has released a 4K version of the well-known Attiny2313, called the Attiny4313. It is fully (pin) compatible, with the only difference that it has double memory. The Attiny4313 is not yet recognized by Avrdude, so we have modified the Avrdude config file to be able to program it. [[ATtiny4313 AVRDude configuration|This link]] contains the Attiny4313 section that should be added to your config.
  
And how can you program a SOT23 package (i.e. the 10Fxxx series)? With an [[image:SOT23adapter.jpg|adapter]]
+
==Our set up==
 +
Nowadays, we prefer to do our stuff in SMT because it avoids the bore of drilling holes (yes, pun intended). And you can make use of cheap SMT resistor and capacitor assortments so you'll always have the right values available. Working in SMT requires making PCBs. We use the toner transfer method. One tip: the ironing sticks much better if the paper is wet. And one other tip: etching in [http://www.instructables.com/id/Stop-using-Ferric-Chloride-etchant!--A-better-etc/ cupric chloride] works very well and you never run out of etchant!
  
===Tutorial===
+
{|
 +
|-
 +
|[[File:CuCl.jpg|thumb]]
 +
|[[File:smt resistors.jpg|thumb]]
 +
|[[File:pcb printed.jpg|thumb]]
 +
|}
  
As there are many, many [http://www.google.nl/search?hl=nl&q=PIC+tutorial&meta= tutorials] about PICs on the internet, and the SX is very well [http://www.parallax.com/sx/downloads.asp#Documentation documented] by Parallax, we won't be serving another one here.
+
==ToDo List==
 
+
Here are some projects on our to do list:
===ToDo List===
+
* <s>CC2500 Wireless System</s>, on hold while we're working on the  
 
+
* Nordic NRF24L01+ wireless system (first library now part of [https://github.com/DannyHavenith/avr_utilities avr_utilities])
Here are some projects that need to be finished:
+
* Update our [[RGB Light Show (Wired/Wireless)|RGB spotlights]] to use Bit Angle Modulation
 +
* AVR DAC Audio playback
 
* Midi Chord generator
 
* Midi Chord generator
* 'Very Limited Space' Midi Sustain Pedal v2
 
* FireDept. Siren for the Firetruck of JustIn
 
* Traffic Light Toy
 
* Digital Analogue Clock with Traffic Light alarm
 
 
* Solarpower Chicken Lighting System
 
* Solarpower Chicken Lighting System
 
* PIC-based MidiFilePlayer
 
* PIC-based MidiFilePlayer
 
* Drumcomputer
 
* Drumcomputer
 
* DCC Train control system
 
* DCC Train control system
* Frequency Counter
+
* simple GPS logger based on rs232 receiver
 +
* sunrise alarm clock
  
Reminder to the maintainers: more documentation is in the [[WikiDocumentation]] pages.
+
Items that were on this list, but are finished now (without write-up)
 +
* 100Mhz SX based Frequency Counter (done)
 +
* AVR Bootloader System (done)

Latest revision as of 21:17, 19 November 2020

Just In Time Project Pages

These pages contain descriptions of our electronics projects, mainly involving AVR microcontrollers.

Featured

Ws2811 thumbnail.jpg WS2811 LED strips & 8Mhz AVR

Want to know how to drive a WS2811 led string from an 8 Mhz AVR? This page has the code and explains it. Works for Arduino too...

Hamsterwheel thumbnail.png Internet of Hamsters

It's hamsters. It's internet. What more could you possible want?

Telescope thumbnail.png Telescope and camera control

WiFi-to-serial bridge allowing existing apps to talk to a telescope, but also control an attached camera

Transceiver433 cropped.jpg USB 433Mhz transceiver for $3

Cheap 433Mhz receivers and transmitters are ideal to communicate with your microcontroller, but can also be used to control inexpensive RF-controlled switches. If you've got $3, an ebay account and a soldering iron, you can now control your light switches through a USB port.

FD8 thumb.jpg Digital FD-8 repair

Roland FD-8 hi-hat pedals have a tendency to become unresponsive over time. Instead of trying to repair the internal film resistor, why not completely replace its guts with a small microcontroller for accurate control without wear and tear? If you think a microcontroller is overkill, we also have an analog electronics version.

Straddling header thumbnail.jpg Breadboard AVR Programming Headers

To celebrate the release of Vinnies student-proof, straddling programming header, we've finally gotten around to documenting the programming headers we use for AVR breadboard programming!

Projects

Here are some finished, or work in progress activities:

Project Page status Project status
Identifying Christmas Lights (ongoing project log) started ongoing
Fast, arduino compatible digital pin functions, digitalWrite() in 2 clock ticks started finished
Sending location information from an Android phone to a Nikon camera started halted
WS2811 "Water torture" started finished
Driving the WS2811 at 800 kHz with an 8 MHz AVR finished ongoing
4x4x4 Led Cube - AVR doing Bit Angle Modulation / Single PCB base started finished
Cheapest ever 433 Mhz transceiver for PCs complete finished
Roland FD-8 Issues: Hall Sensor Modification complete finished
Antique Clock Start Stop Automation complete finished
Knight Rider walking led experiments
demonstrating pwm, either through SX Virtual Peripherals or inline and How to drive many leds with a few io-pins.
basic finished
Wireless LCD display rudimentary finished
Driving a shift register led display driver. rudimentary finished
Driving 4 seven segment led displays not started finished
'Very Limited Space' Midi Sustain Pedal. not started finished
Fake Cricket. complete finished
Reading Rotary Encoders complete finished (component)
Oven temperature controller in progress halted
RGB Light Show (Wired/Wireless) started finished
Digital Analogue Clock with Traffic Light alarm not started finished
Diffusing Leds the Fast Way complete finished

Some older software projects:

Programming AVRs

You might want to know how to run avrdude from eclipse under linux.

Atmel has released a 4K version of the well-known Attiny2313, called the Attiny4313. It is fully (pin) compatible, with the only difference that it has double memory. The Attiny4313 is not yet recognized by Avrdude, so we have modified the Avrdude config file to be able to program it. This link contains the Attiny4313 section that should be added to your config.

Our set up

Nowadays, we prefer to do our stuff in SMT because it avoids the bore of drilling holes (yes, pun intended). And you can make use of cheap SMT resistor and capacitor assortments so you'll always have the right values available. Working in SMT requires making PCBs. We use the toner transfer method. One tip: the ironing sticks much better if the paper is wet. And one other tip: etching in cupric chloride works very well and you never run out of etchant!

CuCl.jpg
Smt resistors.jpg
Pcb printed.jpg

ToDo List

Here are some projects on our to do list:

  • CC2500 Wireless System, on hold while we're working on the
  • Nordic NRF24L01+ wireless system (first library now part of avr_utilities)
  • Update our RGB spotlights to use Bit Angle Modulation
  • AVR DAC Audio playback
  • Midi Chord generator
  • Solarpower Chicken Lighting System
  • PIC-based MidiFilePlayer
  • Drumcomputer
  • DCC Train control system
  • simple GPS logger based on rs232 receiver
  • sunrise alarm clock

Items that were on this list, but are finished now (without write-up)

  • 100Mhz SX based Frequency Counter (done)
  • AVR Bootloader System (done)