Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ed Langley. Me ● Finished CRTS degree here at UWE in 2006 ● Went to Heber for placement year ● Used board from Heber for final year seven months project.

Similar presentations


Presentation on theme: "Ed Langley. Me ● Finished CRTS degree here at UWE in 2006 ● Went to Heber for placement year ● Used board from Heber for final year seven months project."— Presentation transcript:

1 Ed Langley

2 Me ● Finished CRTS degree here at UWE in 2006 ● Went to Heber for placement year ● Used board from Heber for final year seven months project ● Returned to Heber after finishing at UWE  Should have taken more than a weekends break!

3 Heber ● Based in Stroud, Gloucestershire ● Design and manufacture electronic control systems  Manufacture meaning: buying the parts, inspection, kitting and testing the final boards  PCB fabrication and board assembly is subcontracted  Design includes both hardware, software and FPGAs ● 40 Employees, 10 Engineers

4 Heber

5

6 Heber Products: Pluto ● Embedded control board range  Cheaper (Than PC motherboards)  Based on Motorola (Now Freescale) micro controllers ● Pluto 5: 68340 ● Pluto 6: ColdFire 5206e ● Pluto 7: ColdFire 5271 ● Pluto 8: ColdFire 5475

7 Heber Products: Pluto 6

8 Heber Products: Axis ● X86 motherboard range  More powerful  More programmers available  More expensive  Less interesting for us ● Windows XP Embedded ● Intel 945 chip set and Celeron M440  Various motherboards to get dual video on board and PCI express options

9 Heber Products: old Axis

10

11 Heber Products: Xline ● USB peripheral boards ● Cypress EZ-USB FX2 ● Device drivers  Windows.sys  Linux.ko  Driver to load firmware, then another for sending commands to the board ● API DLL and.so ● IO, reel control, security (Encryption and power down monitoring) RNG, RTC, SRAM

12 Heber Products: X10i

13 What do I do there? ● Embedded software engineer ● Main projects since returning:  Pluto 7  X20  Pluto 8 Linux port  XPE  XSpin

14 Project: Pluto 7 ● First project when returning back to Heber ● Worked on a few drivers which weren't working  Software SPI for a SEC meter

15 Project: Pluto 7 ● ATA/FAT 32 drivers  Written in house long ago from scratch  Improved so more than one drive/FS is supported ● QSPI controller driver  To talk to an SPI EEPROM ● Demonstration project/test harness

16 Project Politics ● Technology wasn't big enough leap to justify further spending  Production requires test fixtures for HP  Marketing costs ● Claims that it wouldn't sell  Differing opinions ● Many subtle grades of project abandonment  Pluto 7: stopped  Rumours and mumblings about perhaps unstopping  Gaming markets change, new requirements arise

17 Next project: X20 test software ● Test suite/harness  Quite a common activity in software jobs ● X20 was a USB peripheral board with:  Coldfire MCU (Same as Pluto 7)  PIC (RTC, security switches during power off)  IO  SPI  SRAM  7 serial ports  Smartcard FPGA

18 Project: X20 test software Application X20.dll X20.sys X20 board USB user space OS ftdi.sys USB Serial port system calls

19 Project: X20 test software ● Used the opportunity to try out WxWidgets ● GUI and command line versions for Linux and Windows ● FTDI USB->RS232 chips on X20  Used drivers in the OS  Different system calls needed for Windows and Linux ● Quirks added delays and never worked reliably

20 Project: X20 test software

21 More project politics ● X20 Board specification expanded at the request of one customer ● Became too expensive ● They didn't want to buy any ● Neither did anyone else ● X20: definitely canned

22 Next project: Pluto 8 ● New embedded control board ● Freescale ColdFire 5475 MCU  MMU  Ethernet controller  Linux BSP from Freescale ● Fujitsu Carmine graphics  Promise of OpenGL | ES driver provision ● USB host controller ● Big Xilinx FPGA with flash inside

23 Project: Pluto 8

24 Smartcard development

25 Smartcard development: Basic Command &H80 &H0a ZeroCounters( SessionId As Long ) ' if the session ID is not correct get out-a-here If SessionId <> SecSessionId Then SW1SW2 = errSessionIdBad Exit End If If GetKeyNumber() = AdminEncrypted Then ' Update the success counter AuthFpgaSuccessShdw = 0 UpdateFpgaSuccess = 1 AuthFpgaSuccess = AuthFpgaSuccessShdw UpdateFpgaSuccess = 0 ' Update failure counter AuthFpgaFailureShdw = 0 UpdateFpgaFailure = 1 AuthFpgaFailure = AuthFpgaFailureShdw UpdateFpgaFailure = 0 Else SW1SW2 = errGeneralFailure End If End Command

26 Project: Pluto 8 ● Linux on Pluto 8  Started with the Carmine PCI evaluation card, connected to the 5475 evaluation board ● Got a basic kernel frame buffer driver working ● Should have checked OpenGL driver availability ● Established basic feasibility of the embedded Linux system  Real Pluto 8 boards arrived ● Convinced bosses not to contract out all the porting work and driver development ● By going ahead and doing it

27 Pluto 8 Linux ● Colilo port ● Built Fujitsu drivers for our board ● SDL port ● Subcontracted ALSA driver to MPC Data ● Tried to introduce SVN usage

28 More cancellation ● A new x86 product was planned  Intel Atom chipset motherboard with X10i joined on to it ● Would match the price of Pluto 8 and run Linux with better performance ● Pluto 8 Linux: shelved

29 Endlessly ongoing project: Microsoft Windows XP Embedded ● Warning ● Don't use it ● It's Rubbish

30 Endlessly ongoing project: Microsoft Windows XP Embedded

31

32 Bad times ● Gaming market has peaks and troughs ● Heber entered a long, deep trough  3 months with low profits ● Redundancy scheme announced  2 weeks wondering who will go  Polishing up CV ● When is time right to move on?

33 Recent Project: Xspin with LEDs ● Xspin is a USB board for spinning up to 8 reels ● Had 1 month to add software PWM control  44 LED outputs ● 16 brightness levels  Limit to 5 reels to provide enough spare outputs ● Create wiring loom and glue LEDs in place of reel lamps ● Then had to make it do fancy patterns  Time pressure to show to customer  Ended up with longer to improve it  Going to show in Las Vegas this week

34 Xspin with LEDs

35

36 Xspin with LEDs: video!

37 Lessons learned so far ● When business case for project disappears, end project sooner not later  Not that it matters because I'm not in charge ● Redundancy isn't personal

38 Lessons learned so far ● Small vs big company  Small ● Less strict regarding design procedures ● Closer to customer ● Shorter projects, better feedback  Big ● Can end up on long projects ● Better training  No difference in job security


Download ppt "Ed Langley. Me ● Finished CRTS degree here at UWE in 2006 ● Went to Heber for placement year ● Used board from Heber for final year seven months project."

Similar presentations


Ads by Google