๐Ÿ‘“ neon


Year

user-9a1aed 01 December, 2025, 05:23:36

For all the other recordings, they all worked fine, so I thought it might be other issues? All other recordings have a detection rate of aorund 94%

user-cdcab0 01 December, 2025, 06:30:30

I'd say you're a bit lucky then

user-f4f9e1 01 December, 2025, 08:48:34

Hi all! I hope you are well I am writing to you regarding an issue we are facing

My team is using the Neon Glasses with PsychoPy on Windows 11

We are using the following versions PsychoPy 2025.1.1 Plugin 0.8.1 Python 13.3.2

*But the experiment does not work for us, it works with MouseGaze but not with Neon Glasses. We also tried removing PsychoPy, Pupil Lab files, etc from the laptop, didn't fix the issue. We also tried resetting the laptop, still didn't fix the issue. We have tried the gaze contingent demo provided by the Pupil Labs team and also some of our own experiments, but none of them work.

It was working in the past with PsychoPy 2024.2.4 and Plugin version 0.7.7, but then stopped working and now when we install the older version of PsychoPy we don't even see the eye tracking components like April Tags and Record on PsychoPy.

Also, when selecting the eye tracker in the "Experiment settings" we get multiple options like "Pupil Labs", "Pupil Labs (Neon)", "Pupil Labs (iohub)", etc. Sometimes double for each, like two options with the same title.

I wonder which versions work together the best. And has anyone encountered this issue before?

user-f43a29 01 December, 2025, 08:50:15

Hi @user-f4f9e1 , thanks. Since we already started communication in your Support Ticket in ๐Ÿ›Ÿ troubleshooting , is it alright if we continue there for now?

user-f4f9e1 01 December, 2025, 08:50:57

Yes, it is alright.

user-13d297 01 December, 2025, 18:44:30

Hi! I created the events posthoc in Pupil Cloud. The events are visible in the timeline of the Cloud. I have not checked in Neon Player.

user-d407c1 02 December, 2025, 08:36:18

Hi @user-13d297 ๐Ÿ‘‹ ! Thanks for following up, in that case events should be contained within the data. Are you looking for the exact timestamp?

There might not be an exact match between the gaze ts and the event ts if you manually created in Cloud, but should be quite close.

If you see a large discrepancy could you open a ticket at ๐Ÿ›Ÿ troubleshooting and share a minimal example exhibiting that behaviour so we can have a look?

user-20283e 02 December, 2025, 03:13:24

Hi everyone, Iโ€™m trying to use Pupil Labs Neon with LSL streaming in a university environment, and Iโ€™m running into network issues. The Neon app shows โ€œStream over LSLโ€ as active, but my Windows PC cannot detect any LSL streams (LabRecorder). Both devices are connected to the university WiFi, and they get IPs in the same range , but the PC never sees the Neon streams. Our IT says the firewall isnโ€™t blocking anything, but I suspect the WiFi network is blocking local peer-to-peer traffic, multicast, or UDP port 16570, which LSL requires.

Has anyone dealt with LSL not working on enterprise/university WiFi networks? Any advice or experience would be super helpful โ€” Iโ€™m trying to run experiments and need to solve this. Thanks!

user-4c21e5 02 December, 2025, 03:24:58

Hi @user-20283e. University WiFi networks often don't work. You're best bet is to use a dedicated local router. See this message for reference: https://discord.com/channels/285728493612957698/1047111711230009405/1431416744962031627 ๐Ÿ™‚

user-8fe6ae 02 December, 2025, 17:25:59

Hi I am trying to use a wired connection. I have both the phone and the headset connected via usb adapter which seems to be connected ok. I have this adapter then connected via network cable to PC (both set to be on the same network) but when i run the discovery functions the pc cant find the eye tracker. Does anyone know how to troubleshoot this? thanks

user-f43a29 02 December, 2025, 18:41:00

Hi @user-8fe6ae , just building on my colleague's post, you can find detailed steps for Windows 11 here. Please note that Windows 10 does not have the necessary features to support a direct connection, but it will work with a router.

Also, please note that Windows does not always maintain a stable connection when you plug the Ethernet cable directly from Neon into the PC. It sometimes randomly re-assigns the IP address to the phone, breaking the connection. Forcing Windows to give a static IP to the phone should resolve that.

Overall, it is easier and recommended to use a wired connection to a local router:

  • Connect the PC via Ethernet to the router
  • And connect the Neon via Ethernet to the same router

This will work for all versions of Windows.

You should not lose any appreciable transmission latency and auto-discovery will work. Windows users have reported success with this router out-of-the-box, for wired connections.

user-d407c1 02 December, 2025, 18:30:35

Hi @user-8fe6ae! Have you already share your connection from the PC to the phone? If on Windows (Internet Connection Sharing): - Open Control Panel > Network and Internet > Network Connections. - Locate your active internet source (e.g., "Wi-Fi"). - Right-click it and select Properties. - Go to the Sharing tab. - Check the box: "Allow other network users to connect through this computer's Internet connection". - In the dropdown menu below that, select the Ethernet adapter that your phone is plugged into. - Click OK. Your PC will now act as a router for your phone.

Note that exact instructions could vary across versions of Windows.

On Your Phone: - Turn off Wi-Fi and Mobile Data to verify the connection works. - You should see an Ethernet icon ( looks like <...>) in the status bar. The phone will treat this connection just like high-speed Wi-Fi. - Enter the Companion App and navigate to the network tab top-right, and check whether there is an IP shown there.

You can use that IP to connect directly https://pupil-labs.github.io/pl-realtime-api/dev/methods/simple/connect-to-a-device/#connect-directly-via-ip-address

user-20283e 03 December, 2025, 04:13:34

Thanks! I made a local network, but I'm still using the computer from the University. I have the phone connected to the same local network as in the PC, and I don't see the Neon streams in Lab Recorder at all. Do you think the university computer is blocking something with firewall or something like this? what would you reccomend doing?

user-f43a29 03 December, 2025, 06:13:31

Hi @user-20283e , briefly stepping in for my colleague, @user-4c21e5 Just to confirm, do you have Stream to LSL enabled in the Neon Companion app settings?

user-bd5142 03 December, 2025, 09:05:32

Hi I want to know what is the recommended observation range for Neon and Core eye trackers, and is there a range? Thanks

user-f43a29 03 December, 2025, 09:08:17

Hi @user-bd5142 , may I ask for more clarification about "observation range"?

user-bd5142 03 December, 2025, 09:14:07

I want to know the effective tracking distance of Pupil Core head mounted eye tracker. Assuming the subject maintains a fixed position without moving, within what range of target objects (in meters) can the best quality eye movement data be obtained? I also hope to understand whether it is affected by the resolution of the scene camera, lighting conditions, or target size, as well as the changes in tracking accuracy at different distances.

