Skip to content

Commit

Permalink
updating module links
Browse files Browse the repository at this point in the history
  • Loading branch information
gfwilliams committed May 7, 2014
1 parent 98e231f commit 53069ce
Show file tree
Hide file tree
Showing 19 changed files with 42 additions and 19 deletions.
2 changes: 1 addition & 1 deletion devices/Bluetooth.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Bluetooth
=========

* KEYWORDS: Bluetooth,Wireless,BT,HC-05,HC05
* KEYWORDS: Bluetooth,Wireless,BT,HC-05,HC05,Built-In

![HC-05 front](HC05_front.jpg)
![HC-05 back](HC05_back.jpg)
Expand Down
2 changes: 1 addition & 1 deletion devices/CC3000.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
CC3000 WiFi Module
================

* KEYWORDS: Wireless,CC3000,CC 3000,WiFi,Internet,WLAN,Web Server,HTTP
* KEYWORDS: Wireless,CC3000,CC 3000,WiFi,Internet,WLAN,Web Server,HTTP,Built-In

![AdaFruit CC3000](adafruit.jpg)

Expand Down
2 changes: 1 addition & 1 deletion devices/Servo Motors.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Servo Motors
===========

* KEYWORDS: Servo,Motor,Servomotor,Servo motor,RC
* KEYWORDS: Servo,Motor,Servomotor,Servo motor,RC,Built-In

![9g Servo Motor](9g.jpg)

Expand Down
2 changes: 1 addition & 1 deletion devices/WIZnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
WIZnet WIZ550io/W5500 Ethernet module
================================

* KEYWORDS: Wireless,WIZnet,WIZ550io,W5500,Ethernet,Internet,LAN,Web Server,HTTP
* KEYWORDS: Wireless,WIZnet,WIZ550io,W5500,Ethernet,Internet,LAN,Web Server,HTTP,Built-In

![WIZnet WIZ550io module](module.jpg)

Expand Down
2 changes: 1 addition & 1 deletion devices/WS2811.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
WS2811/WS2812 LED String/Strip
===============================

* KEYWORDS: Individually Addressable LEDs,Light,Lights,LED,LEDs,WS2811,WS2812,WS2812B,Multicolour,Fairy,String,Strip
* KEYWORDS: Individually Addressable LEDs,Light,Lights,LED,LEDs,WS2811,WS2812,WS2812B,Multicolour,Fairy,String,Strip,Built-In

![WS2811 LED](25.jpg)

Expand Down
2 changes: 1 addition & 1 deletion info/Assembler.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Inline Assembler
=============

* KEYWORDS: Assembler,Asm,ARM,Thumb,Thumb2,Thumb-2,C code,inline C
* KEYWORDS: Assembler,Asm,ARM,Thumb,Thumb2,Thumb-2,C code,inline C,Built-In

The new Web IDE allows you to write inline assembler in the right-hand pane.

Expand Down
2 changes: 1 addition & 1 deletion peripherals/ADC.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Analog to Digital Converter
=======================

* KEYWORDS: Analog,ADC,A2D
* KEYWORDS: Analog,ADC,A2D,Built-In

Analog inputs are easy to read in Espruino:

Expand Down
2 changes: 1 addition & 1 deletion peripherals/Analog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Analog IO
========

* KEYWORDS: Analog,ADC,DAC,A2D,D2A
* KEYWORDS: Analog,ADC,DAC,A2D,D2A,Built-In

Espruino contains both Analog Inputs ([[ADC]]) and Analog Outputs ([[DAC]]).

Expand Down
2 changes: 1 addition & 1 deletion peripherals/DAC.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Digital to Analog Converter
=======================

* KEYWORDS: Analog,DAC,D2A
* KEYWORDS: Analog,DAC,D2A,Built-In

**Note:** Very few pins (usually only 2) are capable of Analog Output. See the [[Reference]] for your board and look for ```DAC```.

Expand Down
2 changes: 1 addition & 1 deletion peripherals/I2C.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
I2C
===

* KEYWORDS: I2C,I squared C,IIC
* KEYWORDS: I2C,I squared C,IIC,Built-In

