Next Article in Journal
Exploiting Hardware Vulnerabilities to Attack Embedded System Devices: a Survey of Potent Microarchitectural Attacks
Previous Article in Journal
Risk Analysis of the Future Implementation of a Safety Management System for Multiple RPAS Based on First Demonstration Flights
Previous Article in Special Issue
A Miniature Data Repository on a Raspberry Pi
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Editorial

The Raspberry Pi: A Technology Disrupter, and the Enabler of Dreams

by
Steven J Johnston
*,† and
Simon J Cox
Computational Engineering and Design, Faculty of Engineering and the Environment, University of Southampton, Southampton SO16 7QF, UK
*
Author to whom correspondence should be addressed.
Southampton Boldrewood Innovation Campus, Building 176, University of Southampton, Southampton SO16 7QF, UK.
Electronics 2017, 6(3), 51; https://doi.org/10.3390/electronics6030051
Submission received: 4 July 2017 / Revised: 4 July 2017 / Accepted: 6 July 2017 / Published: 12 July 2017
(This article belongs to the Special Issue Raspberry Pi Technology)

1. Introduction

The Raspberry Pi Foundation aims to promote the teaching of Computer Science and is inspired by devices such as the ZX81 and Spectrum [1], the first home computers from the 1980s, and government backed in-school devices such as the BBC Acorn [2].
The first Raspberry Pi device was released in February 2012 (Raspberry Pi 1 Model B, generation 1). It proved to be an immediate success, in part due to the low $35 price. By adding a few peripherals, which are not included (keyboard, mouse, monitor, SD storage), it is possible to quickly have a fully working computer running Raspbian, a Debian-based Linux operating system.
It is often referred to as a Single Board Computer (SBC), meaning that it runs a full operating system and has sufficient peripherals (memory, CPU, power regulation) to start execution without the addition of hardware. The Raspberry Pi can support multiple operating system variants and only requires power to boot. Some Raspberry Pi versions can boot direct from network but generally file-system storage is required, for example a micro SD card.
Although other Single Board Computers (SBC) existed before the Raspberry Pi, historically they targeted industrial platforms such as vending machines and are often referred to as development boards. The Raspberry Pi Foundation made the SBC accessible to almost anyone, introducing not just a low cost computer, but one that can bridge the gap to the physical world by exposing General Purpose Input-Output (GPIO) connection pins. The Raspberry Pi pin header can be controlled programmatically from the operating system and supports a range of features, e.g., USB, UART, SPI, I2C and Interrupts, which can be used to connect a huge variety of electronic components.
This has led to the popularity of the Raspberry Pi, not only in education but with industry, hobbyists, prototype builders, gamers and the curious. It has enabled people to experiment in new ways, for example incorrectly connecting sensors to GPIO pins can result in a broken mainboard, this is less inconvenient if it is a Raspberry Pi but, catastrophic if it is the family PC.
The increase in popularity of Cyber Physical Systems (CPS) and the Internet of Things (IoT) has renewed the demand for embedded systems, on a large scale, greatly benefiting the Raspberry Pi. This demand is driven by the desire to instrument and understand the fabric of human civilisations ranging from cities to forests, in order to gain insights and produce actions, for example Smart Cities, Smart Cars, Smart Homes. This is achieved by sensor networks and their communication systems, the main driver is the falling cost of hardware and improvements in performance. Some predictions state that there will be 50 billion IoT devices by 2020 [3] which, although probably an over estimate, demonstrates a huge demand and opportunity for SBC applications.

2. Special Issue on Raspberry Pi Technology