user-f43a29 03 December, 2025, 09:28:13

The tracking quality for our eyetrackers is only "loosely related" to scene camera resolution. For Pupil Core, the calibration targets are usually large with clear centers. Neon's algorithms have been optimized for the chosen scene camera resolution. For both, we have chosen cameras with wide FoVs and high spatial resolution.

To clarify, Neon's FoV covers the human visual field and its images are 1600 px wide by 1200 px tall. This pixel density provides high resolution to the underlying eyetracking models, supporting its out-of-the-box ~1.5-1.8 degrees of gaze accuracy. You can see live examples here. Similarly, the eye cameras each have a 192x192 pixel resolution, giving clear images of the eyes. You can also see examples of Neon's eye images at that page.

That said, Pupil Core can show some reduction in performance when used outside in sunlight. Neon is again much improved and robust against sunlight. It functions equally in pitch black and bright sunlight on the beach. Since Neon is calibration free, you similarly do not need to think about calibration target size, since it is not necessary.

user-f43a29 03 December, 2025, 09:25:34

Hi @user-bd5142 , the viewing distance is in principle unrelated to eye tracking quality. For Pupil Core, it will ultimately depend on the quality of calibration that is done for each participant. It is usually better to calibrate at the distance that they will be viewing, although it can extrapolate outside of that region reasonably well.

For Neon, you do not need to think about this, since it is deep-learning powered and calibration free. Please see this message for an explanation: https://discord.com/channels/285728493612957698/1047111711230009405/1371897435781337200

user-bd5142 03 December, 2025, 09:28:44

Thank you

user-d5a41b 03 December, 2025, 11:15:16

Hi! The chargers for our Motorola Companion Phones got lost in our lab- have you tested any chargers that I could buy to use with the phones+ devices? I'm located in Germany.

user-d407c1 03 December, 2025, 11:22:50

Hi @user-d5a41b ! The Motorola Edge 40 Pro is compatible with any USB-C chargers, but depending on their characteristics it may charge slower.

You can find here the official recommendations from Motorola.

And here you can directly purchase it form Motorola if you prefer https://de.motorolachargers.com/product/turbopower-27w-wall-charger-usb-c/ (if available)

user-20283e 03 December, 2025, 12:13:40

Yes. I tried this in another network at home and itโ€™s working but not in the lab computer, which is controlled by the university IT. They seam to be blocking something that doesnโ€™t allow me to see the streamsโ€ฆ any idea what that can be?

user-f43a29 03 December, 2025, 12:37:58

Hi @user-20283e , university and institutional WiFi is not usually recommended, because of restrictions and also because so many other users on the same network can interfere with Neon's signal. We typically recommend using a local, dedicated WiFi router, like you have at home.

If you are intent on using your University WiFi, then your IT department will need to reference these instructions.

user-d5a41b 03 December, 2025, 12:14:02

Thanks- I did try with multiple chargers USB-C that worked for other phones, but both Motorolas didn't charge at all over a few hours- they kept switching on and off. Is this a known issue? This is the first time charging them

user-d407c1 03 December, 2025, 12:29:29

That does sound strange, I was able able to charge the Moto Edge 40 Pro with a charger like this and the cable from my Mac without any issues for many months. That said, thanks for checking multiple chargers. A few things worth confirming so we can narrow this down:

  • Are the chargers and cables you tried definitely USB-C PD capable? Some USB-C units only provide basic 5 V output, which can cause the phone to power-cycle rather than charge.
  • If you have access to a different PD charger or cable, it would be helpful to try those as well.
  • Do you know if the phones were completely discharged for a long time?

If a device has been powered off and fully drained for several months, the battery voltage can fall well below the safe threshold the battery management system expects. When that happens, the phone wonโ€™t boot until the battery recovers enough voltage.
Some chargers donโ€™t supply the steady low-level current needed to โ€œwakeโ€ a deeply discharged battery, so the device can keep power-cycling or recovery phase can take a while before anything appears on screen.

user-20283e 03 December, 2025, 12:40:31

I'm not using the university WiFi, but created a local one (isolated from internet too). The institutional computer is still not seing the Neon streams even when only connected to that local wifi network. What could be still blocking the lsl streams on the PC?

user-f43a29 03 December, 2025, 12:40:58

By a local one, do you mean a hotspot? What device produces the hotspot?

user-20283e 03 December, 2025, 12:42:39

it's a Netgear wifi router that I bought and created a wifi network with it. When I try neon.local:8080 in the computer I do see the video coming in... yet no streams in lab recorder.

user-f43a29 03 December, 2025, 12:44:17

Then, it could be a firewall restriction enforced by your IT department. I would recommend first checking the Connection Troubleshooting section of our LSL docs, as well as the official ones from the LSL team. If that does not resolve it, just let us know.

user-d5a41b 03 December, 2025, 12:56:46

One of the chargers I tried was this one: https://www.ikea.com/de/de/p/sjoess-ladegeraet-mit-1-usb-ausgang-65-w-00609743/ and the cable that came with our Neon set. The phone kept vibrating and the power signal would show up every few seconds on the screen for hours. We ordered the devices about a year ago and haven't used them, so yes I assume they were completely discharged for a while.

user-d407c1 03 December, 2025, 13:25:20

I'd recommend leaving them charging for several hours and if they do not resuscitate, you can contact us at info@pupil-labs.com

user-3c26e4 03 December, 2025, 13:56:55

Hi @user-d407c1 , could you please explain the difference between Wearer Reach and the new Recording reach? I see the explanation line, but cannot understand the algorithm. It works with neon, but not with invisible, right?

user-d407c1 03 December, 2025, 14:06:52

Hi @user-3c26e4 ! This applies regardless of whether the data comes from Neon or Invisible, itโ€™s simply a new metric calculated on the AOIs.

You can have multiple recordings from the same wearer, so both metrics are valid depending on what you want to measure:

If you are interested on how many wearers looked at that area of interest, that would be Wearer reach. If you are interested on how many recordings they looked at that AOI, independently if the same person was recorded multiple times or not, that would be Recording Reach.

What's the added value? E.g. You can see 100% of your participants looked at that area of interest, but looking at the recordings reach, it may drop if they did not look at that AOI on every recording.

user-3c26e4 04 December, 2025, 09:07:26

Thanks a lot!

user-0b1519 04 December, 2025, 10:28:25

Hello

user-0b1519 04 December, 2025, 10:29:16

We are currently evaluating your eye tracking solutions for a potential purchase. Before proceeding, we would like to clarify a few important points:

1-) Does the device require any specific software license to operate? If yes, is the license included in the purchase price or sold separately?

2-) Are software updates included, or do they require an additional subscription or maintenance fee?

