Actions

Difference between revisions of "Main Page"

From Just in Time

 
(45 intermediate revisions by 2 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.atmel.com/products/avr/ AVR] [http://parallax.com/Default.aspx?tabid=248 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:
 
Here are some finished, or work in progress activities:
{| class="wikitable" border="1"
+
{| class="wikitable sortable mw-collapsible" border="1"
 
|-
 
|-
 
! Project
 
! Project
Line 10: Line 38:
 
! Project status
 
! Project status
 
|-
 
|-
| [[Controlling WS2811 led strings at 800kbit/s without external oscillator]]
+
| [[Identifying Christmas Lights]] (ongoing project log)
 +
|started
 +
|ongoing
 +
|-
 +
| [[Fast, arduino compatible digital pin functions]], digitalWrite() in 2 clock ticks
 
| started
 
| 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
 
| ongoing
 +
|-
 +
| [[4x4x4 Led Cube - AVR doing Bit Angle Modulation / Single PCB base]]
 +
| started
 +
| finished
 
|-
 
|-
 
| [[Cheapest ever 433 Mhz transceiver for PCs]]
 
| [[Cheapest ever 433 Mhz transceiver for PCs]]
Line 29: Line 77:
 
| basic
 
| basic
 
| finished
 
| finished
|-
 
|[[3D Miller controlled through rs-232]]
 
| basic
 
| halted
 
 
|-
 
|-
 
|[[Wireless LCD display]]
 
|[[Wireless LCD display]]
Line 60: Line 104:
 
|[[Oven temperature controller]]
 
|[[Oven temperature controller]]
 
| in progress
 
| in progress
| in progress (2012)
+
| halted
 
|-
 
|-
 
|[[RGB Light Show (Wired/Wireless)]]
 
|[[RGB Light Show (Wired/Wireless)]]
Line 68: Line 112:
 
|Digital Analogue Clock with Traffic Light alarm
 
|Digital Analogue Clock with Traffic Light alarm
 
| not started
 
| not started
 +
| finished
 +
|-
 +
|[[Diffusing Leds the Fast Way]]
 +
| complete
 
| finished
 
| finished
 
|}
 
|}
  
* Software projects:  
+
Some older software projects:  
**An [[eclipse plugin for SX assembly language]].
+
*An [[eclipse plugin for SX assembly language]].
**[[Sxgo]], a fast, portable SX28 emulator.
+
*[[Sxgo]], a fast, portable SX28 emulator.
  
==Notes==
+
==Programming AVRs==
Some links to notes, images from the manual, etc:
+
You might want to know how to [[running avrdude from eclipse under linux|run avrdude from eclipse under linux]].
 
 
* [http://www.parallax.com/Portals/0/Downloads/docs/prod/datast/SX20AC-SX28AC-Data-v1.6.pdf SX28 data sheet] with pin-outs, instruction set summary, memory model, etc.
 
 
 
==Programming==
 
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.
 
 
 
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.
 
 
 
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.
 
 
 
And how can you program a SOT23 package (i.e. the 10Fxxx series)? With a [[SOT23-to-DIL adapter]].
 
  
 
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.
 
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.
  
==Tutorials==
+
==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!
  
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/Default.aspx?tabid=460#Documentation documented] by Parallax, we won't be serving another one here.
+
{|
 
+
|-
You might want to know how to [[running avrdude from eclipse under linux|run avrdude from eclipse under linux]].
+
|[[File:CuCl.jpg|thumb]]
 +
|[[File:smt resistors.jpg|thumb]]
 +
|[[File:pcb printed.jpg|thumb]]
 +
|}
  
Nowadays, we prefer to do our stuff in SMT. Why? Because it avoids the bore of drilling holes. 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 PCB. We use the laserprinter/iron method. One tip: the ironing sticks much better if the paper is wet. And one other tip: etching in [http://members.optusnet.com.au/eseychell/PCB/etching_CuCl/index.html CupricChloride] works very well and you never run out of etchant!
 
 
==ToDo List==
 
==ToDo List==
 
+
Here are some projects on our to do list:
Here are some projects that need to be finished:
+
* <s>CC2500 Wireless System</s>, on hold while we're working on the  
* 100Mhz SX based Frequency Counter (done)
+
* Nordic NRF24L01+ wireless system (first library now part of [https://github.com/DannyHavenith/avr_utilities avr_utilities])
* AVR Bootloader System (done)
+
* Update our [[RGB Light Show (Wired/Wireless)|RGB spotlights]] to use Bit Angle Modulation
* CC2500 Wireless System, on hold while we're working on the  
 
* Nordic NRF24 wireless system
 
 
* AVR DAC Audio playback
 
* AVR DAC Audio playback
 
* Midi Chord generator
 
* Midi Chord generator
Line 113: Line 151:
 
* simple GPS logger based on rs232 receiver
 
* simple GPS logger based on rs232 receiver
 
* sunrise alarm clock
 
* 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)

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)