This Special Issue includes a wide selection of publications that demonstrates both the breadth and depth of the capabilities of the Raspberry Pi. Almost all publications cite low cost of hardware, ease of availability and the advantages of a substantial community as the reasons for basing their work on the Raspberry Pi. We aim to represent a variety of use cases and area disciplines that utilise the Raspberry Pi but it is by no means exhaustive.
The predominant usage of the Raspberry Pi is, rather unsurprisingly, for educational purposes. This includes both hardware and software, in a range of educational and research facilities [4,5,6]; many of the other publications included in this Special Issue address specific trends. For example, with the availability of low-cost computing, we are seeing a change in architectures, whereby computing is pushed towards the edge of the network [7,8] . This Fog or Edge [9] computing is an important change that is required to make IoT systems more efficient and scalable. Scaling to billions of devices will only be possible if power is used efficiently through optimised computing and intelligent monitoring systems [10,11]. This will have an impact on the environment in which we live. Understanding climate change, pollution and other environmental issues can benefit from IoT devices that measure and log parameters [12,13].
With the creation of huge numbers of IoT devices, alternative networking models, strategies and mechanisms are required; one tool in this area of research is network testbeds [14,15]. These testbeds help bridge the worlds of pure simulation with experimental design. Physical testbeds can be costly, making Raspberry Pi-based solutions more attractive.
The Internet of Things encompasses all aspects of the digital world and the interaction with physical systems, for example art [16], industrial [17], medical research [18] and automotive applications [19].
As devices become embedded across the infrastructures of civilisations, more creative solutions are required for geo-location, wireless and mesh network technologies [20], in-situ image processing [21] and multi-agent systems [8]
Even in remote regions, Raspberry Pi devices are used for monitoring and analysing the circadian and ultradian locomotor activity of small marine invertebrates [22].

3. Pi the Prototype

The Raspberry Pi is a powerful prototyping platform, and many of the articles in this Special Issue are constructing prototypes [6,11,17,18,19].The idea of a prototype implies a partial implementation of all the desired features, but there is often a need to build a fully functional prototype [12,22].
There are two main reasons to build a prototype:
  • to test and validate an idea or hypotheses. This follows the fail fast design philosophy where it is best to identify the good and bad ideas early. Building a prototype in a matter of days is acceptable even if it is too big, expensive, consumes too much power and is a bit slow, if it provides a mechanism to prove or disprove the feasibility of an idea.
  • to validate hardware design. Before commissioning a large production run or fully optimising a design, a prototype can be used to validate the electronic design and sensor capabilities within a desired operating environment.
The Raspberry Pi is an ideal platform for this as it is commodity hardware, supports high-level programming languages (e.g., Python) and runs popular variants of Unix-like operating systems.

4. Pi as the Enabler

Embedded devices are more prolific than ever before, with the IoT and its applications being a key driver, including Smart Cities, Smart Homes, Agricultural Technology, Industry 4.0 and associated communities [23]. The cost of Single Board Computers and the demand for such systems has resulted in over ten million devices being sold [24].
We see the Raspberry Pi as an enabler technology, which is part of a general trend from the Mainframe to the envisioned tens-of-billions of deployed Internet of Things devices, as shown in Figure 1. We predict that the SBC is a stepping stone to the ‘Nano Computer’ which will be the basis of the Internet of Things revolution.

5. Pi in the Cloud

The desire to build IoT devices has never been stronger, and the range of creators is as wide as it has ever been, no longer left to a handful of large technology companies. There is a progression path for on-premises enterprise applications to migrate to cloud-based providers, and the same is true for Raspberry Pi based applications. Multiple cloud hosting companies offer fully managed Raspberry Pi hardware in commercial data centres, Platform As A Service (PAAS) [25,26].
Purchasing a Raspberry Pi in a data centre may seem a little strange as it is not possible to add additional hardware (e.g., sensors) and is a rather poor performing web server. However, it does make sense for all the millions of people who bought the devices for education, and subsequently developed applications. The Raspberry Pi is based on an ARM architecture, the latest is ARMv8. Migrating applications is not binary compatible with other architectures, so simply copying compiled files to an x86/x64 cloud hosted server will not work. A hosted Raspberry Pi is OS and hardware identical to those purchased in their millions, thus configuration files and binary file copying are supported. From an education perspective, making a custom application available publicly does not require port mapping, dynamic DNS or an understanding of processor architectures.
As these applications grow and need more processing power, one upgrade path could be to migrate to an ARM based server rather that migrating architectures [27]. This is in keeping with a rising trend to include ARM based servers in data centres.
A publicly addressable Raspberry Pi requires an internet address but IPv4 addresses are increasing in cost, potentially rivalling the cost of the actual hardware. The time for IPv6 is here, some hosted Raspberry Pi offerings currently only support IPv6 (with IPv4 port forwarding as a fall-back). IPv6 offers more efficient routing, simpler configuration and better security; it also eliminates the need for NAT, private IP addressing and its associated problems. An environment which makes IPv6 the default option can only be welcomed and ensures a future proofing of skills in the next generation.