3-) Do you provide any form of training or onboarding for first time users? If yes, is this service included or billed separately?

4-) Is there any ongoing support or service fee after the purchase?

5-) Are there any regional restrictions or differences for usage in Germany or the EU?

user-d407c1 04 December, 2025, 11:06:42

Hi @user-0b1519 ๐Ÿ‘‹! Thanks for reaching out and for outlining your questions, happy to clarify them.

1) Software Licenses Fees: If you plan to work offline using Neon Player or pl-neon-recording both are free and open-source - there is no fee to use these. Everything needed to record and access your data is included with the hardware, including the Companion app and streaming libraries if needed. Have a look at our ecosystem here.

We do offer additional paid plans for Pupil Cloud, but these are optional.

We can certainly explore what you need over a video call if you prefer.

2) Software updates: Updates for the Companion App, Neon Player and other libraries are included at no extra cost.

3) Training / onboarding: A 30-minute onboarding call is included with every purchase. If you need more in-depth or ongoing training, we can arrange that separately.

4) Ongoing support: General support via email and Discord is included. More advanced / dedicated support packages are also available through consultancy services if needed.

5) Regional restrictions: There are no usage restrictions specific to Germany or the EU. Everything functions the same across regions.

If you'd like a demo and Q&A session, you can book one directly through our website: https://pupil-labs.com/

user-0b1519 04 December, 2025, 12:42:09

Thank you ๐Ÿ™

user-9a1aed 05 December, 2025, 02:42:43

Hi Rob, I realized that the number of fixations in the recording is empty. May I know why that is? Thanks!

Chat image

user-f43a29 05 December, 2025, 09:10:01

Hi @user-9a1aed , there could be a few reasons. Could you share that recording with us [email removed] for inspection?

user-6c24c0 05 December, 2025, 04:03:25

Hi, I need some clarification if the data can still be stored on the companion app without using the cloud.

user-6c24c0 05 December, 2025, 04:04:38

Chat image

user-6c24c0 05 December, 2025, 04:05:00

Chat image

user-6c24c0 05 December, 2025, 04:05:44

Also, we recently got error messages sometimes during recordings. It happened after about 30 min of recordings (not always). What can we do to prevent this? Is this a problem if heat if the phone?

user-6c24c0 05 December, 2025, 04:13:17

Is 2.9.23-prod the newest update of the companion app?

user-480f4c 05 December, 2025, 07:51:44

@user-6c24c0 thanks for reaching out here as well. Yes, the 2.9.23-prod is the latest version of the App. We saw you opened a ticket and sent an email regarding the issues you're encountering. I'd recommend keeping the communication in the Discord Ticket for now so we don't lose track of information across channels.

user-b5a8d2 07 December, 2025, 02:18:37

Hi, I have a quick question. I used Neon by Pupil about years ago, and I recently noticed that my cloud plan has expired. I have a couple of questions:

  1. If I purchase the Unlimited Analysis Plan, will I be able to access my originally recorded data?

  2. My department will place the order on my behalf to receive an academic discount. In this case, should the contact information on the quote be mine, or do I just need the activation key to register the cloud plan after they purchased an order for me?

Thank you for your help!

Chat image Chat image Chat image Chat image

user-4c21e5 08 December, 2025, 03:54:58

Hi @user-b5a8d2 ๐Ÿ‘‹. Responses below: 1. Yes, that's correct. All of your existing recordings will be available to work with after you've activated an Unlimited Analysis Plan. Note that even now, you can still download your recordings and work with them offline. See this message for reference: https://discord.com/channels/285728493612957698/1047111711230009405/1431119082001793095 2. You just need the activation key to register the Cloud plan. Once purchased, they will receive a confirmation email with the key. You can find more instructions in this section of the docs.

user-0b1519 08 December, 2025, 11:55:50

Hello, We are interested in the Neon All Clear Eye Tracking System. We need some information regarding the device and its features.

Questions:

Does the device have a CE certificate?

Can results, data, and documents be exported in CSV or EDF format? โ€ƒa) If not, in which formats can they be exported?

Can AOI, Dwell Time, Revisits, Heatmap, Fixation, and Saccade data be exported? โ€ƒa) In which format can these data be exported? โ€ƒb) Are there any additional features available in the software besides these data?

Is there any time limitation for unlimited data export starting from the date of product purchase? โ€ƒa) If there is a time limit (for example, 3 years), will we still be able to manually export the data afterward? โ€ƒb) Will any fees be charged after this period?

Is there any fee for collecting data via the cloud or for operating multiple devices under the same cloud account? โ€ƒa) If yes, how much is it? โ€ƒb) Is there any duration or usage limitation?

What are the warranty conditions?

Do you provide training and technical support services? โ€ƒa) What is the duration? โ€ƒb) Is it paid?

user-480f4c 08 December, 2025, 12:49:45

Hi @user-0b1519 - I saw you also reached out via email - I reply here as well, but you'll find more details in the email.

  • Yes, Neon has a CE Certificate. I shared it via email.

  • All data collected with Neon can be exported as CSV files (see here).

  • All AOI-based metrics can be exported when using our analysis platform, Pupil Cloud in CSV files. Pupil Cloud offers powerful gaze mapping tools that allow you to map gaze data from the eye tracking recordings onto screens or areas of interest in the real world environment. You can then extract detailed fixation metrics (e.g., dwell time, number of fixations), and create scanpaths. You can read more about the analysis and visualization tools here.

  • Neon always allows manual raw data export via USB. If you plan to use Pupil Cloud, note that with every Neon purchase, you get access to all the features of Pupil Cloud and up to 2 hours of recording storage, such that you can try it out. To unlock unlimited features on Pupil Cloud, we recommend theย Unlimited Analysis Plan (see here). As said before, Cloud-based analysis is optional. The raw data are always accessible locally by transferring recordings from the phone to your computer and run your own analysis pipeline with no dependency on Pupil Cloud.

  • Neon comes with a 1-year hardware warranty covering manufacturing defects.

  • In terms of support, every Neon bundle includes a 30-minute onboarding workshop to help you set up and guide you through our software, but you can always reach us via email or on our Discord server. For more tailored support (e.g., training seminars, custom analysis pipelines), we offer consultancy packages.

user-0b1519 08 December, 2025, 14:07:17

Thank you๐Ÿ™

user-d3b3da 08 December, 2025, 19:49:04

Is there a way to manually edit an event timestamp in Pupil Cloud? I want to add an event that is precisely 5 seconds after another event.

user-d3b3da 08 December, 2025, 22:58:43

Update: I was able to do this by manually setting the playhead and then using "Move event to playhead"

user-3ee243 09 December, 2025, 02:27:14

