Archive | Electronics

Arduino Christmas Lights

With the recent purchase of an Arduino microcontroller, my interest in electronics was rekindled after many years hiatus. One of my goals back in the day was to create a colour organ where lghts would flash in beat with the music. With the Arduino, I can easily do that and much more, so I set about coming up with a project that made use of modern day LED’s. The result will be Christmas lights that:

Continue Reading →

Continue Reading

Costing a FastLED Display Locally

Here’s an approximate cost breakdown if I were to head into some local electronics stores to purchase components for my portable displays:

Miscellaneous items include zip tie, solder, a few sizes of heat shrink tubing.

Then there’s my labour at a minimum of $40/hr and it takes about 45 minutes to build one.

Oh, did I mention all the time I spent learning/developing the coding and techniques?

Continue Reading

Electronics Links

FSM

  • http://www.cs.washington.edu/education/courses/cse370/99sp/sections/may18/slides/sld002.htm

 

Amplifiers

  • http://www.electronics-tutorials.ws/amplifier/amp_2.html
  •  

    Good Links

  • http://tristesse.org/FPGA/CheapFPGADevelopmentBoards
  •  

    Courses

    • https://www.youtube.com/watch?v=JtXvUoPx4Qs&feature=youtu.be
    • http://scale.engin.brown.edu/classes/EN164S11/
    • http://www-inst.eecs.berkeley.edu/~cs150/sp13/agenda/
    • http://www.newae.com/tiki-index.php?page=IntroToDigitalCircuits
    • http://engineering.purdue.edu/~ece437l
    • http://ecee.colorado.edu/~ecen2350/AlteraSoftware/
    • http://mil.ufl.edu/3701/gcpu.html
    • http://engineering.purdue.edu/~ece437l
    • http://6004.mit.edu
    • http://www.cecs.csulb.edu/~rallison/pdf/

     

    Online Labs

    • http://teahlab.com
    • http://tams-www.informatik.uni-hamburg.de/applets/hades/webdemos/16-flipflops/10-srff/clocked-srff.html

     

    Cypress SoC Links

    I was given a Cypress PSoC 3 development kit. This includes an 8051 controller, programmable logic along with various analog components. The development software allows for visual design, lots of components in the libraries as well as programming in C. Oh, and I now have a PSoC 4 as well.

     

    TI MSP430

    I purchased this at the 2013 Vancouver Mini Maker Faire for $11.

     

    Bora Binary Explorer Links

    I purchased this board through the Kickstarter program. This board includes a Xilinx XC9572XL CPLD, which gives you equivalent to around 1600 gates.

     

    Altera FPGA Links

    I purchased an Altera DE1 development kit, which includes a Cyclone II FPGA. What an awesome looking board. 

     

    Altera De1

     

    Xilinx Links

    • http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,400&Cat=10
    • http://hamsterworks.co.nz/mediawiki/index.php/FPGA_course

     

    Verilog Links

    • http://cjdrake.github.io/verilog-flip-flop-macros.html
    • http://www.ee.ed.ac.uk/~gerard/Teach/Verilog/manual/index.html
    • http://vol.verilog.com/VOL/main.htm
    • http://www.asic-world.com/verilog/veritut.html
    • http://electrosofts.com/verilog/
    • http://sutherland-hdl.com/online_verilog_ref_guide/verilog_2001_ref_guide.pdf
    • http://www.verilogwiki.info/wiki/index.php/Tutorials
    • http://openhpsdr.org/wiki/index.php?title=Verilog

     

    VHDL Links

    • They would go here!

     

    CPU’s

     

    CPU Design

     

    Links Sites

    • http://homebrewcpu.com/links.htm
    • http://www.faqs.org/docs/Linux-HOWTO/CPU-Design-HOWTO.html#ss4.1

     

    Digital Simulators (see Altera for Modelsim)

     

    Analog Simulators

    • http://www.linear.com/designtools/software/#LTspice 
    • http://www.new-wave-concepts.com/pr/livewire.html 

     

    Books

    • Digital Design And Computer Architecture
    • Digital Design Principles And Practices
    • Fundamentals of Logic Design
    Continue Reading

    Arduino Resources

    References

    • http://vancouverroboticsclub.org

    Suppliers

    • http://www.seeedstudio.com
    • http://arduino-direct.com
    • http://www.makershed.com
    • http://www.adafruit.com
    • http://www.sparkfun.com
    • http://www.robotshop.com (Canada)
    • http://www.rpelectronics.com (Vancouver)
    • http://www.mainelectronics.com (Vancouver)

    Continue Reading →

    Continue Reading

    Infrared Circuit

    Before integrating all of the circuits, let’s demonstrate the IR receiver circuit.

    Get a Universal Remote and program/test it until you see output from the debugger of the Arduino. It seems to work well with the Universal Remote programmed as a Sony controller.

    IR test code:


    //
    // Universal remote decoder example for Arduino
    //
    // This simple program reads/decodes the output of a Universal Remote and displays the value.
    //
    // The IRremote.h library was referenced and downloaded from these locations:
    //
    // http://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html
    // http://www.pjrc.com/teensy/td_libs_IRremote.html
    //
    // I used a universal remote, and programmed it until the software recognized the output.
    // It was an Innovage Jumbo Universal Remote and programmed it as Sony 004.
    //
    // I also used a 3 pin KSM-603LM Optic receiver module where:
    //
    // pin 1 -> pin 7 of Arduino, pin 2 -> GND, pin 3 Vcc
    //

    #include

    int RECV_PIN = 7; // A nice out of the way pin to connect the receiver to
    IRrecv irrecv(RECV_PIN); // Initialize which pin we are receiving on
    decode_results results; // Define the variable for storing 'results'

    unsigned long oldmillis = 0; // Use my own delay to add a little debouncing

    void setup() {
    Serial.begin(9600);
    irrecv.enableIRIn(); // Start the receiver
    }

    void loop() {
    if (irrecv.decode(&results)) { // If there is a result . .
    if (millis() - oldmillis > 300) { // Debounce for 300ms
    Serial.println(results.value, HEX); // Print the value
    oldmillis = millis(); // Reset the delay timer
    }
    irrecv.resume(); // Receive the next value
    }
    }

    Continue Reading

    Digital Electronics Links

    FSM

    • http://www.cs.washington.edu/education/courses/cse370/99sp/sections/may18/slides/sld002.htm

     

    Good Links

  • http://tristesse.org/FPGA/CheapFPGADevelopmentBoards
  •  

    Courses

    • http://scale.engin.brown.edu/classes/EN164S11/
    • http://www-inst.eecs.berkeley.edu/~cs150/sp13/agenda/
    • http://www.newae.com/tiki-index.php?page=IntroToDigitalCircuits
    • http://engineering.purdue.edu/~ece437l
    • http://ecee.colorado.edu/~ecen2350/AlteraSoftware/
    • http://mil.ufl.edu/3701/gcpu.html
    • http://engineering.purdue.edu/~ece437l
    • http://6004.mit.edu
    • http://www.cecs.csulb.edu/~rallison/pdf/

     

    Online Labs

    • http://teahlab.com
    • http://tams-www.informatik.uni-hamburg.de/applets/hades/webdemos/16-flipflops/10-srff/clocked-srff.html

     

    Cypress SoC Links

    I was given a Cypress PSoC 3 development kit. This includes an 8051 controller, programmable logic along with various analog components. The development software allows for visual design, lots of components in the libraries as well as programming in C. Oh, and I now have a PSoC 4 as well.

     

    TI MSP430

    I purchased this at the 2013 Vancouver Mini Maker Faire for $11.

     

    Bora Binary Explorer Links

    I purchased this board through the Kickstarter program. This board includes a Xilinx XC9572XL CPLD, which gives you equivalent to around 1600 gates.

     

    Altera FPGA Links

    I purchased an Altera DE1 development kit, which includes a Cyclone II FPGA. What an awesome looking board. 

     

    Altera De1

     

    Xilinx Links

    • http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,400&Cat=10
    • http://hamsterworks.co.nz/mediawiki/index.php/FPGA_course

     

    Verilog Links

    • http://www.ee.ed.ac.uk/~gerard/Teach/Verilog/manual/index.html
    • http://vol.verilog.com/VOL/main.htm
    • http://www.asic-world.com/verilog/veritut.html
    • http://electrosofts.com/verilog/
    • http://sutherland-hdl.com/online_verilog_ref_guide/verilog_2001_ref_guide.pdf
    • http://www.verilogwiki.info/wiki/index.php/Tutorials
    • http://openhpsdr.org/wiki/index.php?title=Verilog

     

    VHDL Links

    • They would go here!

     

    CPU’s

     

    CPU Design

     

    Links Sites

    • http://homebrewcpu.com/links.htm
    • http://www.faqs.org/docs/Linux-HOWTO/CPU-Design-HOWTO.html#ss4.1

     

    Digital Simulators (see Altera for Modelsim)

     

    Analog Simulators

    • http://www.linear.com/designtools/software/#LTspice 
    • http://www.new-wave-concepts.com/pr/livewire.html 

     

    Books

    • Digital Design And Computer Architecture
    • Digital Design Principles And Practices
    • Fundamentals of Logic Design
    Continue Reading

    ASUS TF700T Tablet Review

    I have to admit that when the iPad3 came out, I was mighty impressed with its’ Retina display and was surprised that no other competitor that I was aware of even came close. Kudos to Apple and their suppliers for pulling off that amazing feat. As for myself, I’m not a fan of iTunes and have been looking for a tablet, but on an alternate platform. Being the owner of an Android phone, an Android based tablet seemed a good fit.

    My needs are:

    • Ability to display portrait or landscape via tilt
    • Touchscreen navigation
    • Wi-Fi
    • Must be close or equal to iPad3 resolution and screen size (1920×1200 minimum)
    • Able to plug in MicroUSB or SD card
    • Can plug into my desktop/laptop and appear as an external hard drive
    • Has a Gmail email/contacts/scheduling client (and syncs across my various devices)
    • Can display my techie PDF files clearly and without the need to magnify/scroll around every single page
    • Runs media consumption applications, ie Newsreaders, browser, Youtube
    • To comfortably use the device in bed
    • Watch movies

    My needs are NOT:

    • Creation or updating of documents/spreadsheets
    • Running the latest/greatest games
    • To replace a laptop or desktop

    Ultimately, the TF700T serves as a fancy bookreader for me. Expensive? Yes. Quick? Yes. Crystal clear? At 10″ and 1920×1200 pixel resolution, most definitely.

    One the negative side, I wasn’t impressed with the non-standard charging port on the ASUS. It reminded me of the one in use on the Apple products and I would have much preferred an industry standard Micro USB port.

    Oh, and I plugged a mouse into the USB port of the keyboard and it worked just fine – but I normally don’t use it. I also disabled the touchpad on the keyboard as I found it got in the way of typing.

    Do I feel what I paid was worth it? Compared to the iPad and currently available Android tablets, very much so.

    I’m very happy with the TF700T and add-on keyboard. I don’t expect it to match the content creation capabilities of a laptop or desktop, but then I already had an Android phone and was aware of the capabilities of the platform.

    Would I take the tablet on the subway or bus? In that case, I would probably have preferred a 7″ tablet, like the Nexus. That seems to be a much more ‘on the go’ device than the 10″ based TF700T.

     

    Based on my needs, I would give this tablet 9/10.

     

    Want to replace your laptop with a Tablet? I would not recommend it.

    Update: After owning this tablet for over a year, I find that the web browsing on it is very sub par. The score for this table has now dropped to 7/10.

    Continue Reading

    Getting Back Into Electronics

    After a 25+ year hiatus, I started to get back into electronics about a year ago. It started around the 2012 Vancouver Mini Maker Faire with the purchase of an Arduino Uno. After creating a couple of basic LED projects, I then purchased a strip of RGB LED’s along with a video remote and wrote a program that displayed a variety of patterns and to be controlled remotely. From there, I created a project whereby the LED’s would respond to sound, followed by a small Sumo Bot.

    Other items I’ve recently acquired include:

    • Raspberry Pi (a tiny Linux computer)
    • Bora Binary Explorer (Xilinx based CPLD development kit)
    • Altera DE1 FPGA development kit
    • Cypress SoC 3 development kit
    • Cypress SoC 4 development kit

    It’s been a while since I was working with electronics at this level, as I’ve been in IT for so long. Back in the 80’s, I worked with various processors, including:

    • 8080
    • 6502
    • 6800 and 6802
    • Z80
    • 8088
    • 68000
    • Z8000

    My first ‘computer’, in 1980, was a Motorola 6802 D3 evaluation kit. It included some built-in ROM, a hex keyboard/display as well as 128 bytes of RAM. If you wanted anything else, you had to either make it or buy it at a horrific cost. I ended up designing and wire-wrapping additional memory (which worked), and a cassette interface, which almost worked. After a while, I thought about my end goal, which was to program some graphics and create more hardware. As a result, in December of 1981, I purchased an IBM PC for $5,500, which was almost 1/3 of my gross income at the time. I enjoyed programming the PC in assembly language and wrote some nice graphics programs for it, including a 3D starfield, a small 3D’ish star game as well as a CGA hack for Microsoft Flight Simulator.

    I purchased an Amiga 1000 in 1985 as it was significantly ahead of any other platform at the time. It had:

    • Motorola 68000 CPU
    • Graphical user interface
    • Multi-tasking
    • Command line interface
    • Dedicated chips for colour graphics
    • Dedicated chips for sound
    • System documentation and development tools

    What was not to like.

    Getting back to the old CPU’s, the challenge with them is that they all ran at speeds under 10Mhz. In order to go faster, you required either:

    • AMD 2900
    • Motorola 10800

    I spent some time reading about the AMD2900, but had neither the technical background, the time nor the funding to implement that in any fashion. With the development of FPGA’s (field programmable gate arrays) in the 90’s, engineers have been able to create their own CPU’s without requiring a series of dedicated chips to do so. With the use of my recently acquired FPGA development kits, I hope to re-learn some of the basics of hardware design and possibly develop a simple CPU. I don’t, however want all the muss and fuss of wire-wrapping 7400 series components like the old days.

    Continue Reading