6. Pi on the Edge

In many applications, for example, large sensor networks, centralising computing power has some disadvantages. The architecture is simpler, but data has to be transmitted, processed, and then retransmitted. This can result in the automated cat feeder missing a meal because the Internet connection or cloud based service is down [28], despite there being enough data and processing power locally to operate without Internet connectivity, some devices simply fail.
Large sensor networks are often network constrained, so optimising data transmissions is the next logical progression to augment Cloud computing solutions. This is often referred to as Fog or Edge computing, where the computing resources are pushed from the centre further out towards the edge [29]. For example, an image sensor for detecting or monitoring cars can process images at an edge device and only transmit the number plate details, thus greatly reducing bandwidth.
In an IoT world, this means that as computing resources move further out towards the edge, they become geographically distributed, harder to manage and at risk of damage or theft. Raspberry Pi devices and the clusters based on these devices [30,31,32,33] introduce a new class of computing: disposable computing. If an edge cluster built with Raspberry Pi devices is lost, stolen or falls into a volcano, the low-cost makes replacement palatable. This means that computational power can now be installed in locations where it was not previously feasible and enables Fog and Edge computing architectures.

7. Pi Containers

Building testbeds or deploying IoT hardware has an associated software management problem. One of the trending technologies that we see in large datacentres is containerisation, which wraps applications into isolated execution packages, for example Shifter [34], Docker [35] and Singularity [36]. Some container platforms work on the Raspberry Pi, and even applications that require access to hardware can be supported inside containers. We expect to see more deployments using containerisation as a mechanism to manage software applications and updates [9].

8. Pi in the Future

In 2011, Cisco estimated that the number of IoT devices would exceed 50 billion by the year 2020 [37]; Gartner currently predicts 20 billion devices [38]. The number of already connected devices is estimated to be only be around 8.3 billion in 2017. Creating the remaining 41.3 billion devices in 3 years would require a staggering 300 new devices to be created every second. We can recognise a huge potential for a range of Internet enabled devices; for the greater good of humanity. With the world population in excess of 7.5 billion people [39,40], 48% of which have internet connectivity and many with multiple devices [41], the first barrier for the IoT vision becoming a reality is the limited 4.3 billion IPv4 addresses; the time for IPv6 is here today and is well supported in most Operating Systems. Every gateway that bridges IPv4 networks consumes power and breaks end-to-end security.
In 2015, the 194 countries of the United Nations General Assembly adopted the 2030 Development Agenda which outlines 17 Sustainable Development Goals (Figure 2), each with a clear set of targets [42]. These are designed to promote global sustainability because, in the words of the United Nations Secretary-General, Ban Ki-Moon ‘... there is no Plan B because we do not have a Planet B ...’. These goals are carefully researched and widely supported; more importantly, the IoT revolution is a key enabler to achieving these goals.
The ‘Internet of Things Declaration to Achieve the Sustainable Development Goals’ [43] adopted in 2017 by the International Telecommunication Union (ITU) and other stakeholders, defines 10 activities which strive to promote international dialogue and cooperation for innovation in the Internet of Things:
  • Promoting the development and adoption of IoT technologies for the benefit of humanity, the environment and sustainable development.
  • Supporting the implementation of the IoT in urban and rural context to foster the application of ICTs in providing services to build smarter and more sustainable cities and communities .
  • Promoting a broad, vibrant and secure ecosystem for IoT, including support for start-ups and incubators.
  • Encouraging the development and implementation of standards that facilitate interoperability among IoT technologies and solutions in order to pave the way to an open and interoperable IoT ecosystem
  • Adopting new and innovative IoT applications to deal with challenges associated with hunger, water supply, and food security
  • Galvanizing interest in the use of IoT for risk reduction and climate change mitigation
  • Identifying and supporting the growing trend of using IoT technologies for education
  • Embracing the application and use of IoT for biodiversity conservation and ecological monitoring
  • Contributing to global research and discussions on IoT for smart and sustainable cities through global initiatives
  • Promoting international dialogue and cooperation on IoT for sustainable development