Hi, question about exporting Neon data without using Pupil Cloud: we recorded a short session using the Companion App + Neon, and weโ€™re trying to extract the gaze metrics and timeseries data (CSV) locally. Our current approach was to connect the phone via USB, copy the recorded folder from the Neon Export directory to our PC, and then drag it into the latest Neon Player. However, Neon Player briefly loads the folder and then immediately closes. Is there a recommended workflow for obtaining gaze/timeseries CSV data locally without relying on Pupil Cloud downloads? Thank you!

user-cdcab0 09 December, 2025, 03:02:28

Neon Player will do what you need, and it's meant to work just how you're doing it, but it sounds like there is a problem. Are you able to collect and share the Neon Player log file and/or the recording you're attempting to load?

user-3ee243 09 December, 2025, 03:24:17

Hi dom! Thanks for the message! FYI here is the screenshot of the folder I am trying to upload to Neon player (the entire 2025-12-04โ€ฆfolder) but it just closes itself after loading for a brief second. If Iโ€™m missing something obvious please let me know! Thx for the help!

Chat image

user-cdcab0 09 December, 2025, 03:28:28

Unfortunately, I won't be able to troubleshoot from just this. There should be a log file in the neon_player within your home directory. That will be much more useful.

Otherwise, if you can create a zip file of your recording and upload to a sharing site (like Google Drive), that'd be great. You can share the link here or send it to info@pupil-labs.com

user-3ee243 09 December, 2025, 04:59:47

Got it to work all fine now! Might have been an issue with software version I believe - since we had 2 versions installed! Thanks again for the help!

user-501924 09 December, 2025, 08:50:34

Hi Neil, we're using marker mappers on pupil cloud. After that we've been trying to use the Automated AOI Masking tool described here https://docs.pupil-labs.com/alpha-lab/gaze-metrics-in-aois/. The eye tracker is the Neon.

Chat image

user-f43a29 09 December, 2025, 08:57:54

Hi @user-1baa3e , thanks for the clarification. I moved your question to the ๐Ÿ‘“ neon channel.

Do I understand correctly that those 18 boxes are the only AOIs presented during the experiment?

user-1baa3e 09 December, 2025, 20:17:20

Yup, we were planning on only looking at the boxes. If we need we may decide to divide it into quadrants.

user-4c21e5 10 December, 2025, 07:31:25

Thanks for clarifying. In that case, it shouldn't be necessary to define AOIs for every recording. These only need to be defined once for a given Marker Mapper enrichment. So in effect, you can process arbitrary number of participant recordings in a project using just one reference image / set of defined AOIs.

user-b5a8d2 10 December, 2025, 17:40:56

Hi, Following your guidance, I purchased a new Unlimited Data Analysis Plan. I activated the key, but I still cannot access my previously recorded data. It shows the message: โ€œStorage is full. Manage recordings or upgrade your storage with a Cloud Plan.โ€

Iโ€™ve never seen this message before when I worked with the same data earlier. Could you help me with this? (how to get access to my originally recorded data?)

Thank you

Chat image Chat image Chat image

user-f43a29 10 December, 2025, 17:46:16

Hi @user-b5a8d2 , you then need to click the blue Link device button and link your device to said Unlimited Plan. You can find more details and instructions here.

user-7c5b51 10 December, 2025, 20:29:42

Hi, what mDNS parameters are needed for this service (airprint) to function? My institution is trying to connect the neon android phone to the university network.

user-f43a29 10 December, 2025, 20:36:36

Hi @user-7c5b51 , first, please note that we don't recommend University or work networks for connecting to Neon. Even when IT makes Neon accessible that way, the large volume of traffic from other people on the network can interfere with Neon's signal. We typically recommend a local, dedicated WiFi router.

If you want to try it anyway, then you need these ports open to access Neon:

  • UDP 5353 (for mDNS)
  • TCP 8080 (for HTTP)
  • TCP 8086 (for RTSP)
  • TCP 8686 (for WebSockets)

Also, note that if your PC and Neon are on different sub-networks (e.g., this is usually the case when the PC is connected via Ethernet to the Uni network and Neon is connected via WiFi), then you might not be able to connect to Neon, even with those ports open. Your IT team might be able to find a solution for that, though.

user-7c5b51 10 December, 2025, 20:30:13

This is an example of an airprint service which uses mDNS similarly to the neon software (according to IT).

user-7c5b51 10 December, 2025, 20:30:51

Chat image

user-7c5b51 10 December, 2025, 20:31:25

This is another reference (chromecast).

user-7c5b51 10 December, 2025, 20:32:24

Chat image

user-7c5b51 11 December, 2025, 13:06:01

Are there any reference to other mdns services their software works off of? For example does it match up to chromecast, airplay, miracast, ect?

user-f43a29 11 December, 2025, 13:24:18

Hi @user-7c5b51 , do you mean you want to stream the Neon scene camera with gaze overlay to a monitor or TV via a service like Chromecast?

user-d407c1 11 December, 2025, 14:06:43

Hi @user-7c5b51 ! Adding to my colleague's response, the Python Realtime API utilizes zeroconf, which is built on top of Bonjour and Avahi. You can find more info here.

user-fcdbb6 12 December, 2025, 09:35:30

@user-4c21e5 , @user-f43a29 and others from the amazing pupil labs team, we (at the Intelligent Biomedical Sensing Lab here in Berlin) are working with the PupilLabs Neon (we love it!), and are also customizing the frame for various experiments. Since the default frame and also the "is this on?" frame are not always suitable for our setups where we need to combine with various head gear, we build solutions like the one attached.

The ideal solution would be one where we can also modify the frame itself (e.g. by removing the lower part). The problem is that the files that are openly available for the frame do not include a heat sink, and we also did not find a file for the heatsink geometry itself. We tried to 3D scan it, but its too finicky for a proper scan.

The question: Would you be willing to share a CAD/STL file of the frames with heatsink OR the heatsink file, so we can build custom frames that work with our Neon's heat sink? We are happy to openly share the results back with you and the community! My PhD Student Bilal ( @user-39ee45 ) is a real pro when it comes to 3D design and printing, so the quality will be decent ๐Ÿ˜‰

Chat image

user-d407c1 12 December, 2025, 09:44:06

Hi @user-fcdbb6 ๐Ÿ‘‹ ! Really cool frame there! Have you already seen the Ready Set Go! frame? Seems similar to what you are trying to achieve.

That said, yes we can share those! We will update the repository next week to include new files ๐Ÿ˜‰

user-39ee45 22 December, 2025, 16:03:55

Hi @user-d407c1 I just wanted to ask which repository has the updated files? Thanks in advance !

user-fcdbb6 12 December, 2025, 10:52:24

thank you @user-d407c1 ! thats great news! We saw it, its a great solution. For what we need to integrate with (whole head neuroimaging sensors) we will need to further customize, so really a huge thank you for sharing next week!

