http://embeddedcomputer.nl/lanotattachments/download/file/id/3/store/1/
Booting Ubuntu on BeagleBoard Black
http://circuitco.com/support/index.php?title=Booting_Ubuntu_on_BeagleBoard_Black
Linux on ARM / Home:
http://eewiki.net/display/linuxonarm/BeagleBone+Black
uEnv.txt based bootscript:
Beaglebone Black CircuitCo support page:
http://circuitco.com/support/index.php?title=BeagleBoneBlack
BeagleBone Boot Sequence.
http://elinux.org/EBC_Exercise_21a_Boot_Sequence#Booting_Up
Unbrick
http://hipstercircuits.com/unbrick-beaglebone-black-without-erasing-emmc/
Angstrom Cloud9 distribution download
http://downloads.angstrom-distribution.org/demo/beaglebone/
Burning an IMG File
http://doc.freenas.org/index.php/Burning_an_IMG_File
6+ hour:
Building Angstrom for Beaglebone from Source:
http://derekmolloy.ie/building-angstrom-for-beaglebone-from-source/
http://nomel.tumblr.com/post/30357133735/beaglebone-tutorial-how-to-compile-kernel-modules-and
Showing posts with label Hardware. Show all posts
Showing posts with label Hardware. Show all posts
Monday, September 30, 2013
Wednesday, September 25, 2013
RT-N16
http://www.dd-wrt.com/wiki/index.php/Asus_RT-N16
http://www.anandtech.com/show/6180/open-source-router-platforms
OpenWRT
http://wiki.openwrt.org/toh/asus/rt-n16#from.linux
http://www.anandtech.com/show/6180/open-source-router-platforms
OpenWRT
http://wiki.openwrt.org/toh/asus/rt-n16#from.linux
Sunday, August 4, 2013
Pi expand board
Camera Documentation
http://www.raspberrypi.org/archives/4483
Hardware control
http://www.raspberrypi.org/archives/4492
Laika
http://www.project-laika.com/about-laika
http://www.raspberrypi.org/archives/4483
Hardware control
http://www.raspberrypi.org/archives/4492
Laika
http://www.project-laika.com/about-laika
Saturday, August 3, 2013
RTC real time clock and raspberry pi
http://en.wikipedia.org/wiki/Real-time_clock
Supercapacitor
Setup with raspberry pi
http://learn.adafruit.com/adding-a-real-time-clock-to-raspberry-pi/set-rtc-time
Supercapacitor
Setup with raspberry pi
http://learn.adafruit.com/adding-a-real-time-clock-to-raspberry-pi/set-rtc-time
Saturday, April 20, 2013
Circular buffer and Sliding Sindow Step Detection Implementation
Circular Buffer/Cyclic Buffer/ring buffer
Single fixed size buffer, end to end:
Easily to buffering data streams
FIFO, implementation strategy for a queue
http://en.wikipedia.org/wiki/Circular_buffer
Difficulties
Full/Empty Distinction
Library
http://websvn.hylands.org/filedetails.php?repname=Projects&path=%2Fcommon%2FCBUF.h&rev=0&sc=0%3E
Single fixed size buffer, end to end:
Easily to buffering data streams
FIFO, implementation strategy for a queue
http://en.wikipedia.org/wiki/Circular_buffer
Difficulties
Full/Empty Distinction
Library
http://websvn.hylands.org/filedetails.php?repname=Projects&path=%2Fcommon%2FCBUF.h&rev=0&sc=0%3E
Thursday, April 11, 2013
Sunday, April 7, 2013
VHDL: Converting from an INTEGER type to a STD_LOGIC_VECTOR
http://electronics.stackexchange.com/questions/4482/vhdl-converting-from-an-integer-type-to-a-std-logic-vector
use ieee.numeric_std.all;
...
my_slv <= std_logic_vector(to_unsigned(my_int, my_slv'length));
Saturday, April 6, 2013
Multiple declaration of unsigned include via multiple use clauses; none are made directly visible
USE ieee.numeric_std.all;
USE ieee.std_logic_arith.ALL;
Xilinx ISE VHDL to Symbol
http://www.xilinx.com/itp/xilinx10/isehelp/pp_p_process_create_schematic_symbol.htm
Schematic overview
http://www.xilinx.com/itp/xilinx10/isehelp/ise_c_schematic_overview.htm
Related discussion: Conversion of VHDL code to symbol
http://forums.xilinx.com/t5/Design-Entry/Conversion-of-VHDL-code-to-symbol/td-p/29535
ISE quick starting guide
http://cseweb.ucsd.edu/classes/wi11/cse141L/Media/Quick-Tutorial-11.pdf
Schematic overview
http://www.xilinx.com/itp/xilinx10/isehelp/ise_c_schematic_overview.htm
Related discussion: Conversion of VHDL code to symbol
http://forums.xilinx.com/t5/Design-Entry/Conversion-of-VHDL-code-to-symbol/td-p/29535
ISE quick starting guide
http://cseweb.ucsd.edu/classes/wi11/cse141L/Media/Quick-Tutorial-11.pdf
Friday, April 5, 2013
ADXL 345 Application Notes
http://www.analog.com/static/imported-files/application_notes/AN-1063.pdf
Quick Start Guide:
http://www.analog.com/static/imported-files/application_notes/AN-1077.pdf
Data format 16bit (13 bit) /bit
C Programming Sample
http://mbed.org/cookbook/ADXL345-Accelerometer
Quick Start Guide:
http://www.analog.com/static/imported-files/application_notes/AN-1077.pdf
Data format 16bit (13 bit) /bit
C Programming Sample
http://mbed.org/cookbook/ADXL345-Accelerometer
Wednesday, April 3, 2013
NI cRIO setup
General Tutorial of NI cRIO Hardware-Software setup
http://www.ni.com/gettingstarted/setuphardware/compactrio/
Make sure correct version of LabView
http://joule.ni.com/nidu/cds/view/p/id/3769/lang/en
DriverSet Collection Page
http://search.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/ssnav:ndr/q/ni-rio/
Version List
ftp://ftp.ni.com/pub/devzone/tut/crio_software_versions.htm
Driver List
http://www.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/catnav:du,n8:4.9547.9548,ssnav:ndr/
cRIO crossover cable setup
http://forums.ni.com/t5/LabVIEW/How-to-connect-cRIO-with-Computer-via-cross-cable/td-p/1080146
http://www.ni.com/gettingstarted/setuphardware/compactrio/
Make sure correct version of LabView
http://joule.ni.com/nidu/cds/view/p/id/3769/lang/en
DriverSet Collection Page
http://search.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/ssnav:ndr/q/ni-rio/
Version List
ftp://ftp.ni.com/pub/devzone/tut/crio_software_versions.htm
Driver List
http://www.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/catnav:du,n8:4.9547.9548,ssnav:ndr/
cRIO crossover cable setup
http://forums.ni.com/t5/LabVIEW/How-to-connect-cRIO-with-Computer-via-cross-cable/td-p/1080146
Monday, April 1, 2013
Daily reading; watchdog Timer and AVR/Arduino
Typically, single-stage watchdog timers are used to simply restart the computer, whereas multistage watchdog timers will sequentially trigger a series of corrective actions, with the final stage triggering a computer restart.
In embedded systems and control systems, watchdog timers are often used to activate fail-safe circuitry. When activated, the fail-safe circuitry forces all control outputs to safe states (e.g., turns off motors, heaters, and high-voltages) to prevent injuries and equipment damage while the fault persists. In a two-stage watchdog, the first timer is often used to activate fail-safe outputs and start the second timer stage; the second stage will reset the computer if the fault cannot be corrected before the timer elapses.
Watchdog timers are sometimes used to trigger the recording of system state information—which may be useful during fault recovery[3]—or debug information (which may be useful for determining the cause of the fault) onto a persistentmedium. In such cases, a second timer—which is started when the first timer elapses—is typically used to reset the computer later, after allowing sufficient time for data recording to complete. This allows time for the information to be saved, but ensures that the computer will be reset even if the recording process fails.
http://arduino.cc/forum/index.php?topic=128717.0
External Hardware WatchDog:
http://www.practicalarduino.com/news/id/471
The official MEGA bootloader does not.
I'm not sure about Leonardo or Due.
http://www.nongnu.org/avr-libc/user-manual/group__avr__watchdog.html
stackexchange Arduino Watch Dog Example
http://electronics.stackexchange.com/questions/18/watch-dog-timer-arduino
http://arduino.cc/forum/index.php?PHPSESSID=c322bf19e2be8fb4daedb3e931a0c8f0&topic=128717.0
Blocking service serial.print in WDT_ISR?
In embedded systems and control systems, watchdog timers are often used to activate fail-safe circuitry. When activated, the fail-safe circuitry forces all control outputs to safe states (e.g., turns off motors, heaters, and high-voltages) to prevent injuries and equipment damage while the fault persists. In a two-stage watchdog, the first timer is often used to activate fail-safe outputs and start the second timer stage; the second stage will reset the computer if the fault cannot be corrected before the timer elapses.
Watchdog timers are sometimes used to trigger the recording of system state information—which may be useful during fault recovery[3]—or debug information (which may be useful for determining the cause of the fault) onto a persistentmedium. In such cases, a second timer—which is started when the first timer elapses—is typically used to reset the computer later, after allowing sufficient time for data recording to complete. This allows time for the information to be saved, but ensures that the computer will be reset even if the recording process fails.
http://arduino.cc/forum/index.php?topic=128717.0
External Hardware WatchDog:
http://www.practicalarduino.com/news/id/471
#include <avr/wdt.h>
void setup ()
{
Serial.begin (115200);
Serial.println ("Restarted.");
wdt_enable (WDTO_1S); // reset after one second, if no "pat the dog" received
} // end of setup
void loop ()
{
Serial.println ("Entered loop ...");
wdt_reset (); // give me another second to do stuff (pat the dog)
while (true) ; // oops, went into a loop
} // end of loop
The more severe issue is, that the bootloader does not de-activate the watchdog upon reset, so that one can end up with endless resets.
the official ATmega328 bootloader (optiboot) deactivates the watchdog on reset.The official MEGA bootloader does not.
I'm not sure about Leonardo or Due.
AVR Watch Dog Macro
stackexchange Arduino Watch Dog Example
http://electronics.stackexchange.com/questions/18/watch-dog-timer-arduino
Watch dog AVR Library
Bootloader Selectionhttp://arduino.cc/forum/index.php?PHPSESSID=c322bf19e2be8fb4daedb3e931a0c8f0&topic=128717.0
A arguable solution?
http://www.jasoncavett.com/2011/03/accessing-watchdog-timer-on-arduino-uno.htmlBlocking service serial.print in WDT_ISR?
Saturday, March 30, 2013
Arduino Function Optimization
Adventures with Arduino: From 41 instructions to 1
http://www.rorydriscoll.com/2011/02/01/adventures-with-arduino-from-41-instructions-to-1/
I/O Operation for AVR
AVR ports are labeled port A though port D on most DIP packages (look at the datasheet for your AVR to find the right port.) For instance, for port B:
You write to port B with the PORTB register
You read (input) port B with the PINB register
The input or output status of each bit in the port can be controlled with the DDR (Data Direction Register), so that each pins in a single port can serve different purposes.
Set port B, pin 2 for input (this clears bit DDB2 in the DDR):
DDRB &= ~_BV(DDB2);
To get the value on port B, pin2:
val = PINB & _BV(PB2);
This ANDs the PINB register with the bit value of pin 2 (PB2)--masking out the other unwanted bits.
Dr. Dobbs,
Al Williams
DigtialWrite Optimization
http://v4.drdobbs.com/blogs/embedded-systems/240148309
http://www.rorydriscoll.com/2011/02/01/adventures-with-arduino-from-41-instructions-to-1/
I/O Operation for AVR
AVR ports are labeled port A though port D on most DIP packages (look at the datasheet for your AVR to find the right port.) For instance, for port B:
You write to port B with the PORTB register
You read (input) port B with the PINB register
The input or output status of each bit in the port can be controlled with the DDR (Data Direction Register), so that each pins in a single port can serve different purposes.
Set port B, pin 2 for input (this clears bit DDB2 in the DDR):
DDRB &= ~_BV(DDB2);
To get the value on port B, pin2:
val = PINB & _BV(PB2);
This ANDs the PINB register with the bit value of pin 2 (PB2)--masking out the other unwanted bits.
Dr. Dobbs,
Al Williams
DigtialWrite Optimization
http://v4.drdobbs.com/blogs/embedded-systems/240148309
Friday, March 29, 2013
Prototyping board soldering techniques
http://www.instructables.com/id/How-to-Prototype-Without-Using-Printed-Circuit-Boa/
Good practice for soldering
http://lbw.axe-man.org/solder/thumb.html
Progressive Prototyping techniques
http://elm-chan.org/docs/wire/wiring_e.html
http://electronics.stackexchange.com/questions/2215/how-do-i-connect-components-when-using-a-circuit-board-with-pads-but-no-traces
Tuesday, March 26, 2013
Arduino Data logging (with SD)
http://www.mauroalfieri.it/en/elettronica/data-logging-con-arduino.html
A note on "const"
A Note On const
Many users bring up the idea of using C's keyword
const as a means of declaring data to be in Program Space. Doing this would be an abuse of the intended meaning of the const keyword.const is used to tell the compiler that the data is to be "read-only". It is used to help make it easier for the compiler to make certain transformations, or to help the compiler check for incorrect usage of those variables.
For example, the const keyword is commonly used in many functions as a modifier on the parameter type. This tells the compiler that the function will only use the parameter as read-only and will not modify the contents of the parameter variable.
const was intended for uses such as this, not as a means to identify where the data should be stored. If it were used as a means to define data storage, then it loses its correct meaning (changes its semantics) in other situations such as in the function parameter example.Arduino memory usage optimization
http://liudr.wordpress.com/2011/02/04/how-to-optimize-your-arduino-memory-usage/
Arduino Memory Space Discussion
http://arduino.cc/forum/index.php?topic=40586.0
AVR RAM structure
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=98806&start=0
AVR memory organization
http://www.mikroe.com/download/eng/documents/compilers/mikroc/pro/avr/help/avr_memory_organization.htm
Putting data in flash on the Arduino
http://www.sjbaker.org/wiki/index.php?title=Putting_data_in_flash_on_the_Arduino
SRAM usage -> AVR Program
http://stackoverflow.com/questions/960389/how-can-i-visualise-the-memory-sram-usage-of-an-avr-program
Arduino Memory Space Discussion
http://arduino.cc/forum/index.php?topic=40586.0
AVR RAM structure
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=98806&start=0
AVR memory organization
http://www.mikroe.com/download/eng/documents/compilers/mikroc/pro/avr/help/avr_memory_organization.htm
Putting data in flash on the Arduino
http://www.sjbaker.org/wiki/index.php?title=Putting_data_in_flash_on_the_Arduino
SRAM usage -> AVR Program
http://stackoverflow.com/questions/960389/how-can-i-visualise-the-memory-sram-usage-of-an-avr-program
Tuesday, March 5, 2013
Unsigned Logic Vector Addition
http://stackoverflow.com/questions/5690750/unsigned-logic-vector-and-addition-how
In brief, you can add the
ieee.numeric_std package to your architecture (library ieee; use ieee.numeric_std.all;) and then do the addition using:Output <= std_logic_vector(unsigned(Output) + 1);
Monday, March 4, 2013
Daily reading: Signal VHDL explanation
Concept: delta delay
http://en.wikipedia.org/wiki/Delta_delay
Signal assignment and delta delay
Signals values are changed by signal assignment statements. The simplest form of a signal assignment is:
http://www.pldworld.net/_hdl/1/www.ireste.fr/fdl/vcl/lesd/les_4.htm
When no explicit delay time is provided, the default time is a delay called delta delay.
http://en.wikipedia.org/wiki/Delta_delay
Signal assignment and delta delay
- signal_name <= value; -- assigned after delta delay
http://www.pldworld.net/_hdl/1/www.ireste.fr/fdl/vcl/lesd/les_4.htm
When no explicit delay time is provided, the default time is a delay called delta delay.
Friday, March 1, 2013
National Instruments In Vehicle Acquisition Table
Shared Variable and Single Process Techniques for programming NI LabView
https://decibel.ni.com/content/docs/DOC-19097
https://decibel.ni.com/content/docs/DOC-19097
Subscribe to:
Posts (Atom)