[I2C Class](/Reference#I2C) in the Reference.

Expand Down
2 changes: 2 additions & 0 deletions peripherals/OneWire.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
OneWire
======

* KEYWORDS: One Wire,1-Wire,Built-In

[OneWire Class](/Reference#OneWire) in the Reference.

Espruino's [1-Wire](http://en.wikipedia.org/wiki/1-Wire) API is designed to be similar to Arduino's OneWire library. Simply instantiate it with the pin to use, search for devices, and start communicating:
Expand Down
2 changes: 1 addition & 1 deletion peripherals/PWM.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Pulse Width Modulation
===================

* KEYWORDS: Pulse Width Modulation,PWM,Pulse,Analog
* KEYWORDS: Pulse Width Modulation,PWM,Pulse,Analog,Built-In

[Pulse Width Modulation](http://en.wikipedia.org/wiki/Pulse-width_modulation) allows you to create an 'average' analog value using only a digital output. It does this by outputting a square wave, where the pulse is high for the a certain proportion of the time. If you want a 'real' analog output, see [[DAC]].

Expand Down
2 changes: 1 addition & 1 deletion peripherals/SPI.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Serial Peripheral Interface (SPI)
=============================

* KEYWORDS: Serial Peripheral Interface,SPI
* KEYWORDS: Serial Peripheral Interface,SPI,Built-In

The [Serial Peripheral Interface](http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus) is a Serial Bus for peripherals that uses Clock, Data In, and Data Out (and often a Chip Select pin).

Expand Down
2 changes: 1 addition & 1 deletion peripherals/USART.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
USART / UART / Serial Port
=======================

* KEYWORDS: Serial,USART,UART,RS232
* KEYWORDS: Serial,USART,UART,RS232,Built-In

[Serial Class](/Reference#Serial) in the Reference.

Expand Down
2 changes: 1 addition & 1 deletion peripherals/Waveform.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Waveforms
========

* KEYWORDS: Analog,ADC,DAC,A2D,D2A
* KEYWORDS: Analog,ADC,DAC,A2D,D2A,Built-In

Espruino contains both [[Analog]] Inputs ([[ADC]]) and [[Analog Outputs]] ([[DAC]]). Functions such as `analogRead` and `analogWrite` can be used for IO up to around 0.5kHz but Espruino isn't fast enough for Audio.

Expand Down
2 changes: 1 addition & 1 deletion tasks/Fonts.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Fonts
====

* KEYWORDS: Graphics,Font,Fonts,Text,Typeface
* KEYWORDS: Graphics,Font,Fonts,Text,Typeface,Module

Espruino has two main fonts built-in. A vector font, and a bitmap font.

Expand Down
2 changes: 1 addition & 1 deletion tasks/Graphics.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Graphics Library
================

* KEYWORDS: Graphics,LCD,Draw,Line,Fill,Color,Circle
* KEYWORDS: Graphics,LCD,Draw,Line,Fill,Color,Circle,Built-In

Espruino has a built-in graphics library (however on less powerful devices this may have been removed to save on Flash memory).

Expand Down
2 changes: 1 addition & 1 deletion tasks/Internet.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Internet (HTTP)
===============

* KEYWORDS: Internet,HTTP,Web,TCPIP,TCP/IP,TCP-IP,IP,TCP,Server,Client,Webserver
* KEYWORDS: Internet,HTTP,Web,TCPIP,TCP/IP,TCP-IP,IP,TCP,Server,Client,Webserver,Built-In

To use the internet in Espruino you need an internet connection. If you're using Espruino under Linux (for example Raspberry Pi or OpenWRT) then you're sorted and can use the examples below directly, otherwise you'll need a module to connect to the internet. Currently your only choice is the TI [[CC3000]], however hopefully this will change in the future.

Expand Down
25 changes: 23 additions & 2 deletions tasks/Modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,32 @@ Existing Modules

* APPEND_KEYWORD: Module

Built-in Functionality
-------------------

Espruino also contains many built-in modules and classes that provide a lot of functionality:

* APPEND_KEYWORD: Built-In


Frequently Asked Questions
-----------------------

* <a name="repl"></a>Why don't modules work when typing `require` on the left-hand side of the Web IDE (or from a terminal window)?

When you type ```require("modulename")``` on the right-hand side and click *Send to Espruino*, the Espruino Web IDE scans your code for `require` statements and loads the relevant modules off the internet. Because the left-hand side of the Web IDE (or a terminal window) sends each character direct to Espruino, by the time you have pressed enter to exeture your command, it's then too late to load the module.
### <a name="repl"></a>Why don't modules work when typing `require` on the left-hand side of the Web IDE (or from a terminal window)?

When you type ```require("modulename")``` on the right-hand side and click *Send to Espruino*, the Espruino Web IDE scans your code for `require` statements and loads the relevant modules off the internet. Because the left-hand side of the Web IDE (or a terminal window) sends each character direct to Espruino, by the time you have pressed enter to execute your command, it's then too late to load the module.

Instead, Espruino defaults to what is mentioned under the **Stand-alone Espruino** heading above - it looks on an SD card (if inserted) for the module. This is why you might get a `ERROR: Unable to read file : NOT_READY` error written to the console.

### If I load modules from an SD card, will the SD card always need to be inserted?

No. As long as you have used `require('module')` at least once for each module before you type `save()`, all the information that is needed will be cached inside Espruino.

### Can I dynamically load (and unload) modules?

Yes. By default each module that is loaded will be cached (to avoid loading modules twice). However you can call [`Modules.removeCached('modulename')`](/Reference#l_Modules_removeCached) which will remove the module from the cache and free the memory that it uses.

### How do I make my own modules?

It's easy! See the [[Writing Modules]] page...

0 comments on commit 53069ce

Please sign in to comment.