user-39ee45 12 December, 2025, 11:12:21

Thank you so much @user-d407c1 ! Really appreciate you taking the time to share those files. Excited to check them out!

user-0cdc2d 12 December, 2025, 15:08:48

Hi everyone, I am comparing the fixations I got from pupil Cloud and pupil Player. It seems, that pupil Player may concatenate fixations if i understand the docs correctly https://docs.pupil-labs.com/core/terminology/#offline-fixation-detection (and also according to my data). Is there a paper that explains the algorithm for pupil Player in more detail? I found the whitepaper for the one Pupil Labs fixation detector (Algorithm description - 3.6.24), which I assume to be the one for Pupil Cloud?

Is there a way with which I can extract the same fixations offline as in the cloud?

Best, Tim

user-f43a29 12 December, 2025, 15:14:24

Hi @user-0cdc2d , may I first ask if you are using Neon or Pupil Invisible?

user-53b146 14 December, 2025, 09:55:09

Hi, I aim to use gaze_mapper.py on real-time-screen-gaze and surface_tracker via Git to capture gaze on the monitor in real time. However, the coordinates obtained are being interpreted as the monitor's boundaries, as shown by the red line in the attached image. Is there an API we need that we're missing? Or is there another cause?

Chat image

user-f43a29 15 December, 2025, 09:14:03

Hi @user-53b146 , may I ask some clarifying questions first:

  • Do you mean you have extracted code from the real-time-screen-gaze package and mixed that with the Surface Tracker plugin of Neon Player?
  • The default assumption of the real-time-screen-gaze package is that you are mapping gaze to the surface of the screen (i.e., the monitor boundaries), so it is expected that the coordinates obtained are interpreted relative to said boundaries. What is the ultimate goal you are trying to achieve?
user-ffef53 15 December, 2025, 09:00:11

Hi! I have a question related to real-time streaming:

