# Check whether we are on hardware or simulator?

**URL:** <https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597>\
**Category:** Help\
**Created:** [January 17, 2021, 3:46am UTC](https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597 "2021-01-17T03:46:14Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [January 17, 2021, 3:46am UTC](https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597/1 "2021-01-17T03:46:14Z")

</div>

Is there an easy way to determine whether we are on hardware or on the simulator other then checking the RAM size?

---

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [June 3, 2021, 4:13pm UTC](https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597/2 "2021-06-03T16:13:14Z")

</div>

Finally remembered to answer this thread 😅

[Here (paraphrased)](https://forum.makecode.com/t/multiplayer-with-hardware-and-blocks/1171/8)

> [@Multiplayer with hardware and blocks?](https://forum.makecode.com/t/multiplayer-with-hardware-and-blocks/1171/8):
>
> …`control.deviceDalVersion()` should return string `sim`. It will be `linux` on the Raspberry Pi and a semantic version otherwise…

---

<div class="post-metadata">

**Author:** ![mmoskal](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/mmoskal/32/20_2.png) [@mmoskal](https://forum.makecode.com/u/mmoskal)\
**Post date:** [June 3, 2021, 4:42pm UTC](https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597/3 "2021-06-03T16:42:40Z")

</div>

You may also see `"vm"` in future.

---

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [June 8, 2021, 3:30pm UTC](https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597/5 "2021-06-08T15:30:23Z")

</div>

Well, the hardware Arcade is designed for runs games at \<40 FPS while the sim in a reasonability powerful computer can reach \>100 FPS easily unless you are doing something real stupid. (Like shading the entire screen or having gazillions of sprites)

---

<div class="post-metadata">

**Author:** ![Vegz78](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/vegz78/32/1201_2.png) [@Vegz78](https://forum.makecode.com/u/Vegz78)\
**Post date:** [July 13, 2021, 4:28pm UTC](https://forum.makecode.com/t/check-whether-we-are-on-hardware-or-simulator/5597/6 "2021-07-13T16:28:58Z")

</div>

Does this mean that I finally soon can stop holding my breath with regards to the [“native SDL-based interpreter for MakeCode VM bytecode. That worked on Windows, macOS and Linux”](https://forum.makecode.com/t/how-to-launch-makecode-arcade-uf2s-in-raspbian-retropie/2725/2) which you mentioned earlier?
