
Issue 45 - Late November 2004 News@All-Energy , the free emailed newsletter is published by Media Generation Events and Aberdeen Exhibition and Conference Centre , organisers of the annual All-Energy renewable energy exhibition and conference . The fifth All-Energy will be held 25 and 26 May 2005 in Aberdeen . The All-Energy exhibitor list is growing fast -- indeed , over half the space has already been reserved with six months to go ! You 'll find the regularly updated floorplan and exhibitor list at www . a ll-energy . c o. u k - and on the All-Energy stand ( F89 ) at EWEC 2004 . There 's a pdf of the first in a series of All-Energy printed newsletters kindly sponsored by AREG ( Aberdeen Renewable Energy Group ) on the website too . The conference steering group meets 1 December --suggestions for speakers or topics should be sent to info@all-energy . c o. u k by 29 November please . CONTENTS 1. GENERAL -- UK 1.1 . G lobal warming a priority 1.2 . W orld Offshore Renewable Energy Report 1.3 . S cotland on target 1.4 . M ichael Howard 's views 1.5 . S anyo invests in Europe 1.6 . A sking the experts 1.7 . R E companies look for investment 1.8 . U KERC head appointed 1.9 . L ooking for board members 2. GENERAL -- OVERSEAS 3. GRID , TRANSMISSION AND RO 3.1 . R O plans 3.2 . L atest from Ofgem 3.3 . R eassurances from Scottish Executive 3.4 . G rid expansion in Scotland 3.5 . C o-op goes green 4. WIND -- UK 4.1 . E WEC 2004 opens 4.2 . R ecord wind farm construction 4.3 . £ 7bn of investment into wind industry 4.4 . C lean coal not wind is the answer 4.5 . N o significant risk to shipping 4.6 . F KI pulls out of turbine business 4.7 . S uccess of visitor centre 4.8 . T echnology transfer from RE to oil industry 4.9 . W ind farms and house prices 4.10 . T he big one ! 4.11 . P lans for new big Scottish windfarm 4.12 . C aton Moor goes to REpower 4.13 . P lanning sought for 500MW windfarm 4.14 . S W to have 280 wind turbines 4.15 . S upport for windpower in Devon 4.16 . C ontract win for Global Marine 4.17.100MW deal for Geotrupes 4.18 . B rian Wilson plugs in 4.19 . R esources will be strained offshore 4.20 . C ongrats to Wales on TAN8 4.21 . A dding excitement to the landscape 4.22 . F rom 3 to 11 ... ... 4.23 . M arine Renewables Directory 5. WIND -- OVERSEAS 6. WAVE AND TIDAL 6.1 . M inister briefed on Wave Hub 6.2 . S tingray news from EB 6.3 . T esting at NaREC 6.4 . P ort Kembla structure has arrived 6.5 . S MART award for Scottish wave device 6.6 . T idEl wins Technology Entrepreneur award 6.7 . G ood news for Tidal Electric 6.8 . A WS aims for Scottish manufacture 6.9 . A lderney tidal plans 7. BIOENERGY 7.1 . B iofuels offer opportunities for farmers 7.2 . W here there 's muck , there 's gas . 7.3 . G row with energy in mind 7.4 . U K push for biomass 8. FUEL CELLS AND HYDROGEN 8.1 . T omorrow 's petrol is a gas 9. HYDRO 9.1 . R oyal family 's green credentials 9.2 . C ontract for Dulas 10 . NUCLEAR 10.1 . N uclear power at the IoD 10.2 . D isposing of nuclear waste -- the options 10.3 . T en new nuclear stations for UK ? 11 . PV AND SOLAR 11.1 . T hree trophies for solarcentury 11.2 . S olargen look to Italy 11.3 . S olar and fuel cells to combat flooding 11.4 . B P Solar in profit 11.5 . S cotland 's largest PV installation 11.6 . S olar power in Spain 11.7 . S olar dish development 12 . AND OTHER SOURCES -- carbon sequestration ; geothermal and CHP 13 . JOB HUNTING ? 14 . KEEPING UP TO DATE 1 . G ENERAL -- UK 1.1 . G lobal warming a priority French President Jacques Chirac and UK Prime Minister Tony Blair pledged to make reducing global warming a priority when the UK takes over the presidency of the G8 in January 2005. http://dbs.cordis.lu/cgi-bin/srchidadb ? CALLER=NHP_EN_NEWS&ACTION=D&SESSION=&RCN=EN_RCN_ID:22948 1.2 . W orld Offshore Renewable Energy Report The second edition of The World Offshore Renewable Energy Report focuses on the period 2004-2008 . Building on the success of the first edition , published by the DTI 's Renewables 2010 Target Team , it considers offshore wind , wave and tidal power . CDs available from 01224 254087 or chris . k elly@dti . g si . g ov . u k 1.3 . S cotland on target First Minister Jack McConnell told a meeting that Scotland is on course to meet interim renewable energy targets www . s cotland . g ov . u k/News/Releases/2004/11/18141058 1.4 . M ichael Howard 's views Tory leader Michael Howard lays out his own vision for the countryside including his views on renewables www . w esternmorningnews . c o. u k/displayNode . j sp ? nodeId=143662&command=displayContent&sourceNode=143640& 1.5 . S anyo invests in Europe Sanyo Electric Company has launched its new Energy & Ecology Business in Europe , representing an investment of 150m Euros by 2006 http://sourcewire.com/releases/rel_display.php ? relid=19915&hilite = 1.6 . A sking the experts Is it possible to meet growing energy demands without causing catastrophic damage to the environment ? http://news.bbc.co.uk/2/hi/science/nature/4000225.stm 1.7 . R E companies look for investment siGEN , AWS Ocean Energy , and Puregen were amongst 14 growth-stage companies seeking funding at a recent Connect investment conference www . f uelcellsworks . c om/Supppage1394 . h tml 1.8 . U KERC head appointed John Loughhead , former Vice-President of Technology for Alstom , has been appointed Executive Director of the UK Energy Research Centre ( UKERC www . u kerc . a c. u k/newsindex . h tm 1.9 . L ooking for board members The community energy company being established by Highlands and Islands Enterprise , is looking for people to join its board of directors www . h ie . c o. u k/Default . a spx . L ocID-0finewkc3 . R efLocID-0fihiesv5007lat . L ang-EN . h tm 2 . GENERAL -- OVERSEAS The 90-day countdown to the Kyoto Protocol 's entry into force was started by the receipt of the Russian Federation 's instrument of ratification by the UN Secretary-General . The Protocol will become legally binding on its 128 Parties on 16 February 2005 http://unfccc.int/press/items/2794.php 1m Euro-worth of funding is available for the period 1 April 2005 to 31 March 2006 . The REEEP is seeking project proposals its next funding round www . r eeep . o rg/index . c fm ? articleid=1058 An investment of Euro 443bn is needed by 2020 if Europe is to meet its targets for renewable energies says a marketing report produced by the European Renewable Energy Council www . s parksdata . c o. u k/refocus/showdoc . a sp ? docid=52575320&accnum=1&topics = Gamesa 's interests in China - an overview www . g amesa . e s/ingles/noticias/noticias . h tm Canada 's Minister of the Environment outlined his perspective on renewable energy , indicating that Canada 's future is closely linked to the development of RE www . r enewableenergyaccess . c om/rea/news/story ? id=17687 3 . G RID , TRANSMISSION AND RO 3.1 . R O plans UK Energy Minister , Mike O'Brien , published the Government 's plans for the review of the Renewables Obligation www . g nn . g ov . u k/environment/detail . a sp ? ReleaseID=134485&NewsAreaID=2&NavigatedFromDepartment=False 3.2 . L atest from Ofgem BETTA open letter on likely late issuance of offers under standard licence condition C18 of the electricity transmission licence www . o fgem . g ov . u k/temp/ofgem/cache/cmsattach/9350_25704 . p df BETTA consultation on the recovery of costs incurred as a result of the run-off of the Settlement Agreement for Scotland ( SAS ) -- An Ofgem/DTI consultation www . o fgem . g ov . u k/temp/ofgem/cache/cmsattach/9329_25404 . p df Treatment of embedded exemptable large power stations under BETTA - An Ofgem/DTI conclusions and further consultation document www . o fgem . g ov . u k/temp/ofgem/cache/cmsattach/9173_25304 . p df BETTA consultation on outstanding matters concerning the Grid Code under BETTA and associated STC drafting www . o fgem . g ov . u k/temp/ofgem/cache/cmsattach/9169_25104 . p df BETTA consultation on CUSC Interface Agreements - comments on the issues discussed should be sent by 1 December 2004 www . o fgem . g ov . u k/temp/ofgem/cache/cmsattach/9134_24904 . p df 3.3 . R eassurances from Scottish Executive The Scottish Executive assured the renewable energy industry based in Scotland 's peripheral areas that it will fight its corner to secure fair access charges to the grid www . s hetland-news . c o. u k/pages/news%20stories/november%202004/executive_supports_renewable_industry . h 3.4 . G rid expansion in Scotland Highland Council 's planning committee opted for a proposal to take electricity from a proposed giant windfarm in the Western Isles to the national grid via a future submarine transmission cable , coming ashore at Dounreay in Caithness www . t hisisnorthscotland . c o. u k/displayNode . j sp ? nodeId=149475&command=displayContent&sourceNode=149205 Scottish Natural Heritage said five possible routes for the transmission line are all likely to have a significant impact and could affect a number of internationally important nature sites http://news.scotsman.com/scotland.cfm ? id=1331912004 The National Trust for Scotland has joined the chorus of protest against the plans www . s undayherald . c om/46189 3.5 . C o-op goes green The Co-operative Group has announced new deals worth more than £ 25 million to provide 100 per cent green electricity to its sites throughout mainland UK . http://icnewcastle.icnetwork.co.uk/eveningchronicle/ukandworld/page.cfm ? objectid=14846403&method=ful 4 . W IND -- UK 4.1 . E WEC 2004 opens The European Wind Energy Conference is being held until 25 November at Wembley , London . Pre registration closed with over 1500 delegates from 40 countries and 255 exhibiting companies www . e wea . o rg A2SEA 's MW Ocean Ady , carrying a Vestas V90-3.0MW nacelle and blades is moored to HMS Belfast just by Tower Bridge in Central London throughout EWEC www . a 2sea . c om / 4.2 . R ecord wind farm construction Construction of wind farms hit a record this year , Patricia Hewitt , trade and industry secretary , announced although the development of offshore schemes must accelerate if the government is to meet its climate-change targets http://news.ft.com/cms/s/23335e30-3c2c-11d9-8b17-00000e2511c8.html 4.3 . £ 7bn of investment into wind industry BWEA released new figures showing that 2004 is a record year for the rapidly expanding UK wind industry and predicting that expansion out to 2010 should result in some £ 7 billion of new investment into the sector www . b wea . c om/media/news/record2004 . h tml 4.4 . C lean coal not wind is the answer Britain could cut the cost of reducing greenhouse gases by £ 3 billion if it fitted clean-coal technology to its ageing power stations , rather than building wind farms . http://business.timesonline.co.uk/article/0,,8209-1369581,00.html 4.5 . N o significant risk to shipping Npower Renewables carried out navigational trials at North Hoyle with the Maritime and Coastguard Agency ( MCA ) and consultants QinetiQ . Most ships had no problems seeing the turbines on radar and other systems , and radio links between boats and shore also worked . http://icnorthwales.icnetwork.co.uk/news/regionalnews/tm_objectid=14900104%26method=full%26siteid=50 4.6 . F KI pulls out of turbine business FKI announced its proposal to exit the DeWind turbine business it acquired in 2002 - the rapid consolidation of wind turbine manufacturers and the increasing influence of major wind power developers have significantly increased competitive pressures www . f ki . c o. u k/newsdetail . c fm ? contentid=203 4.7 . S uccess of visitor centre E. O N UK 's Scroby Sands Information Centre has welcomed 30,000 people through its doors since it opened in May www . e on-uk . c om/Content/media/news . a spx ? MenuId=22 4.8 . T echnology transfer from RE to oil industry Lessons learned from working in the renewables industry helped Cns Subsea complete a £ 2m contractor for Shell repairing the Brent Charlie/Dunlin Alpha power cable in just three weeks cns@cns-ltd . c om 4.9 . W ind farms and house prices A planning application for a wind farm hits local house prices , but the negative impact diminishes as time goes by says RICS ( Royal Institution of Chartered Surveyors ) www . r ics . o rg/NR/exeres/C714E388-9C8E-4C90-858A-6EB4FF58EC1D . h tm BWEA revealed the results of a study conducted by Knight Frank which also shows it is too early to say categorically that wind farms are a serious threat to homeowners www . b wea . c om/media/news/houseprices . h tmL 4.10 . T he big one ! Lewis Wind Power Ltd , a joint venture of AMEC and British Energy , has submitted a planning application to the Scottish Executive for permission to build the world 's largest onshore wind farm in the north of the Isle of Lewis www . a mec . c om/news/media_releases_2ndlevel . a sp ? Pageid=34&MediaID=960 Comhairle nan Eilean Siar has set up a website to provide information on the Lewis Wind Power application . The site allows comments to be sent by email . www . c ne-siar . g ov . u k/lewiswindpower 4.11 . P lans for new big Scottish windfarm Plans have been unveiled to build one of the biggest wind farms in Scotland . Amec said the 100-turbine development in East Ayrshire and Dumfries and Galloway would generate 300MW www . t heherald . c o. u k/news/27142 . h tml 4.12 . C aton Moor goes to REpower REpower UK Ltd is supplying the repowering project " Caton Moor " with eight 2-MW , type MM70 units . This is REpower UK 's second contract a year after setting up the REpower : P eter Brotherhood joint venture www . r epower . d e / 4.13 . P lanning sought for 500MW windfarm Airtricity has sought planning permission in Scotland for one of the biggest onshore wind farms in the world www . b usinessworld . i e/livenews . h tm ? a=1040876 ; s=rollingnews . h tm 4.14 . S W to have 280 wind turbines Ministers say the South West of England must find room for 280 wind turbines to meet energy targets http://news.bbc.co.uk/2/hi/uk_news/england/devon/4017061.stm 4.15 . S upport for windpower in Devon A survey by MORI found that 71 percent of rural residents questioned , support the use of wind power in Devon . www . r egensw . c o. u k/documents/DevonMORIPollPR-091104 . p df 4.16 . C ontract win for Global Marine Global Marine Systems , now able to emerge from administration , has won two new contracts , the most recent is for subsea cabling for an offshore windfarm project off the coast of Kent www . b usinessweekly . c o. u k/news/view_article . a sp ? article_id=8861 4.17.100MW deal for Geotrupes Geotrupes has signed an agreement with a major electricity company to provide it with 100 MW of electricity , with wind turbines the initial focus. . www . b usinessweekly . c o. u k/news/view_article . a sp ? article_id=8868 4.18 . B rian Wilson plugs in The world 's first domestic windmill feeding electricity directly into the household power supply was switched at the Glasgow home of former UK Energy Minister , Brian Wilson MP www . w indsave . c om/news . h tm 4.19 . R esources will be strained offshore A rapid expansion of offshore wind farms in North Sea waters risks straining resources ... . One issue involves the provision of divers for maintenance and servicing work , with the North Sea oil and gas sector the obvious recruiting ground www . t elegraph . c o. u k/money/main . j html ? xml=/money/2004/11/11/cnwind11 . x ml 4.20 . C ongrats to Wales on TAN8 BWEA congratulates the Welsh Assembly on producing its new framework for a range of renewable technologies . Technical Advice Note ( TAN ) 8 includes a target of an additional 800MW of onshore wind by 2010 www . b wea . c om/media/news/tan8welcome . h tml 4.21 . A dding excitement to the landscape Wind farms could spell the way for artistic expression according to a partner at MosArt Landscape Architects . www . e die . n et/news/news_story . a sp ? id=9158&channel=6 4.22 . F rom 3 to 11 ... ... Two Cumbrian firms have been contracted to take the number of turbines at Winscales , near Workington , from three to 11 www . c umbria-online . c o. u k/viewarticle . a sp ? id=154387 4.23 . M arine Renewables Directory The Marine Renewables Directory is an up to date , online database of vessels , ports and harbours , companies and service providers , allowing developers to search for appropriate resources , and the supply chain to ' showcase ' their capabilities . http://www.marinerenewablesdirectory.com 5 . W IND -- OVERSEAS Gamesa sells 469 mw of windfarms to Iberdrola in Spain and Portugal for 566 million euros www . g amesa . e s/ingles/noticias/noticias . h tm The EWEA supports the intention to eventually adopt support mechanisms for renewable electricity that are compatible with an undistorted Internal Market www . e wea . o rg / The REpower 5M , is feeding electricity into the grid . REpower has been successfully awarded one of the five sites up for tender in the Cuxhaven test field . An application for planning permission will be made by the new year so a REpower 5M can be erected by the end of 2005 www . r epower . d e Endesa will purchase wind farms from Gamesa in Italy with a total installed capacity of 200 MW and at an estimated cost of Euros 250 million . http://home.businesswire.com/portal/site/google/index.jsp ? ndmViewId=news_view&newsId=20041103005621& REpower Systems has signed a licence agreement with China 's Dongfang Steam Turbine Works who will produce the MD70 and MD77 turbines to sell in China . www . r epower . d e A record number of new U. S . wind energy projects is expected next year , spurred by Congress ' decision to extend a federal tax credit for wind energy production www . p lanetark . c om/dailynewsstory . c fm/newsid/27956/story . h tm RES America Construction has ordered 36 Vestas V82-1.65 MW wind turbines . Nebraska Public Power District will own the wind power plant and utilize the power output www . v estas . c om/uk/news/press/newsSE_Detail_UK_04 . a sp ? ID=103 Winergy and Atlantis Power will jointly explore the development of offshore wind farms using Winergy sites and Atlantis Power offshore platform technologies www . e mediawire . c om/releases/2004/11/emw178477 . h tm The southern hemisphere 's largest wind turbines have begun generating electricity in South Australia . The Canunda wind farm site consists of 23 2MW turbines www . w indprospect . c om . a u The Swedish governing party and two coalition parties have agreed to speed up the installation of several big offshore wind farms . www . w indpower . o rg/en/news040929 . h tm With few serious concerns raised by the U. S . Army Corps of Engineers , the USA 's first offshore windfarm at Cape Cod could be under construction within a year www . c apecodonline . c om/cctimes/corpszxreport9 . h tm 6 . W AVE AND TIDAL 6.1 . M inister briefed on Wave Hub Energy minister Mike O'Brien was briefed on plans to create a Wave Hub off the coast of north Cornwall . A feasibility study on the revolutionary scheme is due to be completed by the end of the year . http://news.bbc.co.uk/1/hi/england/cornwall/4023341.stm 6.2 . S tingray news from EB EB has completed its programme to design , build , install offshore , test and decommission a full scale demonstrator of its Stingray tidal stream generator . The next phase is to design and build a 5MW pre-commercial power station to demonstrate the technology on a commercial scale , a project which would cost in excess of £ 20 million . EB alone cannot fund such a project and has put a hold on future development of Stingray until there are clear indications that this level of investment is likely to yield a satisfactory return . www . e ngb . c om 6.3 . T esting at NaREC Ecofys is testing a 1:10 scale model of Wave Rotor at NaREC in Blyth . Performance , blade configurations and inertia are being investigated . Funded under the Carbon Trust Marine Energy Challenge Programme the testing is being supervised by Halcrow www . e cofys . c om/com/news/news . h tm 6.4 . P ort Kembla structure has arrived The main structural component of the Port Kembla Wave Energy Project , weighing 485 tonnes and with dimensions of 40m by 35m by 18m has arrived at Port Kembla in Australia www . e nergetech . c om . a u / 6.5 . S MART award for Scottish wave device More than £ 1m is to be awarded to small Scottish companies under the latest round of the Scottish Executive 's SMART : S cotland R&D support programme - the development of a wave energy converter by Aberdeen company Nordeng benefits www . s cotland . g ov . u k/News/Releases/2004/11/01081903 6.6 . T idEl wins Technology Entrepreneur award SMD Hydrovision have been awarded 1 st place in the ' Technology Entrepreneur ' event sponsored by E-Synergy and The Carbon Trust . www . s mdhydrovision . c om/news/ ? news_id=22 6.7 . G ood news for Tidal Electric The Chinese government has expressed enthusiastic support of Tidal Electric 's 300 MW offshore tidal lagoon near the mouth of the Yalu River by signing an agreement pledging to cooperate with the development www . t idalelectric . c om/News%20China . h tm 6.8 . A WS aims for Scottish manufacture AWS Ocean Energy Ltd aims to bring manufacturing of the world 's largest wave power generator to Scotland www . t hisisnorthscotland . c o. u k/displayNode . j sp ? nodeId=149235&command=displayContent&sourceNode=149218 6.9 . A lderney tidal plans A panel reviewing alternative forms of power in the island of Alderney is recommending a tidal energy commission is set up http://news.bbc.co.uk/2/hi/europe/guernsey/4016665.stm 7 . B IOENERGY 7.1 . B iofuels offer opportunities for farmers Biofuels could become a major revenue earner for Britain 's arable farmers within 5-10 years - much will depend on government support , a major study into the UK cereals sector concludes http://story.news.yahoo.com/news ? tmpl=story&cid=570&ncid=753&e=2&u=/nm/20041122/sc_nm/environment_br 7.2 . W here there 's muck , there 's gas . Scientists have created genetically modified yeasts and fungi that can turn agricultural waste into fuel for cars and trucks http://observer.guardian.co.uk/uk_news/story/0,6903,1356121,00.html 7.3 . G row with energy in mind Scotland 's Rural Development Minister Ross Finnie urged arable farmers to be innovative in identifying new opportunities for their businesses and spoke of novel crops for biomass www . s cotland . g ov . u k/News/Releases/2004/11/09101847 7.4 . U K push for biomass Food and Farming minister Larry Whitty unveiled the £ 3.5million UK-wide Bio-Energy Infrastructure Scheme www . t hisisthelakedistrict . c o. u k/farm/farming/display . v ar.540683.0 . b iomass_gaining_energy . p hp 8 . F UEL CELLS AND HYDROGEN 8.1 . T omorrow 's petrol is a gas Shell 's first US hydrogen station is open reports John Vidal in The Guardian . But will we all be filling up soon ? http://education.guardian.co.uk/higher/sciences/story/0,12243,1347842,00.html 9 . H YDRO 9.1 . R oyal family 's green credentials The power of the River Thames is to be harnessed to help provide electricity for Windsor Castle in a scheme that underlines the Royal family 's green credentials . www . t imesonline . c o. u k/article/0 , , 2087-1337741,00 . h tml 9.2 . C ontract for Dulas Dulas Hydro has been awarded a £ 250,000 design , construct and commissioning contract by RWE npower , to refurbish a 700kW hydro scheme at Auchtertyre in Scotland www . r enewable-resources . c om/d_base/news . p hp ? category=dulas 10 . N UCLEAR 10.1 . N uclear power at the IoD Nuclear power featured at an energy seminar organised by the Institute of Directors . Delegates heard arguments for and against the role nuclear power should play in the UK 's future energy strategy www . i od . c om/is-bin/INTERSHOP . e nfinity/eCS/Store/en/-/GBP/IODDirectLink-Start ? Type=Content&TemplateNa 10.2 . D isposing of nuclear waste -- the options CoRWM , the Committee on Radioactive Waste Management , met to draw up , for the first time , a short list of options for dealing with the UK 's nuclear waste from its ' long list ' of 15 www . c orwm . o rg . u k/content-0 10.3 . T en new nuclear stations for UK ? the Committee on Radioactive Waste Management has raised the prospect that 10 new nuclear stations could be built in Britain http://news.independent.co.uk/business/news/story.jsp ? story=580268 11 . P V AND SOLAR 11.1 . T hree trophies for solarcentury solarcentury won three trophies at the annual " Inner City 100 " awards ceremony in the City of London - an annual league table of the hundred fastest growing inner city companies www . s olarcentury . c o. u k/news / 11.2 . S olargen look to Italy Solargen has formed a partnership with the Aprile Group to break into the Italian market http://icwales.icnetwork.co.uk/0300business/0100news/tm_objectid=14854449&method=full&siteid=50082&h 11.3 . S olar and fuel cells to combat flooding Dabbrook Services , the Environment Agency and BOC have joined forces on a project combining solar power with electricity generated by hydrogen fuel cells to control river levels and prevent flooding by powering an automated weir http://business.edp24.co.uk/story.aspx ? brand=BIZOnline&category=Business&tBrand=BIZOnline&tCategory= 11.4 . B P Solar in profit BP Solar is turning profitable for the first time in its 30-year history and aims to more than double its manufacturing capacity www . r euters . c o. u k/newsPackageArticle . j html ? type=reutersEdgeNews&storyID=618431&section=finance 11.5 . S cotland 's largest PV installation The largest photovoltaic installation in Scotland has been installed at Sir E. Scott School in the Western Isles www . c ne-siar . g ov . u k/press/041102 . h tm 11.6 . S olar power in Spain Spain is making solar panels compulsory in new and renovated buildings www . t imesonline . c o. u k/article/0 , , 3-1350946,00 . h tml 11.7 . S olar dish development Six solar dish-engine systems for electricity generation are being built and tested in the USA - they will provide enough grid-ready solar electricity to power more than 40 homes www . i nnovations-report . c om/html/reports/energy_engineering/report-36065 . h tml 12 . A ND OTHER SOURCES North Sea CO2 storage Environmental affairs minister , Elliot Morley , has asked for support for the country 's plans to store CO 2 in the sediments at the bottom of the North Sea www . b ellona . n o/en/energy/35951 . h tml Geothermal power for University Warmth from the earth will be used as a heat source in a new Environmental Centre for Wales , to be built on the University of Wales , Bangor 's Science Site www . n ewswales . c o. u k/ ? section=Environment&F=1&id=7488 CHP opening welcomed Margaret Beckett formally opened ConocoPhillips ' Immingham CHP project - at 730Mwe , one of the largest , cleanest and most efficient Combined Heat and Power ( CHP ) plants in Europe www . c hpa . o rg/press_releases/2004/Immingham%20Launch%2001%20Nov%2004 . d oc 13 . J OB HUNTING ? Garrad Hassan is looking to recruit civil / structural engineers www . g arradhassan . c om/jobs/index . h tm 14 . K EEPING UP TO DATE For daily news www . n arec . c o. u k For a regularly updated list of all known industry events go to www . a ll-energy . c o. u k/eventlist . p hp Data Protection Act 1998 Media Generation Events Limited will hold your email address on its computer database . This will only be accessed , retrieved and used for the purpose of distributing the News@All-Energy newsletter and providing information on All-Energy . Your data will not be passed to third parties , and the data owner will at all times be Media Generation Events Limited . If you do n't want to receive News@All-Energy , email info@all-energy . c o. u k with " Remove " in the subject line and your contact details in the message . Colleagues wishing to receive News@All-Energy free of charge should email the same address with their full contact details and " Subscribe " as the subject . 