HomePage

Main.HomePage History

Hide minor edits - Show changes to output

Changed lines 3-5 from:
%color=#4088b8 justify%'''Firewing is a modular hardware and software development system based around a powerful Microchip 16 bit microcontroller. With 128KB of ROM (program storage) and 8KB of working RAM, you will be able to realise many great projects using the free Firewing compiler.'''

%justify%The Firewing compiler can be [[Firewing.Download | downloaded for free]]. You can program a Firewing board in pretty much any language that supports 16 and 32 bit Microchip devices, but here at the  nest we like to use the [[Firewing.Reference | Firewing language]]. The language syntax is similar to that used by VB.NET, so it's really easy to use. Don't let the fact that it based on the VB.NET syntax fool you, the Firewing compiler does not generate interpreted code! It's a true compiler, based around the powerful GCC toolsuite. If you have any questions or would like to know more about Firewing, then please get in touch via the [[http://www.firewing.info/forum | forum]]. If you would like to make a contribution to this site, for example, write and article or post some sample code, then you can find instruction on how to do so [[FirewingUser.FirewingUser | here]]. Any contributions you can make would be most welcome.
to:
%color=#4088b8 justify%'''Firewing is a modular hardware and software development system based around powerful Microchip microcontrollers. With either 8, 16 or 32 bit versions, you will be able to realise many great projects using the free Firewing compiler.'''

%justify%The Firewing compiler can be [[Firewing.Download | downloaded for free]]. You can program a Firewing board in pretty much any language that supports 8, 16 and 32 bit Microchip devices, but here at the  nest we like to use the [[Firewing.Reference | Firewing language]]. The language syntax is similar to that used by VB.NET, so it's really easy to use. Don't let the fact that it based on the VB.NET syntax fool you, the Firewing compiler does not generate interpreted code! It's a true compiler, based around the powerful GCC toolsuite. If you have any questions or would like to know more about Firewing, then please get in touch via the [[http://www.firewing.info/forum | forum]]. If you would like to make a contribution to this site, for example, write and article or post some sample code, then you can find instruction on how to do so [[FirewingUser.FirewingUser | here]]. Any contributions you can make would be most welcome.
Changed line 1 from:
%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-main-board-01.jpg |
to:
%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:firewing-r2-black-small.jpg |
Deleted lines 3-4:

%color=#B00000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development board are now in BETA, more information can be found by clicking here.]]
Changed line 5 from:
%color=#A00000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development board]] are now in BETA - more information can be found [[Firewing.Firewing32Beta | here]].
to:
%color=#B00000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development board are now in BETA, more information can be found by clicking here.]]
Changed line 7 from:
%justify%The Firewing compiler can be [[Firewing.Download | downloaded for free]]. You can program a Firewing board in pretty much any language that supports 16 bit Microchip devices, but here at the  nest we like to use the [[Firewing.Reference | Firewing language]]. The language syntax is similar to that used by VB.NET, so it's really easy to use. Don't let the fact that it based on the VB.NET syntax fool you, the Firewing compiler does not generate interpreted code! It's a true compiler, based around the powerful GCC toolsuite. If you have any questions or would like to know more about Firewing, then please get in touch via the [[http://www.firewing.info/forum | forum]]. If you would like to make a contribution to this site, for example, write and article or post some sample code, then you can find instruction on how to do so [[FirewingUser.FirewingUser | here]]. Any contributions you can make would be most welcome.
to:
%justify%The Firewing compiler can be [[Firewing.Download | downloaded for free]]. You can program a Firewing board in pretty much any language that supports 16 and 32 bit Microchip devices, but here at the  nest we like to use the [[Firewing.Reference | Firewing language]]. The language syntax is similar to that used by VB.NET, so it's really easy to use. Don't let the fact that it based on the VB.NET syntax fool you, the Firewing compiler does not generate interpreted code! It's a true compiler, based around the powerful GCC toolsuite. If you have any questions or would like to know more about Firewing, then please get in touch via the [[http://www.firewing.info/forum | forum]]. If you would like to make a contribution to this site, for example, write and article or post some sample code, then you can find instruction on how to do so [[FirewingUser.FirewingUser | here]]. Any contributions you can make would be most welcome.
Changed lines 5-7 from:
%color=#9F0000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development board]] are now in BETA - more information can be found [[Firewing.Firewing32Beta | here]].