Can you stream the data of the eye tracker directly from the companion device to your computer, without saving anything on the companion device? I know there are streaming and recording features in the real-time API here (https://pupil-labs.github.io/pl-realtime-api/dev/methods/async/remote-control/) but wondered if we can control storage location.

user-f43a29 15 December, 2025, 09:07:00

Hi @user-ffef53 , yes, recording is not a pre-requisite for streaming. With the Real-time API, you can

  • Start/stop a recording without streaming (& send Events)
  • Streaming without recording
  • Record and stream simultaneously

including more.

You can even do all of this while using the Lab Streaming Layer integration at the same time, and multiple computers can connect simultaneously to the same device to access all of this functionality.

You can also run Neon Monitor at the same time as recording & streaming, similarly with PsychoPy and other programmatic integrations.

With respect to storage location, you mean you want the data not saved immediately to the phone's harddrive (or not saved at all to the phone?), but immediately saved to the harddrive of some other computer?

user-131156 15 December, 2025, 09:08:11

Hi

user-0c1d72 15 December, 2025, 09:08:23

I hope you are well

user-a29f3a 15 December, 2025, 09:08:31

I just received my product

user-92833e 15 December, 2025, 09:08:39

Chat image

user-ef1044 15 December, 2025, 09:08:48

How I can adjust the strap

user-f43a29 15 December, 2025, 09:09:46

Hi @user-910ceb , I moved your posts to the ๐Ÿ‘“ neon channel. Great to hear it worked out. Yes, you just pull/push the two tabs at the back to adjust the strap. Let us know how it goes and if you have any other questions.

user-d768e4 15 December, 2025, 09:08:55

Fixed ๐Ÿ’™

user-ffef53 15 December, 2025, 09:55:09

Yes, we want the data saved directly to the computer instead of the companion device (as is the default behavior)

user-f43a29 15 December, 2025, 10:02:31

Ok, then it depends on which data streams you need and how much programming effort can be allotted to the task:

  • The Real-time API is meant for streaming/monitoring, interaction, and remote-control. For high data fidelity, at the full sampling rate, it is recommended to run a recording in parallel on the phone and save the data there for later analysis. Data streamed over the network could potentially be dropped, depending on network quality and connection type. If this method is necessary, then using an Ethernet cable is a good option.
  • If using just the Real-time API and you want to use our tools, such as Neon Player or pl-neon-recording, then you need to save the data in the same format as the Neon Companion app does. Since our data formats are open, this is possible. This is where the programming effort would mostly be focused.
  • If you only need gaze, 3D eye state (e.g., pupil diameter and eyelid aperture), and Events, then you can use Neon's Lab Streaming Layer integration. This will stream the data to the computer, save it in the XDF format, and then you can open it with the pyxdf or MATLAB XDF loaders. This is not the same as our data format, although it is also open, and does not contain all data streams from Neon, but does save the effort of writing code to produce a data format from a streaming source.
user-ffef53 15 December, 2025, 10:06:15

This is very useful thank you!

user-ffef53 15 December, 2025, 10:08:36

Also another quick question regarding real-time, has anyone tried using a hotspot on the companion device and connect the monitor PC to the companion device's hotspot? previously we were using a local network, but we'd like to know if it's feasible to get cell service on the companion device and then make a hotspot so we can still use the monitor

user-f43a29 15 December, 2025, 10:13:45

Hi @user-ffef53 , it is not necessary to have cell service to create a hotspot. Many phones create hotspots by re-purposing the WiFi chip in the phone. This approach of running the hotspot on the Companion device has been tried and is used by some, I believe.

user-ffef53 15 December, 2025, 10:59:30

Ok good to know, thanks again! I just tried this and I think the wifi-hotspot causes issues for us because those networks have specific security measures, but I will try some work arounds

user-a55486 15 December, 2025, 17:29:09

Hi devs! I have a question regarding how to use the time_offset_ms and roundtrip_duration_ms generated by device.estimate_time_offset() in the realtime API.

If I understand it correctly, time offset is the offset between the two clocks. However, it's unclear to me whether this offset has been corrected for the roundtrip time. If so, I think it makes a lot of sense to send events using neon.send_event(event_name, int(time.time_ns() - offset)). If not, however, users should be wary that the time offset also contains the time required for the ping signals to travel between the devices, and thus should do neon.send_event(event_name, int(time.time_ns() - offset + roundtrip_duration)) In our recordings, we observed that the events are often timestamped earlier than they should be, suggesting the latter is more possible. But I want a confirmation from the team on this matter. Thanks a lot in advance!

user-f43a29 15 December, 2025, 17:50:36

Hi @user-a55486 , clock offset is independent of transmission latency, but you are correct that it is the offset between the two clocks. Also, roundtrip time is the amount of time it takes for the Time Echo data to reach Neon and be returned to the client; not necessarily the amount of time it takes for an Event packet to reach Neon. The offset and roundtrip time provided by that function measure two different things and you do not want to subtract or add them to each other. Please see this post and let us know if that clears things up: https://discord.com/channels/285728493612957698/1047111711230009405/1438132613775622244

Regarding the timing discrepancy that you see, it will be helpful to see the snippet of code that manages the offset measurement and Event sending.

user-a55486 15 December, 2025, 18:17:43

Thanks Rob for the reply! The post is helpful in explaining how, when the measured clock offset is objectively accurate, mitigates the problem. However, my question is actually about how the clock offset is measured. I imagine you would send a command from PC (and log PC_time), when the command reaches companion, companion sends back its clock time (companion_time) to PC. PC then receives this time, and compare it with PC_time to derive the clock offset. If this is the case, I personally believe the clock offset might have been overestimated, given that the original command from PC to companion also takes transmission time (which could be assumed to be roundtrip_duration / 2). What do you think about this possibility? Or has the realtime api corrected for this delay?

user-f43a29 15 December, 2025, 18:22:32

Hi @user-a55486 , this is already accounted for in the provided time_offset_ms attribute. The full algorithm specification can be read here and the code is here.

Once you can send the snippet of code that manages the offset measurement and Event sending, then we are in a better position to help.

user-a55486 15 December, 2025, 18:31:32

Thanks for point to the documentation! It does exactly the type of correction I was wondering about. Then it is indeed a bit mysterious why our events are over-compensated. Here's my code snippet: offset = device.estimate_time_offset(500).time_offset_ms.median * 1_000_000 # Estimate 500 times and take the median, convert from ms to ns device.recording_start() ... device.send_event("xxx", int(time.time_ns() - offset))

user-f43a29 15 December, 2025, 20:22:47

Thanks, @user-a55486 . 500 estimates is probably more than necessary, but could you share what you use as a reference to judge that the Events are timestamped earlier than they should be?

user-a55486 15 December, 2025, 20:48:48

We used a simple psychopy experiment, where we presented stimuli (e.g. fixation cross). And then I how well the timing of events aligns with stimulus onset in the video. For example in this recording, when "fixation cross" event is logged, the actual fixation hasn't been shown yet. It is only after another ~250ms the fixation actually appears.

the PsychoPy code is: fix_cross.draw() device.send_event("fixation onset", int(time.time_ns() - offset)) win.flip()

I considered if send_event would take some time so that win.flip() was delayed during its execution, but in your source code send event is async, so I guess it's not likely?

Chat image Chat image

user-f43a29 15 December, 2025, 21:05:10

Thanks. Trying to time the send_event to happen in correspondence with the flip like that is not guaranteed by PsychoPy, unless you use their callOnFlip method. Could you try wrapping that send_event into a simple function that is passed to callOnFlip as such?

def send_fixation_event_psychopy():
    device.send_event("fixation onset", int(time.time_ns() - offset))

win.callOnFlip(send_fixation_event_psychopy)

...

fix_cross.draw()
win.flip()
user-a55486 15 December, 2025, 20:50:03

The image upload failed in dc, trying again. The diamond event is the logged "fixation onset"

Chat image Chat image

user-a55486 15 December, 2025, 21:52:30

Thanks for the hint! I will try it out tomorrow

user-f43a29 15 December, 2025, 22:03:45

You are welcome, but please note that you might still see some discrepancy, which will be due to a mix of:

  • Operating System
  • GPU & drivers
  • Display latency
  • The demands that the experiment places on the system

Depending on your requirements, you can configure your system to reduce this residual discrepancy. as well as measure things like display latency with a photometer. The PsychoPy documentation and forums should contain more information about some of these steps in the context of their system.

user-53b146 16 December, 2025, 09:06:28

https://discordapp.com/channels/285728493612957698/1047111711230009405/1438110550860103742 The goals I'm trying to achieve are outlined in this chat history. I used the surface trucker because it seemed referenced in the real-time-screen-gaze package, but was it unnecessary?

user-f43a29 16 December, 2025, 09:07:54

For Neon, the Surface Tracker is not used in real-time. You only need the real-time-screen-gaze package in this instance.

user-f43a29 16 December, 2025, 09:08:20

In your original messages, it sounded like you wanted to know the coordinates on the monitor, but in your newest message, it sounds like you do not want coordinates on the monitor? Am I correct?

user-f43a29 16 December, 2025, 09:08:56

Can you also explain how you generated that red boundary in the image here? https://discord.com/channels/285728493612957698/1047111711230009405/1449701237774880922

user-53b146 16 December, 2025, 09:14:05

I want to know the coordinates on the monitor. The red line in the image was drawn by me to indicate that the monitor position is displayed incorrectly when the code I created is executed.

user-0cdc2d 16 December, 2025, 12:55:07

Hi, we are using Neon!

user-f43a29 17 December, 2025, 11:32:45

Ok, that documentation is for Pupil Player, which is for Pupil Core and Pupil Invisible.

If you want to extract fixations from Neon offline, then you want to use Neon Player or this CSV export example script for pl-neon-recording. Documentation about Neon's fixations, as well as papers about its fixation detector can be found here. Please note that Neon's fixation detector is fundamentally different from that used in Pupil Player.

user-a55486 17 December, 2025, 11:17:11

Hi Rob, I'm happy to report that calling send_event after win.flip() actully makes the event timestamp more accurate. Calling it before win.flip() will log the event earlier than it should be. No significant difference was seen between using send_event after win.flip() and using the win.callOnFlip() method. In both cases, the temporal discrepancy is ~50ms which is considerably low enough given the scene camera's 30FPS

user-f43a29 17 December, 2025, 11:35:14

Hi @user-a55486 , great. If PsychoPy can provide you with its estimate of stimulus onset time, then you should be able reduce that discrepancy even further. Their team/forums would be able to provide more support in that regard. You may just then need to estimate the difference between PsychoPy's clock and Neon's clock. I have reference code for doing this with Psychtoolbox's clock that I can post.

user-98b2a9 17 December, 2025, 11:30:33

Hi! Iโ€™m planning to run an experiment on which I use the position of the eye in real time, in order to generate a change/decision on the task. Iโ€™m using matlab and psychtoolbox for the task. Is possible to access the livestream of eye position for this type of eye-computer-interface?

user-f43a29 17 December, 2025, 11:33:29

Hi @user-98b2a9 , yes, this is possible. Please check our MATLAB wrapper for Neon's Real-time API and let us know if you have any questions.

user-0cdc2d 17 December, 2025, 11:52:27

Hi, thanks for the info! Sorry for getting the names mixed up. I used neon player to get fixations from a recording from the companion device, however the fixations i got from exporting from pupil cloud are different. The fixations.csv found in neon_player/offline_data after analysing the same video in neon player are different from the fixations.csv from Timeseries_Data after downloading from Pupil Cloud. So my question is rather is the fixation detector also different between neon player and pupil cloud?

In your link it was mentioned that the Pupil Labs fixation detector is used in Neon. Does that mean neon player or pupil cloud?

user-f43a29 17 December, 2025, 11:56:09

Hi @user-0cdc2d , the Real-time fixation detector runs in the Neon Companion app on the phone, if a 200Hz Data Rate is enabled (the default). These real-time detected fixations are present in the Native Recording Data, as used by Neon Player, and then re-used on Pupil Cloud. If a different Data Rate was used during recording, then Pupil Cloud runs the fixation detector over the data.

May I ask if you could open a Support Ticket in ๐Ÿ›Ÿ troubleshooting about this?

user-2e5a7e 17 December, 2025, 17:46:29

Hello! I have a question regarding timestamps. I'd like to obtain UTC (i.e., epoch time) timestamps for the video frames from the sensor/eye cameras. However, based on my understanding, the first sample in the gaze.csv timeseries doesn't align with the first eye-camera video frame. Correct me if I'm wrong.

If this is the case, what is the best way to determine the UTC timestamp corresponding to the first eye-camera video frame?

user-d407c1 17 December, 2025, 18:45:22

Hi @user-2e5a7e ๐Ÿ‘‹ ! If you do not mind using Python and the Native recording format, you can simply use our library pl-neon-recording .

Simply install it pip install pupil-labs-neon-recording and:

import pupil_labs.neon_recording as nr
recording = nr.open("YOUR_PATH_TO_NATIVE_REC")
print(recording.eye.time[0])

would get you the first eye camera timestamp.

PS: If you have astral's uv , you can open a python shell with the library by using

uv run -p 3.12 --with pupil-labs-neon-recording python and copy the above.

user-2e5a7e 18 December, 2025, 17:14:46

Perfect, thank you!

user-5b6ea3 18 December, 2025, 10:22:08

Hi, I have a question. In my study, children will wear the Crawl Walk Run model and sit on the floor, and play with toys.

I noticed from the video that the center of the gaze is at the lower bottom of the screen (like the picture I sent, the child is playing with the toy, and they should be fixating on the toy that is at the bottom of the screen). I think this is due to children looking down while playing, and the scene camera waw recording the front, and the vertical field of view is not wide enough.

Any suggestions on how to set up the eye-tracker so we can record their hands better? Thank you!

Chat image

user-d407c1 18 December, 2025, 10:52:47

Hi @user-5b6ea3 g ๐Ÿ‘‹
Just to make sure I understand correctly, what you report is that their hands are falling outside the scene cameraโ€™s vertical field of view (~80ยฐ)?

If thatโ€™s the case, one option to extend the FoV, would be to use an additional third-party camera with a wider field of view and map the gaze data, as shown here:
https://docs.pupil-labs.com/alpha-lab/egocentric-video-mapper/

user-5b6ea3 18 December, 2025, 11:07:38

Yes, that was my problem. The third-party camera can be helpful, but it might be a little bit too heavy for a child. I will look into that. Thank you.

user-d407c1 18 December, 2025, 11:12:05

On that example, we used an Insta360 which could be more minimal than a traditional GoPro, but there might be even other options in the market

user-4c21e5 18 December, 2025, 11:56:49

Hi, @user-5b6ea3! Do you find your children gaze downward more, relative to their head position? Usually in adults, similar gazing coincides with head tilt, to make it easier to look at the object. I also get that an additional camera might be cumbersome. Could you consider putting the toy on a small table to bring it higher in the visual field?

user-5b6ea3 18 December, 2025, 12:31:56

unfortunately no, our set up is for freely exploring the space

user-e4d004 18 December, 2025, 13:34:54

Hello, I am working on a project to study gaze vector during gait tasks. I will synchronize motion capture and eye tracking data, and will buy Neon Glasses for this purpose. Which Neon version or frame type is the most indicated for this kind of measurement?

user-d407c1 18 December, 2025, 14:18:07

Hi @user-e4d004 ๐Ÿ‘‹ ! If you have a Motion Capture system that uses passive reflective markers, you would probably want the frame Every Move You Make or I Can Track Clearly Now depending on whether you want to use prescription lenses or not.

user-e4d004 18 December, 2025, 16:06:18

Thank you so much!

user-9131cb 18 December, 2025, 14:38:40

Hello, I am currently trying to get your Web AOIS application up and running. Everything works fine, but when I try to create a heat map from the data, it is completely off. In addition, after some runs, the data tables are entirely empty. I think this might be because the April tags are not being recognized correctly. I have already tried playing around with the exposure, screen size, distance, and everything else I could think of. Is there anything else I can try?

user-d407c1 18 December, 2025, 14:43:53

Hi @user-9131cb ๐Ÿ‘‹ ! Do you have your recordings in Cloud?

user-d407c1 18 December, 2025, 14:44:23

If so, you can invite us [email removed] to your workspace and we can have a look and give you feedback.

user-e0026b 18 December, 2025, 15:05:46

Hello, we are experiencing an issue when controlling the Pupil Labs Neon via a PC (Windows or macOS) or when starting a recording. After two to three recordings that were successfully started and stopped, it is no longer possible to start a new recording, as a network error is displayed on the PC.

We have tested this both within a shared network (PC and device connected to the same network) and via the hotspot of the supplied Motorola smartphone. We have also tried using the Chrome and Firefox browsers.

Could this be a device-specific issue, or are there certain browser settings that could resolve this behavior? Alternatively, we would like to ask whether it is possible to use the Pupil Capture software with the Pupil Labs Neon.

user-f43a29 18 December, 2025, 15:09:53

Hi @user-e0026b , do I understand correctly that you are using Neon Monitor?

May I ask:

  • How long are those recordings?
  • What version of the Neon Companion app are you running?

Regarding Pupil Capture, there is only experimental support for using Neon that way and it requires running from source on Linux or Mac. This will also mean that you use Pupil Core's gaze estimation pipeline, which requires calibration. Why would you like to use it this way?

user-9131cb 18 December, 2025, 15:20:11

Okay thanks. I have send you an invite.

user-d407c1 19 December, 2025, 11:00:47

Hi @user-9131cb ๐Ÿ‘‹ ! Iโ€™ve looked at the recordings, and it seems the markers might are too dim. If youโ€™re using the code from the tutorial, could you try increasing the brightness value in this line so the markers better match the screen brightness?

user-e0026b 19 December, 2025, 07:58:54

@user-f43a29 thank you for your quick response. Currently, version 2.9.23-prod of the Neon Companion App is installed on the Motorola device. The individual recordings are approximately 10 seconds long, with a pause of about 10โ€“20 seconds before the next recording is started.

user-f43a29 19 December, 2025, 11:28:18

Hi @user-e0026b , the latest version of the Neon Companion app is v2.9.26-prod. It would be worth it to upgrade and give it another try.

Otherwise, may I ask why you make several short recordings? The recommended way to track experiments with Neon is to make one long recording and mark beginning/end of trials with Events, which can also be sent via Neon Monitor.

user-9131cb 19 December, 2025, 11:25:36

Thank you, I will try this when I get back in the office after christmas and report back to you. Happy holidays ๐Ÿ™‚

user-d407c1 19 December, 2025, 11:27:13

Happy holidays to you too!

user-5c56d0 22 December, 2025, 02:23:42

Dear Sir I apologize for troubling you when you are busy, could you kindly respond to the following questions?

Q1 Could you please explain the differences between the following products? For System โ‘ก, is the only difference from โ‘  the appearance (for example, is the bare metal part of โ‘ก less noticeable to others)? Regarding โ‘ข, since it seems to include multiple lenses with different diopters, does this mean that users with poor eyesight can use it without wearing their own glasses?

System โ‘  Just act natural โ‘ก Nothing to see here โ‘ข I can see clearly now

Q2 Do all of these systems come with a smartphone as standard (i.e., is the companion device a smartphone)?

Q3 When purchasing only the frames for each system, is it necessary to purchase the 6,090-euro bare metal unit as well? Alternatively, is it possible to detach the bare metal part from a NEON unit that we already own and attach it freely to different frames?

user-c2d375 22 December, 2025, 07:15:34

Hi @user-5c56d0. Iโ€™m happy to clarify:

Q1: Regarding the "Just act natural" and "Nothing to see here" frames, yes, the only difference is cosmetic. Specifically, it affects how visible the Neon module is to others. For reference, the "Bare Metal" is not the Neon module itself, but the nest PCB, which can be purchased separately if you want to develop your own custom frame. The cosmetic difference between "Just act natural" and "Nothing to see here" can be useful in applications such as consumer research, where researchers want participants to wear a very inconspicuous eye tracker to ensure natural behavior, as if they were wearing normal glasses.

For "I can see clearly now", you are correct. This frame comes with a magnetically swappable lens kit ranging from -3 to +3 in 0.5 diopter steps. This allows researchers to fit the lenses needed for each participant so they can use the eye tracking glasses without wearing their own prescription glasses.

Q2: Yes, all Neon bundles come with an Android smartphone as the Neon Companion device. We are currently shipping the Samsung S25.

Q3: Every Neon bundle already includes the Neon module attached to the frame, meaning the system is ready to use. When purchasing a bundle, you do not need to buy anything extra, as it already includes the frame of your choice, the Neon module, and the Neon Companion device.

If you would like to swap frames depending on participant needs (for example, a "Just act natural" frame for participants who do not need glasses, and an "I can see clearly now" frame for those who do), you can purchase an additional accessory frame - not a full bundle - and simply transfer the module across frames. This is straightforward, as the module attaches to the frame with just two screws.

user-5c56d0 22 December, 2025, 07:20:31

@user-c2d375 Thank you very much for your reply. Iโ€™m sorry to trouble you again, but could you please confirm whether my understanding below is correct?

Regarding Q3, with a full bundle I can remove the Neon module from one frame and attach it to another frame by myself (for example, I can take the Neon module from the โ€œJust act naturalโ€ frame and mount it on the โ€œI can see clearly nowโ€ frame).

user-c2d375 22 December, 2025, 07:22:21

Yes, thatโ€™s correct! Our documentation includes a dedicated guide with a video to help users swap the Neon module correctly between different frames.

user-5c56d0 22 December, 2025, 08:51:56

Thank you!!!

user-912183 22 December, 2025, 12:10:33

Hi, does the eyelid data available if I import the raw data directly from the Companion app over USB? I am particularly interesting in eyelid angles and eyelid aperture. I am looking at https://pupil-labs.github.io/pl-realtime-api/dev/api/async/#pupil_labs.realtime_api.streaming.gaze.GazeDataType, EyestateEyelidGazeData class, it seems it includes both, but still not quite clear from the docs. Could you also send the link to the available eyestate/eyelid fields doc for raw recordings imported directly from Companion app. Thank you.

user-d407c1 22 December, 2025, 12:26:06

Hi @user-912183 ๐Ÿ‘‹ ! Eye lid aperture, also referred as eye openness in our documentation is part of the eye state data.

Your are pointing to the realtime api documentation, and yes, it is available in real time if you enable "Compute eye state" from versions +2.9.0 or above of the Companion App.

But it seems you want to access the data post recording instead, and using the native recording rather than the Timeseries, is that correct? If so, you would probably want to access the eye state data using pl-neon-recording as shown here https://github.com/pupil-labs/pl-neon-recording/blob/main/examples/csv_export.py#L186-L217

user-912183 22 December, 2025, 13:08:49

Thank you for info. That's right I am using the raw native recording import, I just was not sure if all the fields listed in the pl neon recording are available in my case. Thank you for clarifying.

user-743e57 24 December, 2025, 00:30:24

Hello! I am curious about the difference between the output from Pupil Cloud vs Neon Player. Thank you!

user-4c21e5 24 December, 2025, 11:24:02

Hi @user-743e57 ๐Ÿ‘‹. Both Pupil Cloud and Neon Player allow you to process and analyse data recorded with our Neon eye tracking system. Both enable you to replay recordings and export data streams, such as fixations, saccades, and video overlays, to name a few.

For a full breakdown of analysis tools and data formats, please refer to our online documentation: - Pupil Cloud - Neon Player

That said, Pupil Cloud does offer advanced capabilities not available in Neon Player, including aggregate AOI metrics, workspace sharing for team collaboration, and powerful computer vision algorithms like the Reference Image Mapper. It also has optional anonymisation features, like face blurring.

Do you have a specific use case in mind or questions about any of these? Weโ€™d be happy to arrange a demo and Q&A session to walk you through both platforms and determine the best fit for your project. Just let me know!

user-b4808a 27 December, 2025, 09:11:50

hey I'm working on pupil neon eye tracker for my Mtech thesis in IIT Madras, Chennai, India. In my pupil cloud it is showing cloud plan expired. So do i need to recharge to get my recorded videos and datas from eyetracker and how to do that

user-4c21e5 27 December, 2025, 11:09:02

Hi @user-b4808a ๐Ÿ‘‹. If you want to work with those recordings in Pupil Cloud, you can either purchase an Unlimited Analysis Plan, or download and delete recordings from the free 2-hour quota to free up space. Recordings will become available in turn. If you choose to work with your recordings offline, we have free workflows. For example, you can use Neon Player, our desktop software. Just drag and drop them onto the software to playback and process them. We also have a Python recording library if you want to work with the recordings programmatically.

End of December archive