These ten activities map to the Sustainable Development Goals as shown in Figure 2 to provide strong evidence that IoT solutions will have an impact on all of the most important global issues facing our civilisations.
We conclude that the Raspberry Pi is an educator and enabler of ideas that will have an impact at a global level, spanning multiple disciplines and socio-economic classes.

Acknowledgments

We would like to thank the Engineering and Physical Sciences Research Council (EPSRC) and acknowledge the The Federated RaspberryPi Micro-Infrastructure Testbed (FRuIT) project, reference number EP/P004024/1 for ongoing Raspberry Pi based infrastructure research.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Solomon, L. Sinclair ZX81 personal computer. Pop. Electron. 1982, 20, 32–34. [Google Scholar]
  2. The MagPi, A magazine for Raspberry Pi users. 2012. Available online: https://www.raspberrypi.org/magpi-issues/MagPi01.pdf (accessed on 10 July 2017).
  3. Vestberg, H. CEO to Shareholders: 50 Billion Connections 2020. 2010. Available online: https://www.ericsson.com/en/press-releases/2010/4/ceo-to-shareholders-50-billion-connections-2020 (accessed on 27 June 2017).
  4. Kölling, M. Educational Programming on the Raspberry Pi. Electronics 2016, 5, 33. [Google Scholar] [CrossRef]
  5. Reck, R.M.; Sreenivas, R.S. Developing an Affordable and Portable Control Systems Laboratory Kit with a Raspberry Pi. Electronics 2016, 5. [Google Scholar] [CrossRef]
  6. Zhong, X.; Liang, Y. Raspberry Pi: An Effective Vehicle in Teaching the Internet of Things in Computer Science and Engineering. Electronics 2016, 5. [Google Scholar] [CrossRef]
  7. Hajji, W.; Tso, F.P. Understanding the Performance of Low Power Raspberry Pi Cloud for Big Data. Electronics 2016, 5. [Google Scholar] [CrossRef]
  8. Semwal, T.; Nair, S.B. AgPi: Agents on Raspberry Pi. Electronics 2016, 5. [Google Scholar] [CrossRef]
  9. Pahl, C.; Helmer, S.; Miori, L.; Sanin, J.; Lee, B. A Container-Based Edge Cloud PaaS Architecture Based on Raspberry Pi Clusters. In Proceedings of the IEEE 4th International Conference on Future Internet of Things and Cloud Workshops, Vienna, Austria, 22–24 August 2016. [Google Scholar]
  10. Cloutier, M.F.; Paradis, C.; Weaver, V.M. A Raspberry Pi Cluster Instrumented for Fine-Grained Power Measurement. Electronics 2016, 5. [Google Scholar] [CrossRef]
  11. Leccese, F.; Cagnetti, M.; Di Pasquale, S.; Giarnetti, S.; Caciotta, M. A New Power Quality Instrument Based on Raspberry-Pi. Electronics 2016, 5. [Google Scholar] [CrossRef]
  12. Noriega-Linares, J.E.; Navarro Ruiz, J.M. On the Application of the Raspberry Pi as an Advanced Acoustic Sensor Network for Noise Monitoring. Electronics 2016, 5. [Google Scholar] [CrossRef]
  13. Samourkasidis, A.; Athanasiadis, I.N. A Miniature Data Repository on a Raspberry Pi. Electronics 2017, 6. [Google Scholar] [CrossRef]
  14. Sørensen, C.W.; Hernández Marcano, N.J.; Cabrera Guerrero, J.A.; Wunderlich, S.; Lucani, D.E.; Fitzek, F.H.P. Easy as Pi: A Network Coding Raspberry Pi Testbed. Electronics 2016, 5. [Google Scholar] [CrossRef]
  15. Hernández Marcano, N.J.; Sørensen, C.W.; Cabrera, G.J.A.; Wunderlich, S.; Lucani, D.E.; Fitzek, F.H.P. On Goodput and Energy Measurements of Network Coding Schemes in the Raspberry Pi. Electronics 2016, 5. [Google Scholar] [CrossRef]
  16. Basford, P.J.; Bragg, G.M.; Hare, J.S.; Jewell, M.O.; Martinez, K.; Newman, D.R.; Pau, R.; Smith, A.; Ward, T. Erica the Rhino: A Case Study in Using Raspberry Pi Single Board Computers for Interactive Art. Electronics 2016, 5, 35. [Google Scholar] [CrossRef]
  17. Schlobohm, J.; Pösch, A.; Reithmeier, E. A Raspberry Pi Based Portable Endoscopic 3D Measurement System. Electronics 2016, 5, 43. [Google Scholar] [CrossRef]
  18. Coates, J.; Chipperfield, A.; Clough, G. Wearable Multimodal Skin Sensing for the Diabetic Foot. Electronics 2016, 5. [Google Scholar] [CrossRef]
  19. Virant, M.; Ambrož, M. Universal Safety Distance Alert Device for Road Vehicles. Electronics 2016, 5, 19. [Google Scholar] [CrossRef]
  20. Calvo, I.; Gil-García, J.M.; Recio, I.; López, A.; Quesada, J. Building IoT Applications with Raspberry Pi and Low Power IQRF Communication Modules. Electronics 2016, 5, 54. [Google Scholar] [CrossRef]
  21. Jennehag, U.; Forsstrom, S.; Fiordigigli, F.V. Low Delay Video Streaming on the Internet of Things Using Raspberry Pi. Electronics 2016, 5, 60. [Google Scholar] [CrossRef]
  22. Pasquali, V.; Gualtieri, R.; D’Alessandro, G.; Granberg, M.; Hazlerigg, D.; Cagnetti, M.; Leccese, F. Monitoring and Analyzing of Circadian and Ultradian Locomotor Activity Based on Raspberry-Pi. Electronics 2016, 5. [Google Scholar] [CrossRef]
  23. Bueti, C. Overview of ITU-T Study Group 20—ToT and its applications including Smart Cities and Communities (SC&C). ITU-T 2013. [Google Scholar]
  24. Baraniuk, C. Raspberry Pi Passes 10m Sales Mark. 2016. Available online: http://www.bbc.co.uk/news/technology-37305200 (accessed on 27 June 2017).
  25. PC Extreme. Raspberry Pi Colocation. 2017.
  26. Stevens, P. Mythic Beasts Ltd - Raspberry Pi Cloud. 2017. Available online: https://www.mythic-beasts.com/ (accessed on 27 June 2017).
  27. Rajovic, N.; Rico, A.; Puzovic, N.; Adeniyi-Jones, C.; Ramirez, A. Tibidabo11Tibidabo is a mountain overlooking Barcelona.: Making the case for an ARM-based HPC system. Futur. Gener. Comput. Syst. 2014, 36, 322–334, Special Section: Intelligent Big Data Processing Special Section: Behavior Data Security Issues in Network Information Propagation Special Section: Energy-efficiency in Large Distributed Computing Architectures Special Section: eScience Infrastructure and Applications. [Google Scholar] [CrossRef]
  28. Woolf, N. No Treat for You: Pets Miss Meals After Auto-Feeding App PetNet Glitches. 2016. Available online: https://www.theguardian.com/technology/2016/jul/27/petnet-auto-feeder-glitch-google (accessed on 27 June 2017).
  29. Helmer, S.; Pahl, C.; Sanin, J.; Miori, L.; Brocanelli, S.; Cardano, F.; Gadler, D.; Morandini, D.; Piccoli, A.; Salam, S.; et al. Bringing the Cloud to Rural and Remote Areas via Cloudlets. In Proceedings of the 7th Annual Symposium on Computing for Development, Nairobi, Kenya, 18–20 November 2016; p. 14. [Google Scholar]
  30. Cox, S.J.; Cox, J.T.; Boardman, R.P.; Johnston, S.J.; Scott, M.; O ’Brien, N.S. Iridis-pi: A low-cost, compact demonstration cluster. Clust. Comput. 2013. [Google Scholar] [CrossRef]
  31. Adams, J.C.; Caswell, J.; Matthews, S.J.; Peck, C.; Shoop, E.; Toth, D.; Wolfer, J. The Micro-Cluster Showcase: 7 Inexpensive Beowulf Clusters for Teaching PDC. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education, Memphis, TN, USA, 2–5 March 2016; pp. 82–83. [Google Scholar]
  32. Introducing Wee Archie. 2017. Available online: https://www.epcc.ed.ac.uk/blog/2015/11/26/wee-archie (accessed on 25 April 2017).
  33. Pfalzgraf, A.M.; Driscoll, J.A. A low-cost computer cluster for high-performance computing education. In Proceedings of the 2014 IEEE International Conference on Electro/Information Technology (EIT), Milwaukee, WI, USA, 5–7 June 2014; pp. 362–366. [Google Scholar]
  34. Kurtzer, G.M.; Sochat, V.; Bauer, M.W. Singularity: Scientific containers for mobility of compute. PLoS ONE 2017, 12, 1–20. [Google Scholar] [CrossRef] [PubMed]
  35. Docker Inc. 2017. Available online: https://docker.com (accessed on 27 April 2017).
  36. Singularity 2.1.2—Linux application and environment containers for science. Available online: https://zenodo.org/record/60736#.WXAYr1GW3iB (accessed on 10 July 2017).
  37. Evans, D. The internet of things: How the next evolution of the internet is changing everything. CISCO White Pap. 2011, 1, 1–11. [Google Scholar]
  38. Middleton, P.; Kjeldsen, P.; Tully, J. Forecast: The Internet of Things, Worldwide; Gartner: Stanford, CT, USA, 2013; pp. 1–15. [Google Scholar]
  39. UN. The World at Six Billion. 1999. Available online: http://www.bbc.co.uk/news/technology-37305200 (accessed on 27 June 2017).
  40. UN. World Population Prospects, Key Findings & Advance Tables; UN: New York, NY, USA, 2017. [Google Scholar]
  41. Quarter, T. State of the Internet; Security Report. Akamai Technologies. Available online: https://www.akamai.com/us/en/about/news/press/2016-press/akamai-releases-third-quarter-2016-state-of-the-internet-security-report.jsp (accessed on 10 July 2017).
  42. UN. Transforming Our World: The 2030 Agenda for Sustainable Development; Department of Economic and Social Affairs, UN: New York, NY, USA, 2015. [Google Scholar]
  43. Internet of Things Declaration to Achieve the Sustainable Development Goals. In Proceedings of the IoT Forum, Geneva, Switzerland, 6–9 June 2017.