is a modular hardware and software development system based around a powerful Microchip 16 bit microcontroller. With 128KB of ROM (program storage) and 8KB of working RAM, you will be able to realise many great projects using the free Firewing compiler.'''
to:
%color=#A00000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development board]] are now in BETA - more information can be found [[Firewing.Firewing32Beta | here]].
Changed line 5 from:
%color=#9F0000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development boards]] are now in BETA - more information can be found [[Firewing.Firewing32Beta | here]].
to:
%color=#9F0000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development board]] are now in BETA - more information can be found [[Firewing.Firewing32Beta | here]].
Added lines 4-7:

%color=#9F0000 justify%[[Firewing.Firewing32Beta | Firewing 32 bit compiler and development boards]] are now in BETA - more information can be found [[Firewing.Firewing32Beta | here]].

is a modular hardware and software development system based around a powerful Microchip 16 bit microcontroller. With 128KB of ROM (program storage) and 8KB of working RAM, you will be able to realise many great projects using the free Firewing compiler.'''
May 03, 2013, at 12:10 PM by David Barker -
Added lines 9-10:
%rfloat margin-top=5px margin-right=0px margin-bottom=5px margin-left=5px% [[Firewing.Buy | Attach:banner-hardware.png]]
%rfloat margin-top=5px margin-right=5px margin-bottom=5px margin-left=16px% [[Firewing.Download | Attach:banner-software.png]]
May 01, 2013, at 10:23 AM by David Barker -
Changed line 14 from:
%justify%A nest favourite, the Arduino compatible [[Firewing.LCDShield | LCD Plus shield]]! In addition to the LCD screen it has a DS1307 Real Time Clock (RTC), DS18B20 temperature sensor, a microSD card slot, 5 button keypad and also a light sensor. Many LCD shields use a standard Hitachi based HD44780 compatible LCD which is larger than the physical shield. So it either hangs over the shield or you have to make the shield larger to accommodate the LCD. There is nothing wrong with doing this, but it has always kind of bugged me that the shield footprint has to be different from the base board. Well, not with the LCD Plus, it fits perfectly on a standard shield footprint and also uses a standard HD44780 interface! It's really readable as well, especially with the back light switched on. Incidentally, you can control the backlight brightness using a single Firewing instruction.  Or use the LCD+ light sensitive resistor to control the backlight brightness - really cool!
to:
%justify%A nest favourite, the Arduino compatible [[Firewing.LCDShield | LCD Plus shield]]. In addition to the LCD screen it has a DS1307 Real Time Clock (RTC), DS18B20 temperature sensor, a microSD card slot, 5 button keypad and also a light sensor. Many LCD shields use a standard Hitachi based HD44780 compatible LCD which is larger than the physical shield. So it either hangs over the shield or you have to make the shield larger to accommodate the LCD. There is nothing wrong with doing this, but it has always kind of bugged me that the shield footprint has to be different from the base board. Well, not with the LCD Plus, it fits perfectly on a standard shield footprint and also uses a standard HD44780 interface! It's really readable as well, especially with the back light switched on. Incidentally, you can control the backlight brightness using a single Firewing instruction.  Or use the LCD+ light sensitive resistor to control the backlight brightness - really cool! The shield pin outs can be found [[Firewing.LCDShield | here]] and you can download a schematic from [[http://www.firewing.info/downloads/schematics/lcd-plus.pdf | here]]. Some sample code using this shield can be found [[FirewingUser.LCDPlus | here]].
May 01, 2013, at 10:19 AM by David Barker -
Changed lines 13-22 from:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-xbee-02.jpg
%justify%The [[Firewing.XBeeSDShield | XBee SD shield]] is an Arduino compatible unit that has an onboard microSD card slot. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes.  The board also has all the circuitry to support wireless bootloading. You can find an article showing how to [[FirewingUser.XBEEBootloader | configure the shield for XBee wireless programming]]. Just press F10 in the Firewing IDE and your code will be compiled, assembled and then sent over XBee to your remote Firewing main board and programmed in! It really is as easy as that and opens up many possibilities communicating with remote projects. Range is pretty impressive too, considering the thick walls that sound the Firewing development nest. The board also enables you to switch the XBee RX and TX pins to D0 and D1, or to pins D2 and D3. Both of these pin sets support hardware UART on the Firewing board. The pin outs can be found [[Firewing.XBeeSDShield | here]] and you can download a schematic from [[http://www.firewing.info/downloads/schematics/xbee-sd.pdf | here]]. %lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-micro-sd-04.jpg
%justify%

The [[Firewing.SDShield | microSD shield]] data logging shield is an Arduino compatible unit with an onboard DS1307 Real Time Clock (RTC) with battery backup.  The addition of a micro secure digital (SD) card slot -makes this shield ideal for data logging applications. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes. The shield pin outs can be found [[Firewing.SDShield | here]] and you can download a schematic from [[ http://www.firewing.info/downloads/schematics/sd-plus.pdf | here]].  Some sample code using this shield can be found [[FirewingUser.SDPlus | here]].

%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-gps-01.jpg
The [[Firewing.GPSShield | GPS SD]] shield is an Arduino compatible unit which has an embedded antenna and tiny footprint GPS module. It also has a built in UART, making communicating with this device a breeze. The GPS shield also has a built in Secure digital (SD) card slot, which allows you to transform your shield into a GPS data logging solution.  The pin outs can be found [[Firewing.GPSShield | here]] and the schematic can be downloaded from [[http://www.firewing.info/downloads/schematics/gps-sd.pdf | here]].  Check out [[FirewingUser.GPSShield | this article]] - it has a nice CSV to KML utility which people may find useful if wanting to render data in Google Earth.

%lfloat
text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-lcd-plus-amber.jpg
to:
%rfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-lcd-plus-amber.jpg
Added lines 15-23:

%lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-micro-sd-04.jpg
%justify%The [[Firewing.SDShield | microSD shield]] data logging shield is an Arduino compatible unit with an onboard DS1307 Real Time Clock (RTC) with battery backup.  The addition of a micro secure digital (SD) card slot -makes this shield ideal for data logging applications. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes. The shield pin outs can be found [[Firewing.SDShield | here]] and you can download a schematic from [[ http://www.firewing.info/downloads/schematics/sd-plus.pdf | here]].  Some sample code using this shield can be found [[FirewingUser.SDPlus | here]].

%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-gps-01.jpg
%justify%The [[Firewing.GPSShield | GPS SD]] shield is an Arduino compatible unit which has an embedded antenna and tiny footprint GPS module. It also has a built in UART, making communicating with this device a breeze. The GPS shield also has a built in Secure digital (SD) card slot, which allows you to transform your shield into a GPS data logging solution.  The pin outs can be found [[Firewing.GPSShield | here]] and the schematic can be downloaded from [[http://www.firewing.info/downloads/schematics/gps-sd.pdf | here]].  Check out [[FirewingUser.GPSShield | this article]] - it has a nice CSV to KML utility which people may find useful if wanting to render data in Google Earth.

%lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-xbee-02.jpg
%justify%The [[Firewing.XBeeSDShield | XBee SD shield]] is an Arduino compatible unit that has an onboard microSD card slot. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes.  The board also has all the circuitry to support wireless bootloading. You can find an article showing how to [[FirewingUser.XBEEBootloader | configure the shield for XBee wireless programming]]. Just press F10 in the Firewing IDE and your code will be compiled, assembled and then sent over XBee to your remote Firewing main board and programmed in! It really is as easy as that and opens up many possibilities communicating with remote projects. Range is pretty impressive too, considering the thick walls that sound the Firewing development nest. The board also enables you to switch the XBee RX and TX pins to D0 and D1, or to pins D2 and D3. Both of these pin sets support hardware UART on the Firewing board. The pin outs can be found [[Firewing.XBeeSDShield | here]] and you can download a schematic from [[http://www.firewing.info/downloads/schematics/xbee-sd.pdf | here]].
May 01, 2013, at 10:10 AM by David Barker -
Changed lines 3-8 from:
%color=#4088b8%'''Firewing - is an easy to use hardware and software development system. It's still under development at the moment but I thought it might be a good idea to share current progress with you.'''

%justify%'''18-04-2013''' It's been really hectic here at the Firewing nest, so apologies for the lack of updates.  The good news is that '''we are hoping to release Firewing very soon''' - please keep checking in for the latest info!

If you have any questions or would like
to know more about Firewing, then please get in touch via the [[http://www.firewing.info/forum | forum]] or drop me an [[mailto:d.j.barker@firewing.info | email]].
to:
%color=#4088b8 justify%'''Firewing is a modular hardware and software development system based around a powerful Microchip 16 bit microcontroller. With 128KB of ROM (program storage) and 8KB of working RAM, you will be able to realise many great projects using the free Firewing compiler.'''

%justify%The Firewing compiler can be [[Firewing.Download | downloaded for free]]. You can program a Firewing board in pretty much any language that supports 16 bit Microchip devices, but here at the  nest we like to use the [[Firewing.Reference | Firewing language]]. The language syntax is similar to that used by VB.NET, so it's really easy to use. Don't let the fact that it based on the VB.NET syntax fool you, the Firewing compiler does not generate interpreted code! It's a true compiler, based around the powerful GCC toolsuite. If you have any questions or would like to know more about Firewing, then please get in touch via the [[http://www.firewing.info/forum | forum]]. If you would like to make a contribution to this site, for example, write and article or post some sample code, then you can find instruction on how to do so [[FirewingUser.FirewingUser | here]]. Any contributions you can make would be most welcome.

!!!Getting Started

%justify%Learning the Firewing language is very easy, just [[Firewing.Download | download the free compiler]] and take a look at [[FirewingUser.Samples | some sample code]] or some [[FirewingUser.Articles | articles]].  The language reference guide can be found [[Firewing.Reference | here]] and don't forget to take a look at some of the [[Firewing.Library | built in libraries]]. If you have a Firewing [[Firewing.MainBoard | main board]] then here is some information on installing the [[Firewing.MainBoard#USB | USB drivers]].  You will need to do this in order to program and communicate with your main board.

!!!Shields

Changed lines 14-48 from:

%justify%'''10-03-2013''' BETA testing the compiler is progressing well and we are about to get the main Firewing boards assembled. The original SD card holder in many of the Firewing shields was a push-pull type. This has proved to be a little problematic, so we are switching to a push-push socket. This has meant changing all of the board designs that have SD card holders, but we think it is worth it!

%justify%'''24-02-2013''' It's been a busy week updating the [[Firewing.Library | library reference]] and [[Firewing.MainBoard | main board]] pages.  There have also been a number of new [[Firewing.Download | software updates]]. If you are using the  BETA compiler, please do let us know what you think! If you are not already a member, you might want to think about joining the [[http://www.firewing.info/forum | forum]].

%justify%'''17-02-2013''' During the week we took the step to release the compiler as an open BETA.  You can download from [[Firewing.Download | here]]. If you download, don't forget to check in regularly for updates!  The library reference guide is also in the process of being updated, you can view that [[ Firewing.Library | here]] - keep checking for updates.

%justify%'''10-02-2013''' It's been a busy few weeks, but Firewing is now entering full BETA testing, so stay tuned! In the meantime, take a look at some demo code for the LCD Plus shield, which you will find [[FirewingUser.LCDPlus | here]]. Also checkout the pinouts for various shields [[Firewing.Shields | here]]. I'll hopefully be updating this page as more shields pass testing.

%justify%'''27-01-2013''' The new XBee shields have arrived! The XBee SD shield, as the name suggests, has an onboard microSD card slot. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes.  The board also has all the circuitry to support wireless bootloading. As promised, I have uploaded an article showing how to [[FirewingUser.XBEEBootloader | configure the shield for XBee wireless programming]]. The board also enables you to switch the XBee RX and TX pins to D0 and D1, or to pins D2 and D3. Both of these pin sets support hardware UART on the Firewing board.

%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-micro-sd-04.jpg
%justify%'''13-01-2013''' The finalised GPS and microSD card shields have now been made and tested. Hopefully you can see from the pictures they look really cool! The microSD card shield was pretty straight forward. A simple but very useful shield that provides a real time clock with battery backup and secure digital (SD) card slot - ideal for data logging applications. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes.

%justify%As previously discussed, we originally had a problem with powering up and down the GPS module under software control.  Although the UP501 module only requires around 25mA in tracking mode, it does take peak surges of up to at least 40mA when searching. It also requires the supply to have no more than 50mV ripple. We found that the fast 40mA surges could create unacceptable spikes on the normal Firewing 3.3V supply so we took the decision to add a separate auxiliary 3.3V supply just for the UP501.%lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-gps-01.jpg
%justify% This has certainly solved the problem and makes for very robust powering up and down of the GPS unit. Power is still maintained to the GPS module battery backup pin when powered down, which preserves all ephemeris data.  Ephemeris data is the information needed for the GPS module to calculate the exact position of a satellite in the sky, allowing for fast fix times when the unit is powered up again. Like many of the other Firewing boards, a SD card slot is provided to store all incoming data.

%justify%The XBEE sheilds arrived just before the new year. There were a few problems with the XBEE SD shield, requiring a hack or two - one to fix a ground plane problem and another to fix an incorrect pin assignment for the assoc LED.  After the workarounds, the board worked a treat! The shield has everything you need to support remote bootloading and the Firewing loader will automatically handle any packet re-transmissions, if needed. Alternatively, you can use the XBEE shield to communicate with another XBEE shield or PC.  An onboard switch, selectable between "user" and "uart", allows you to send the XBEE TX and RX to either the primary or secondary hardware Firewing UART.  Alternatively, you can breakout the "user" switch option to any suitable Firewing I/O pin. This is particularly useful for Arduino users who may prefer to use different pins for TX and RX, rather than the default D2 and D3 options. Hopefully the new corrected boards will arrive in the coming weeks!

I should also mention that [[User.Majenko | Matt]] did some great work over the holidays in writing a script that converts the online language reference resource into a properly formatted printable PDF document!  You can find out more from here [[Firewing.Reference | here]].

%justify%'''09-12-2012''' This is a very brief update as I have been working on the [[Firewing.Reference | language reference]] documentation. It's work in progress so any comments would be most welcome!

%justify%'''02-12-2012''' The GPS and microSD boards finally arrived! I've been playing with the GPS shield and having lots of fun! It's only when you get to play with boards you get an idea of what works and what doesn't - the software controlled powering of the GPS module proved a little more difficult than originally planned but [[User.Moby | Moby]] soon got it up and running. It will mean a new board though but hey, you win some and you lose some.  Still, with the modded board I finally got some data logging done! Check out [[FirewingUser.GPSShield |this article]] - it's work in progress but has a nice CSV to KML utility which people may find useful if wanting to render data in Google Earth. I've also put up a basic overview of the GPS shield [[Firewing.GPSShield | here]].  When I have the new boards, I'll post some pictures. 

%justify%'''25-11-2012''' The new GPS and microSD boards have been shipped out, so hopefully we will receive them early next week! I bought a couple of XBee modules this week, so that I could perform some tests on the XBee shield design. The modules are series 1 with a 1mw output and built in antenna. I used a %newwin%[[https://www.sparkfun.com/products/8687 | Sparkfun XBee Explorer Board]] to configure the modules, which was very easy using the %newwin%[[http://www.digi.com/support/productdetail?pid=3352 | X-CTU software]] supplied by Digi. The shield design we are working on supports remote bootloading and this works brilliantly with Firewing! Just press F10 in the Firewing IDE and your code will be compiled, assembled and then sent over XBee to your remote Firewing main board and programmed in! It really is as easy as that and opens up many possibilities communicating with remote projects. Range is pretty impressive too, considering the thick walls that sound the Firewing development nest. Once we get the new XBee shield PCBs made and tested, I'll post an article on remote bootloading with Firewing - I guess this will follow the GPS shield tests though.

%justify%'''18-11-2012''' Finalised the design of the GPS and microSD shields. Both of these PCBs are now being made, so hopefully we will receive those in the next week or so. I'm really looking forward to trying out the GPS shield! I've also been testing the shield designs with an Arduino board, which has gone extremely well. We plan to make all of the shields Arduino compatible, so it doesn't matter if you use a Firewing or Arduino main board - you will be able to plug in a Firewing shield and start using it straight away. The shields should in theory work fine also with a chipKIT system, although I have not tried this myself yet. This will make the range of Firewing shields very flexible indeed. [[User.Moby | Moby]] and I have also been looking at XBee support more closely and have started prototyping some stuff. We have sketched out a shield design but I need to order a few bits so I can start some tests. The design we have been working on will have an on board micro SD card slot, various status LEDs, a switch so you can send the XBee RX and TX to any selected header pin and a small prototyping area. There is also an on board reset circuit which will support remote bootloading!

%justify%'''11-11-2012''' Well, the first boards arrived yesterday and everything is starting to come together. The development hardware so far has been held together with bits of string (well, not really) so it's really nice to get something in your hand that is close to the final release product. Very nice. [[User.Majenko | Matt]] has done a great design of the main board and we have also based our prototyping board on one of his %newwin% [[http://stores.ebay.co.uk/Majenko-Technologies | great designs]].

[[User.Moby | Moby]] and I have been putting together some really cool shields. One of my favourites is the LCD+ shield, shown to the left of this text. In addition to the LCD screen it has a DS1307 Real Time Clock (RTC), DS18B20 temperature sensor, a microSD card slot, 5 button keypad and also a light sensor. It was inspired by a shield found at %newwin% [[http://picshop.nl/lcd_shield.html | PICShop]].  Gerben at PICShop kindly sent me an example board. The quality of the board was excellent. Unfortunately, the pin-out of the PICShop LCD board is based around the Amicus18.  This is not compatible with Firewing, which follows the pin-out of the Arduino UNO. %rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-lcd-plus-02.jpg %justify% Many LCD shields I have seen use a standard Hitachi based HD44780 compatible LCD which is larger than the physical shield. So it either hangs over the shield or you have to make the shield larger to accommodate the LCD. There is nothing wrong with doing this, but it has always kind of bugged me that the shield footprint has to be different from the base board. Well, not with the LCD+, it fits perfectly on a standard shield footprint and also uses a standard HD44780 interface! It's really readable as well, especially with the back light switched on. Incidentally, you can control the backlight brightness using a single Firewing instruction.  Or use the LCD+ light sensitive resistor to control the backlight brightness - really cool!

%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-lcd-plus-amber.jpg |
%justify%I've been working on some library code today. Support for the LCD+ shield is coming along nicely. Interfacing to the DS1307 real time clock has been very easy as I've just ported most of the code over from Swordfish, although I've made some changes in order to take advantage of the new features in the Firewing language. Spent some time also on the new GPS+ shield. It's at the prototyping stage at the moment but I hope to have some boards made up in the next week or so. Using GPS is really easy with Firewing, mainly because the microcontroller has two hardware UARTs. This means one can handle programming and communication between the board and PC, whilst the other can handle communication between the main board and the GPS module. All incoming data is buffered and I've written a simple parser which enables you to extract data from the NMEA sentence. You can also extract latitude and longitude from a NMEA sentence and save to a microSD card in a format which can easily be read by programs such as Google Earth (The GPS+ shield will have a SD card socket). I'll post more information and some code when I get the new shields made up.
to:
%justify%The [[Firewing.XBeeSDShield | XBee SD shield]] is an Arduino compatible unit that has an onboard microSD card slot. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes.  The board also has all the circuitry to support wireless bootloading. You can find an article showing how to [[FirewingUser.XBEEBootloader | configure the shield for XBee wireless programming]]. Just press F10 in the Firewing IDE and your code will be compiled, assembled and then sent over XBee to your remote Firewing main board and programmed in! It really is as easy as that and opens up many possibilities communicating with remote projects. Range is pretty impressive too, considering the thick walls that sound the Firewing development nest. The board also enables you to switch the XBee RX and TX pins to D0 and D1, or to pins D2 and D3. Both of these pin sets support hardware UART on the Firewing board. The pin outs can be found [[Firewing.XBeeSDShield | here]] and you can download a schematic from [[http://www.firewing.info/downloads/schematics/xbee-sd.pdf | here]]. %lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-micro-sd-04.jpg
%justify%

The [[Firewing.SDShield | microSD shield]] data logging shield is an Arduino compatible unit with an onboard DS1307 Real Time Clock (RTC) with battery backup.  The addition of a micro secure digital (SD) card slot -makes this shield ideal for data logging applications. The prototyping area is based around the standard Firewing shield that provides a double sided prototyping area with paired holes. The shield pin outs can be found [[Firewing.SDShield | here]] and you can download a schematic from [[ http://www.firewing.info/downloads/schematics/sd-plus.pdf | here]].  Some sample code using this shield can be found [[FirewingUser.SDPlus | here]].

%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-gps-01.jpg
The [[Firewing.GPSShield | GPS SD]] shield is an Arduino compatible unit which has an embedded antenna and tiny footprint GPS module. It also has a built in UART, making communicating with this device a breeze. The GPS shield also has a built in Secure digital (SD) card slot, which allows you to transform your shield into a GPS data logging solution.  The pin outs can be found [[Firewing.GPSShield | here]] and the schematic can be downloaded from [[http://www.firewing.info/downloads/schematics/gps-sd.pdf | here]].  Check out [[FirewingUser.GPSShield | this article]] - it has a nice CSV to KML utility which people may find useful if wanting to render data in Google Earth.

%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-lcd-plus-amber.jpg
%justify%A nest favourite, the Arduino compatible [[Firewing.LCDShield | LCD Plus shield]]! In addition to the LCD screen it has a DS1307 Real Time Clock (RTC), DS18B20 temperature sensor, a microSD card slot, 5 button keypad and also a light sensor. Many LCD shields use a standard Hitachi based HD44780 compatible LCD which is larger than the physical shield. So it either hangs over the shield or you have to make the shield larger to accommodate the LCD. There is nothing wrong with doing this, but it has always kind of bugged me that the shield footprint has to be different from the base board. Well, not with the LCD Plus, it fits perfectly on a standard shield footprint and also uses a standard HD44780 interface! It's really readable as well, especially with the back light switched on. Incidentally, you can control the backlight brightness using a single Firewing instruction.  Or use the LCD+ light sensitive resistor to control the backlight brightness - really cool!
 
Changed lines 26-30 from:
%justify%I thought it worth mentioning in a little more detail the Firewing prototyping board used when developing shields. It's a great double sided board with a prototyping area comprised of paired holes. These is an extremely useful feature as many prototyping boards just have single holes which can make connecting wires to components a real pain sometimes. However, with paired holes, you now have somewhere to solder the component and solder a connection wire. The paired links are exposed which means you can easily break them if required. In addition, the board has a collection of surface mount pads with break out areas making this a very comprehensive board indeed. I was a bit nervous with respect to surface mount components but [[User.Majenko | Matt]] convinced me to give it a go. I find it much easier than through hole! Well, for the large surface mount parts anyway. But if you can solder through hole and have never tried surface mount then give it a go, you won't regret it! I certainly haven't. %lfloat text-align=center margin-top=5px margin-left=16px% Attach:small-proto-01.jpg%justify%You can also squeeze a small mini breadboard (the ones with 170 tie points) onto the prototyping area and use the headers to break out from. I used a black breadboard and it looks really cool! Small as the breadboard area is, it's fantastic for testing out small circuit ideas. I used one of Matt's %newwin% [[http://www.ebay.co.uk/itm/Rapid-Prototyping-LED-breadboard-Arduino-Launchpad-PIC-etc-plug-in-module-/190705586955?pt=UK_BOI_Electrical_Components_Supplies_ET&var=&hash=item721b64db44 | LED breadcrumbs]] to develop an interrupt driven PWM library - what a time saver the breadboard with breadcrumbs turned out to be! 
%rfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:ide-small.png |
%justify%The Firewing compiler (which will be a free download, by the way) is also coming along very nicely. You can program a Firewing board in pretty much any language that generates hex files for PIC24, but I like to use the Firewing language. The core language syntax itself is similar to that used by VB.NET, so it's really easy to use. You can view some sample code [[FirewingUser.SDFileReader | here]].  But don't let the fact that it based on the VB.NET syntax fool you, the Firewing compiler does not generate interpreted code! It's a true compiler, based around the GCC toolsuite. As always, it's the detailing that seems to take ages. For example, generating help files. I've decided that the Firewing IDE will use an online resource to maintain the help file. Hopefully it should be easy to maintain - famous last words...
 

to:
%justify%I thought it worth mentioning in a little more detail the Firewing prototyping board used when developing shields. It's a great double sided board with a prototyping area comprised of paired holes, based on a design by [[User.Majenko | Matt]].  Paired holes are an extremely useful feature, as many prototyping boards just have single holes which can make connecting wires to components a real pain sometimes. However, with paired holes, you now have somewhere to solder the component and solder a connection wire. The paired links are exposed which means you can easily break them if required. In addition, the board has a collection of surface mount pads with break out areas making this a very comprehensive board indeed. %lfloat text-align=center margin-top=5px margin-left=16px% Attach:small-proto-01.jpg%justify%You can also squeeze a small mini breadboard (the ones with 170 tie points) onto the prototyping area and use the headers to break out from. I used a black breadboard and it looks really nide! Small as the breadboard area is, it's fantastic for testing out small circuit ideas. I used one of Matt's %newwin% [[http://www.ebay.co.uk/itm/Rapid-Prototyping-LED-breadboard-Arduino-Launchpad-PIC-etc-plug-in-module-/190705586955?pt=UK_BOI_Electrical_Components_Supplies_ET&var=&hash=item721b64db44 | LED breadcrumbs]] to develop an interrupt driven PWM library - what a time saver the breadboard with breadcrumbs turned out to be!
May 01, 2013, at 08:27 AM by David Barker -
May 01, 2013, at 08:27 AM by David Barker -
Changed line 24 from:
%justify%As previously discussed, we originally had a problem with powering up and down the GPS module under software control.  Although the UP501 module only requires around 25mA in tracking mode, it does take peak surges of up to at least 40mA when searching. It also requires the supply to have no more than 50mV ripple. We found that the fast 40mA surges could create unacceptable spikes on the normal Firewing 3.3V supply so we took the decision to add a separate auxiliary 3.3V supply just for the UP501.%lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:gps-small.png
to:
%justify%As previously discussed, we originally had a problem with powering up and down the GPS module under software control.  Although the UP501 module only requires around 25mA in tracking mode, it does take peak surges of up to at least 40mA when searching. It also requires the supply to have no more than 50mV ripple. We found that the fast 40mA surges could create unacceptable spikes on the normal Firewing 3.3V supply so we took the decision to add a separate auxiliary 3.3V supply just for the UP501.%lfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-gps-01.jpg
Changed lines 41-43 from:
[[User.Moby | Moby]] and I have been putting together some really cool shields. One of my favourites is the LCD+ shield, shown to the left of this text. In addition to the LCD screen it has a DS1307 Real Time Clock (RTC), DS18B20 temperature sensor, a microSD card slot, 5 button keypad and also a light sensor. It was inspired by a shield found at %newwin% [[http://picshop.nl/lcd_shield.html | PICShop]].  Gerben at PICShop kindly sent me an example board. The quality of the board was excellent. Unfortunately, the pin-out of the PICShop LCD board is based around the Amicus18.  This is not compatible with Firewing, which follows the pin-out of the Arduino UNO. %rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:lcd-small.png %justify% Many LCD shields I have seen use a standard Hitachi based HD44780 compatible LCD which is larger than the physical shield. So it either hangs over the shield or you have to make the shield larger to accommodate the LCD. There is nothing wrong with doing this, but it has always kind of bugged me that the shield footprint has to be different from the base board. Well, not with the LCD+, it fits perfectly on a standard shield footprint and also uses a standard HD44780 interface! It's really readable as well, especially with the back light switched on. Incidentally, you can control the backlight brightness using a single Firewing instruction.  Or use the LCD+ light sensitive resistor to control the backlight brightness - really cool!

%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:lcd-small-backlight-02.png |
to:
[[User.Moby | Moby]] and I have been putting together some really cool shields. One of my favourites is the LCD+ shield, shown to the left of this text. In addition to the LCD screen it has a DS1307 Real Time Clock (RTC), DS18B20 temperature sensor, a microSD card slot, 5 button keypad and also a light sensor. It was inspired by a shield found at %newwin% [[http://picshop.nl/lcd_shield.html | PICShop]].  Gerben at PICShop kindly sent me an example board. The quality of the board was excellent. Unfortunately, the pin-out of the PICShop LCD board is based around the Amicus18.  This is not compatible with Firewing, which follows the pin-out of the Arduino UNO. %rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-lcd-plus-02.jpg %justify% Many LCD shields I have seen use a standard Hitachi based HD44780 compatible LCD which is larger than the physical shield. So it either hangs over the shield or you have to make the shield larger to accommodate the LCD. There is nothing wrong with doing this, but it has always kind of bugged me that the shield footprint has to be different from the base board. Well, not with the LCD+, it fits perfectly on a standard shield footprint and also uses a standard HD44780 interface! It's really readable as well, especially with the back light switched on. Incidentally, you can control the backlight brightness using a single Firewing instruction.  Or use the LCD+ light sensitive resistor to control the backlight brightness - really cool!

%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-lcd-plus-amber.jpg |
Changed lines 45-46 from:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:prototyping-small-01.png
%justify%I thought it worth mentioning in a little more detail the Firewing prototyping board used when developing shields. It's a great double sided board with a prototyping area comprised of paired holes. These is an extremely useful feature as many prototyping boards just have single holes which can make connecting wires to components a real pain sometimes. However, with paired holes, you now have somewhere to solder the component and solder a connection wire. The paired links are exposed which means you can easily break them if required. In addition, the board has a collection of surface mount pads with break out areas making this a very comprehensive board indeed. I was a bit nervous with respect to surface mount components but [[User.Majenko | Matt]] convinced me to give it a go. I find it much easier than through hole! Well, for the large surface mount parts anyway. But if you can solder through hole and have never tried surface mount then give it a go, you won't regret it! I certainly haven't. %lfloat text-align=center margin-top=5px margin-left=16px% Attach:prototyping-small-02.png%justify%You can also squeeze a small mini breadboard (the ones with 170 tie points) onto the prototyping area and use the headers to break out from. I used a black breadboard and it looks really cool! Small as the breadboard area is, it's fantastic for testing out small circuit ideas. I used one of Matt's %newwin% [[http://www.ebay.co.uk/itm/Rapid-Prototyping-LED-breadboard-Arduino-Launchpad-PIC-etc-plug-in-module-/190705586955?pt=UK_BOI_Electrical_Components_Supplies_ET&var=&hash=item721b64db44 | LED breadcrumbs]] to develop an interrupt driven PWM library - what a time saver the breadboard with breadcrumbs turned out to be! 
to:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-proto-02.jpg
%justify%I thought it worth mentioning in a little more detail the Firewing prototyping board used when developing shields. It's a great double sided board with a prototyping area comprised of paired holes. These is an extremely useful feature as many prototyping boards just have single holes which can make connecting wires to components a real pain sometimes. However, with paired holes, you now have somewhere to solder the component and solder a connection wire. The paired links are exposed which means you can easily break them if required. In addition, the board has a collection of surface mount pads with break out areas making this a very comprehensive board indeed. I was a bit nervous with respect to surface mount components but [[User.Majenko | Matt]] convinced me to give it a go. I find it much easier than through hole! Well, for the large surface mount parts anyway. But if you can solder through hole and have never tried surface mount then give it a go, you won't regret it! I certainly haven't. %lfloat text-align=center margin-top=5px margin-left=16px% Attach:small-proto-01.jpg%justify%You can also squeeze a small mini breadboard (the ones with 170 tie points) onto the prototyping area and use the headers to break out from. I used a black breadboard and it looks really cool! Small as the breadboard area is, it's fantastic for testing out small circuit ideas. I used one of Matt's %newwin% [[http://www.ebay.co.uk/itm/Rapid-Prototyping-LED-breadboard-Arduino-Launchpad-PIC-etc-plug-in-module-/190705586955?pt=UK_BOI_Electrical_Components_Supplies_ET&var=&hash=item721b64db44 | LED breadcrumbs]] to develop an interrupt driven PWM library - what a time saver the breadboard with breadcrumbs turned out to be! 
May 01, 2013, at 08:22 AM by David Barker -
Changed line 21 from:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:microsd-small.png
to:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-micro-sd-04.jpg
May 01, 2013, at 08:21 AM by David Barker -
Changed line 9 from:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-xbee-onchip.png
to:
%rfloat text-align=center margin-top=5px margin-right=16px margin-left=16px% Attach:small-xbee-02.jpg
May 01, 2013, at 08:19 AM by David Barker -
Changed line 1 from:
%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:firewing-small.png |
to:
%lfloat text-align=center margin-top=5px margin-right=16px margin-bottom=5px margin-left=16px% Attach:small-main-board-01.jpg |
April 18, 2013, at 07:02 PM by David Barker -
Added lines 5-6:
%justify%'''18-04-2013''' It's been really hectic here at the Firewing nest, so apologies for the lack of updates.  The good news is that '''we are hoping to release Firewing very soon''' - please keep checking in for the latest info!
Added line 10:
March 10, 2013, at 12:22 PM by David Barker -
Added lines 8-9:
%justify%'''10-03-2013''' BETA testing the compiler is progressing well and we are about to get the main Firewing boards assembled. The original SD card holder in many of the Firewing shields was a push-pull type. This has proved to be a little problematic, so we are switching to a push-push socket. This has meant changing all of the board designs that have SD card holders, but we think it is worth it!
Added lines 8-9:
%justify%'''24-02-2013''' It's been a busy week updating the [[Firewing.Library | library reference]] and [[Firewing.MainBoard | main board]] pages.  There have also been a number of new [[Firewing.Download | software updates]]. If you are using the  BETA compiler, please do let us know what you think! If you are not already a member, you might want to think about joining the [[http://www.firewing.info/forum | forum]].
Added lines 8-9:
%justify%'''17-02-2013''' During the week we took the step to release the compiler as an open BETA.  You can download from [[Firewing.Download | here]]. If you download, don't forget to check in regularly for updates!  The library reference guide is also in the process of being updated, you can view that [[ Firewing.Library | here]] - keep checking for updates.