Figure 1. Centralised (Mainframe) processing was state of the art, which evolved to be smaller (Minicomputer and Microcomputer) and more personal (Personal Computer) over the decades. As the usage patterns changed, the cost dropped, and computing became more mainstream and accessible, even extending into mobile platforms (Smart phones). The Single Board Computer, spurred by the popularity of Internet of Things devices is the current trend, selling tens of millions of units. We predict this will be the basis for the next generation of commodity device whose cost and accessibility will result in billions of devices.
Figure 1. Centralised (Mainframe) processing was state of the art, which evolved to be smaller (Minicomputer and Microcomputer) and more personal (Personal Computer) over the decades. As the usage patterns changed, the cost dropped, and computing became more mainstream and accessible, even extending into mobile platforms (Smart phones). The Single Board Computer, spurred by the popularity of Internet of Things devices is the current trend, selling tens of millions of units. We predict this will be the basis for the next generation of commodity device whose cost and accessibility will result in billions of devices.
Electronics 06 00051 g001
Figure 2. The United Nations General Assembly 2030 development agenda Sustainable Development Goals mapped to the ITU Internet of Things declaration activity numbers [42].
Figure 2. The United Nations General Assembly 2030 development agenda Sustainable Development Goals mapped to the ITU Internet of Things declaration activity numbers [42].
Electronics 06 00051 g002

Share and Cite

MDPI and ACS Style

Johnston, S.J.; Cox, S.J. The Raspberry Pi: A Technology Disrupter, and the Enabler of Dreams. Electronics 2017, 6, 51. https://doi.org/10.3390/electronics6030051

AMA Style

Johnston SJ, Cox SJ. The Raspberry Pi: A Technology Disrupter, and the Enabler of Dreams. Electronics. 2017; 6(3):51. https://doi.org/10.3390/electronics6030051

Chicago/Turabian Style

Johnston, Steven J, and Simon J Cox. 2017. "The Raspberry Pi: A Technology Disrupter, and the Enabler of Dreams" Electronics 6, no. 3: 51. https://doi.org/10.3390/electronics6030051

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop