👓 neon


Year

user-898b32 03 August, 2026, 09:23:50

Hi all! I was wondering, once I retire an old tracker (invisible) and bought a new one (neon), can I exchange that old device in the list of licensed devices in the premium cloud account? Thanks 🙂

rob 03 August, 2026, 09:24:27

Hi @user-898b32 , can you please send an email to info@pupil-labs.com about this? Thanks

user-b57ada 03 August, 2026, 11:46:53

Hi! I just wanted to double-check something. I work on one Pupil Cloud account with a colleague, who uses an Invisible. We're getting notifications in Pupil Cloud that storage is going to be full soon, but my Neons all have an unlimited storage & analysis plan. So am I correct that the notification is only for my colleagues Invisible, and I can continue working with unlimited storage?

user-c71f23 03 August, 2026, 13:12:49

Hi all,

We recently bought a new Pupil Labs Neon device and previously used Pupil Core in our experiments.

To quickly adapt the Neon to my existing experimental setup, I tried using it with Pupil Capture. I read that this is possible on macOS and Linux; however, is there any way to make it work on Windows?

I couldn't get it to work on my Windows machine. Has anyone managed to do this or found a workaround?

Thanks in advance!

rob 03 August, 2026, 13:17:16

Hi @user-c71f23 , please note that this is an experimental way to use Neon and it has not seen any development attention in about 2 years. It does not work on Windows and using Neon this way will also lose most of its power, such as calibration-free, more data streams, fully mobile, etc. If you still need to use Pupil Capture, you will have overall an easier time using Pupil Core with Pupil Capture and transitioning your system to Neon's Real-time API in parallel.

Let us know if you have any questions about transitioning and if you have not yet had your free 30-minute Onboarding, please send an email to info@pupil-labs.com to schedule one for your group.

user-50f12a 03 August, 2026, 15:37:37

Hello, we are planning a study with multiple devices including the Neon and we want to synchronise via LSL. Do I understand correctly that the Neon will stream only raw gaze data via LSL? Then the parsing of fixations and accessing the scene camera recording for ROI based analysis is done with the data uploaded to the cloud? How do we synchronise our other LSL streams with this scene camera / fixation ROI data - is it just regular events sent in both the cloud and the LSL stream? If yes, is there built in functionality for this in the app?

rob 03 August, 2026, 15:57:52

Hi @user-50f12a , here are my responses:

  • Are you only using Neon with LSL? If you want to have full fidelity data, easily synchronized between multiple Neons, and already annotated with Events, then check our Guide to Multiperson Eye Tracking Alpha Lab. It automates the whole process. I point this out, because LSL's LabRecorder tends to record the gaze data at a somewhat slower rate than the native Neon recordings.
  • If you want to synchronize all of Neon's data streams to the LSL timeline, then run a Neon recording in parallel and use Neon's Real-time API or Neon Monitor app to send a handful of basic Events. If you have set LabRecorder to also record the Events outlet, then the Events will appear in Neon's and LSL's timelines. You then simply align them and all of Neon's data streams are aligned to the LSL timeline. A similar method was used in our Use Neon with Mentalab EEG Alpha Lab guide.
  • You can also use this method to transfer all of the Enriched Data from Pupil Cloud to the LSL timeline.
user-50f12a 04 August, 2026, 08:37:51

Hi Rob, thanks for the answers. It's not only Neon, it will be other devices including EEG. So we will use the API or the monitor to send some basic events such as per task start and end, and make sure to record the events stream in LSL and activate the Neon local recording. With this, we can fully sync the scene camera recording and fixations from the pupil cloud?

Regarding the slower rate in LSL - you mean a reduced sample rate or a difference in age of sample? Follow up - if we record both on the device and via LSL, will the device data be complete even if the LSL stream is not, or will both be compromised by using LSL?

rob 04 August, 2026, 08:41:47

Hi @user-50f12a :

  • Yes, you can fully sync the scene camera feed and fixations from Pupil Cloud with the LSL timeline this way.
  • The slower rate over LSL is a reduced sample rate.
  • Streaming over LSL does not compromise any function of the app, so if you run a recording at the same time, the device data will be complete.

Certainly do a pilot test before collecting data and if you have any questions after that, just let us know.

user-50f12a 04 August, 2026, 08:47:10

Great, thanks a lot.

user-4440c8 04 August, 2026, 11:53:02

I have left my companion device for my Neon in Australia and am now in Europe. What is the minimum old phone (previous versions of OnePlus or Samsung) I would need to run it reliably? Thank you!

rob 04 August, 2026, 11:58:16

Hi @user-4440c8 , when you say "run reliably", what are you requirements? Do you need 200Hz gaze, fixations, and eyestate in real-time, for example? Do you primarily use Pupil Cloud or Neon Player?

user-4440c8 04 August, 2026, 14:51:59

I primarily use pupilcloud. I do not need the real-time display. The phone will sit in a pocket. Thank you

rob 04 August, 2026, 16:35:03

@user-4440c8 , then you could look into the following supported devices:

  • OnePlus 10 Pro 5G (running Android 12 or 13)
  • Moto Edge 40 Pro (Android 13, 14, and 15)
  • Moto Edge + (2023) (Android 13, 14, and 15)

These should be more affordable than the Samsung S25, but if you can find a reasonably priced S25, then that would be the most up-to-date and powerful choice.

user-4440c8 24 August, 2026, 17:26:22

Just got the S25. Works perfectly as expected. Thanks for the advice!

user-94700a 04 August, 2026, 16:03:48

In Pupil Cloud, before running the RIM enrichment all the recordings are automatically included in the enrichment list. How can I exclude the recordings that I do not want them to include while running the enrichment?

rob 04 August, 2026, 16:36:55

Hi @user-94700a , you can do this by either:

user-94700a 05 August, 2026, 14:25:26

Hello!! Is there a method or easy way to rename the files when downloading from Pupil Cloud? I wished to change the name from TimeSeries CSV and Scene Video to something else so I could distinguish multiple different files

rob 05 August, 2026, 14:37:23

Hi @user-94700a , you can currently change the names of each individual recordings within the Timeseries Data + Scene Video.zip file with Templates. Is this what you are looking for?

user-94700a 05 August, 2026, 14:39:09

I used templates to collect demographic information but I didn't know I could change the file names too! I will look into those. So there isn't a way to rename the file name in Pupil Cloud directly, is that correct?

rob 05 August, 2026, 14:40:38

You can also use the Rename option, found by right-clicking a recording.

Chat image

user-94700a 05 August, 2026, 14:44:40

Yes! What I meant was to rename the default set files. For instance, downlaoding data would always be named as TimeSeriesData+Scene Video.zip (regardless which project panel I am downloading from)

Chat image

rob 05 August, 2026, 14:46:03

That is not currently possible, because that ZIP file can contain many recordings, depending on whether you select a single recording or multiple when initiating a download. If you would like to see this changed, then feel free to open a 💡 feature-requests .

user-94700a 05 August, 2026, 14:48:15

Aha, got it. Thank you!

user-c74bf5 05 August, 2026, 16:43:34

is there any good way to synchronise signals with the neon? ideally i'd like some sort of timestamped trigger input, but i don't think theres anything like this?

rob 05 August, 2026, 17:16:43

Hi @user-c74bf5 , you would be looking for Events and our Time Sync guide. To send clock-offset corrected Events (i.e., "timestamped triggers"), check this example in our Real-time API guide.

rob 05 August, 2026, 17:17:04

Let us know after that if anything is unclear and you may also be interested in our LSL integration.

user-c74bf5 05 August, 2026, 18:07:16

hi @rob , I'm looking for accuracy <1ms when aligning with the eye camera, so I'd ideally like a lower-level way of getting out/feeding in a signal to the Neon. How well are the audio recording synchronised with the gaze data?

rob 05 August, 2026, 18:09:17

Hi @user-c74bf5 , what kind of experiment are you doing that requires that level of synchronization? Even TTL analog sync in typical eyetracking setups does not usually achieve that level of accuracy.

user-c74bf5 05 August, 2026, 18:12:15

i have very high quality head tracking data that i want to correlate with the gaze data (ideally with the shutter of the eye camera).

user-c74bf5 05 August, 2026, 18:12:40

in my experience, it's usually not a problem to get timings with uS precision with most kind of acquisition systems

rob 05 August, 2026, 18:35:44

@user-c74bf5 Do you need <1 ms precision or <1 ms accuracy? To clarify, Neon's time precision is on the order of nanoseconds and it's typical synchronization accuracy with the clock offset correction method is ~1-2 ms, depending on PC OS and how often you refresh the clock offset.

user-c74bf5 05 August, 2026, 18:12:43

(the problem is usually getting it into a desktop OS without jitter, but that's a different problem)

user-c74bf5 06 August, 2026, 14:23:11

Can I use the normal realtime api to stream data from the Neon to host a and also sync the clock to host b at the same time? I.e. does the Neon support more than connection at a time?

user-d407c1 06 August, 2026, 14:30:03

Hi @user-c74bf5 👋 ! Yes you can connect as many clients as you want to Neon through our realtime API. As a matter of fact, you would see a number above the network icon on the app indicating how many clients have subscribed to any stream.

user-13078d 07 August, 2026, 11:53:48

Hello! I am analysing the eye openess using PupilLabs Neon in real time. I have detected that during eyelid quick closure and aperture there is a significant drop in the sampling frequency. I have computed this by comparing internal timestamps given by the neon companion device. ¿Is this behaviour normal or expected? Thank you!

rob 07 August, 2026, 11:55:42

Hi @user-13078d , do you mean a drop in the gaze sampling frequency or in the frequency of a different data stream? Would you be able to run a recording at the same, while reproducing this, and send it to us for review? You can share it with data@pupil-labs.com

user-3b1668 07 August, 2026, 19:14:18

Hi everyone — we’re evaluating Neon for quantitative binocular vergence measurements and I wanted to check whether we’re using the intended processing approach.

We recorded a head-stabilized fixation sequence at known distances: 280 → 200 → 280 → 150 → 280 → 130 → 280 → 100 → 280 → 67 → 280 → 50 → 280 → 40 → 280 cm, about 20 s per fixation.

From 3d_eye_states.csv, we computed each eye’s horizontal azimuth/yaw as atan2(optical_axis_x, optical_axis_z) and then horizontal vergence as left yaw − right yaw. We also calculated the full 3-D angle between the two optical-axis vectors using the dot product.

The individual eye yaw/pitch signals respond clearly to fixation shifts, and the scene-gaze output from gaze.csv tracks the targets reasonably well. However, the inter-eye optical-axis vergence does not scale monotonically with the known vergence demand, even after subtracting the adjacent 280-cm baseline.

I’d really appreciate clarification on a few points:

Are the left/right optical axis vectors in 3d_eye_states.csv intended for quantitative vergence estimation? Is the angle between these two vectors the recommended way to calculate vergence/EVA? Does Neon provide any calibrated per-eye visual-axis/gaze vectors, or only the single calibrated gaze output in gaze.csv? Is there a known accuracy or distance range for vergence or depth estimation from the 3-D eye states?

I can attach a plot showing measured vs expected vergence if helpful (Top: left and right optical-axis yaw derived from 3d_eye_states.csv. Middle: common version (mean yaw). Bottom: measured horizontal vergence (left yaw − right yaw) compared with the expected geometric vergence for a 67-mm IPD. While the individual eye orientations and common version respond appropriately to fixation changes, the measured vergence remains compressed and does not scale with the expected vergence demand.). Thanks!

Chat image

rob 07 August, 2026, 20:05:19

Hi @user-3b1668 , please check these earlier responses to this request here:

The functions you are using implicitly assume that the optical axes intersect exactly at the same point, which is essentially never the case for the human visual system. If you try the functions in the linked post, you should notice significant improvements.

And yes, Neon does output dual monocular gaze estimates. See here for details and use the pl-neon-recording library to access it from the Native Recording Data. But note that these are monocular gaze estimates, not visual axis estimates, which is something related but different.

Otherwise, vergence itself is not a reliable way to estimate the depth of the fixated point, regardless of which eyetracker you are using. It is generally unreliable after about ~1 m.

user-3b1668 10 August, 2026, 02:25:38

Thanks, Rob! One follow-up question. Our primary outcome is the vergence angle itself, not fixation depth. We are computing either (1) the horizontal difference between the left and right eye orientations, or (2) the angle between the two eye vectors. Since both calculations depend only on vector orientation and not on whether the rays intersect, would you still recommend a different method? If so, could you point us to the specific function or formula you recommend for computing vergence from Neon’s dual monocular gaze/visual-axis estimates?

We also found that the calibrated monocular gaze streams (gaze mono left/right) show a repeatable increase in horizontal inter-eye disparity when fixation changes from 130 cm to 50 cm (a separate test), even when the two targets are nearly colocated in the scene. Are these monocular gaze outputs the signals you were referring to, or is there a separate 3-D per-eye visual-axis representation available in the Native Recording Data? Thank you!

Chat image Chat image

rob 10 August, 2026, 12:31:09

Hi @user-3b1668 , you are welcome.

First, to clarify, Neon does not provide the visual axes themselves. I have corrected my previous message in that regard; apologies for any confusion. Rather, it provides the optical axes and gaze estimates (both binocoular and dual monocular). Since gaze bears a relation to the visual axes, I was a bit loose with my terms when I said monocular gaze is the visual axis.

Each monocular gaze estimate characterises either a 2D point in pixel space, or a 3D gaze ray originating at the scene camera origin. In other words, the monocular gaze estimates are not suitable for vergence research and are better-suited to when you need to isolate a gaze measurement to one eye.

Otherwise, your methods of obtaining vergence angle from the optical axes seem reasonable. We have attached a function that we have tried. Do you still obtain the same results with this function? If you want, you can also share the recording with us [email removed] and then we can take a look and provide better feedback.

Otherwise, when you say "horizontal inter-eye disparity", I assume you mean the difference in gaze x [px], and not "inter-eye distance", which is a different quantity? If so, please note that using gaze x [px] is not a method to obtain a vergence angle estimate.

def compute_vergence_angle_degrees(v1: np.ndarray, v2: np.ndarray) -> np.ndarray:
    """Computes the angle (in degrees) between two arrays of vectors."""
    v1_normalized = _normalize_vectors(v1)
    v2_normalized = _normalize_vectors(v2)
    dot_product = np.sum(v1_normalized * v2_normalized, axis=1)
    dot_product = np.clip(dot_product, -1.0, 1.0)
    theta_rad = np.arccos(dot_product)

    return np.degrees(theta_rad)
user-af5d74 12 August, 2026, 19:19:36

Hi! I’m currently using Pupil Labs Neon (and Pupil Labs Invisible) in a setup to record video and audio. While the camera specs are described in detail, I was able to find very little on the microphone specs.

It is clear that the Neon has two integrated microphones. I have seen a reference stating that “the microphones sample audio at 44.1 kHz, 32-bit, mono AAC”.

Could you confirm or clarify these specs and, if possible, provide: • microphone manufacturer/model and type; • whether any audio processing is applied to the microphone signal before encoding, such as automatic gain control, noise suppression, high-/low-pass filtering, etc.; • whether/how the two microphone signals are mixed to mono before encoding; • how the audio is timestamped and synchronized with the scene video; • whether there is a known systematic audio/video offset or clock drift?

The main purpose is to accurately describe the recording setup and for me to assess whether there are any relevant limitations.

Thanks in advance!

rob 13 August, 2026, 09:40:53

Hi @user-af5d74 , I will answer your Neon questions here:

  • The microphone manufacturer, model, and type are not public.
  • No audio processing is applied to the microphone signal before encoding.
  • The Companion app simply requests a mono signal from the device.
  • All of Neon's datastreams are timestamped by the same high-precision clock, in UTC format with nanosecond precision.
  • For your last question, may I ask if you are primarily streaming or recording data?
user-af5d74 13 August, 2026, 15:58:17

Hello @rob, Thank you for getting back to me so quickly and providing an immediate answer to most of my questions! I am recording (and not streaming) data.

Finally, can I take “the microphones sample audio at 44.1 kHz, 32-bit, mono AAC” to mean that the recording system captures the audio at 44.1 kHz with 32-bit samples in mono, and then encodes that audio as AAC? Could you also confirm the AAC profile (e.g., AAC-LC) and bitrate?

user-ebd8d5 13 August, 2026, 15:47:46

Hi, do we have the specifications for the eye-tracking cameras (IR cameras) for pupil neon, invisible and core? Are their outputs comparable (eye-tracking videos)? Additionally, are there any open-source datasets/ datasets which can be shared, containing data collected for pupil lab (preferably neon) and other wearable sensors (such as heart rate, smart-watches etc)?

rob 13 August, 2026, 16:17:58

@user-af5d74 You are welcome. Yes, you can take it to mean that. And, it is the AAC-LC profile. The bitrate is 64 kb/s.

For future reference, this information can be extracted from a Neon Scene Camera MP4 with the ffprobe command of ffmpeg.

user-af5d74 14 August, 2026, 10:22:13

All clear, big thanks!

rob 13 August, 2026, 16:22:50

Hi @user-ebd8d5 , the specifications are listed on the product page of each device:

As well as on the Hardware pages of Neon and Pupil Invisible.

I will let members of the community chime in on open datasets. You can also check the 🔬 research-publications channel and the Publication List.

user-ebd8d5 13 August, 2026, 16:48:01

Thank you

user-ebd8d5 14 August, 2026, 08:16:51

Hi @rob : sorry, but the links you shared indicate that all three eye cameras had the same frequency and resolution. Would that imply eye-videos obtained from any of them would be comparable or how much would they differ based on IR camera placement (mounting on the frame)? For example, for testing a model trained on neon eye-video data, can we use pupil core or invisible eye-video data?

rob 13 August, 2026, 16:24:09

[email removed] (Pupil Labs),

rob 14 August, 2026, 08:21:31

Hi @user-ebd8d5 , the eye cameras on Pupil Invisible and Neon have the same fixed resolution and recording frequency. The eye videos from them are always saved at 200Hz.

The cameras on Pupil Core can ran up to 200Hz and have a default resolution of 192x192. I say, "up to", because the sampling rate with Pupil Core depends on the processing power of the computer it is connected to. Also, in the Pupil Capture software, you can change the resolution, frequency, and other parameters of Pupil Core's eye cameras away from the defaults.

While you can certainly test a model trained on eye videos from one eyetracker with eye videos from another eye tracker, I cannot guarantee that the results will be accurate or reliable, because the cameras are in different positions across all 3 eye trackers:

  • Neon places them nasally
  • Pupil Invisible places them temporally
  • Pupil Core places them a bit down and forward from temporally, and they can also be freely rotated by a user

You can see examples of the different kinds of eye images obtained with each eyetracker in the Documentation:

If you already have data and a model you want to test, you can simply try and see how it works out.

user-ebd8d5 14 August, 2026, 08:24:53

Thank you.

user-94700a 17 August, 2026, 13:23:35

Hello! I have a quick question. It is expected some of my participants' eye sights are so bad that they won't be able to read the screen monitor with the Neon glasses alone. Other than using replacement lenses, are there any ways that I can solve this problem? For example, if I let my user wear their glasses and put Neon glasses together (sounds absurd but one of my participants actually did that), will error of the gaze position increase?

rob 17 August, 2026, 13:27:48

Hi @user-94700a , we do not recommend wearing Neon on top of or under other glasses and that is also not a supported workflow, because:

  • When Neon is on top, the eye cameras can be occluded and the refraction of the extra lenses will distort the images of the eyes, thereby distorting the gaze data.
  • When Neon is underneath, then the scene camera is usually blocked or partially occluded.

In addition, it can be hard to wear two sets of glasses on the face and simultaneously do a task naturally or comfortably, especially since it is more likely that one of the glasses will fall off the face.

Our solution for this is the I can see clearly now frames, which feature swappable, magnetic lenses and come with a kit of prescription lenses. If you would like to obtain such a frame, feel free to reach out to [email removed]

user-94700a 17 August, 2026, 16:32:42

But that requires the purchase of a new frame. So there is no way to solve this with my current device?

rob 18 August, 2026, 07:55:48

Hi @user-94700a , as mentioned, I can see clearly now is our recommended and supported solution for this use case. We are unable to support using Neon with third-party glasses. If you send an email to info@pupil-labs.com then we can also discuss exchanging your frame.

user-ebd8d5 18 August, 2026, 08:09:16

Hello, could I get some additional detail on blink detection? Based on my understanding, the algorithm implemented on device is not similar to the one in https://github.com/pupil-labs/real-time-blink-detection/tree/main. Does it still work on detecting different phases of eyelid opening/closing as mentioned in the white paper (https://assets.pupil-labs.com/pdf/Pupil_Labs_Blink_Detector.pdf)?

  1. What is the accuracy of the blink detector currently implemented on the companion device or in neon player? Unfortunately, I am not able to test other blink detection algorithms as pupil size doesnt become zero during the blink? In the image, two blinks seem to be correctly identified whilst the third seems to be more of an artifact than a blink
  2. Does the blink window (start time to stop time) cover additional frames before and after eyelid closing (onset) and eyelid opening (offset)? For example, if I would like to apply algorithms such as Mahot's interpolation (pupillometry's blinks_interp_mahot()) or LHIPA, can I remove the blink windows as is or should I add some additional frames to them?

Thanks

Chat image

rob 18 August, 2026, 08:24:32

Hi @user-ebd8d5 , that Github repo is an older algorithm that detected rapid motion in the eye videos. The newer algorithm described in the whitepaper PDF that you linked describes the algorithm in that repo. The latest blink detector used for Neon is not yet documented with a whitepaper, but it extracts blinks from the more robust eyelid aperture signal and works better in dynamic scenarios.

To answer your questions:

1 - I will ask the team for an accuracy estimate, but it is also possible to estimate this with a test recording: Simply make a recording where you sit and blink a few times. The recording can be as long as you like. Then, compare the eye video, where you can clearly see the blinks, to the blink detector signal. 2 - The blink window covers the time during which a blink is detected, but not anything before or after that. For pupillometry, some groups recommend filtering out data 150ms pre- and post-blink, which would need to be done in your analysis code.

user-ebd8d5 18 August, 2026, 08:41:19

@rob Thank you for the clarifications. I did test it on a sample dataset, however, I am not sure if the accuracy would be affected by motion of the head and change in illumination/environment.

rob 18 August, 2026, 08:47:59

@user-ebd8d5 It should not be affected by motion of the head, but the older algorithm could sometimes be sensitive to motion of the glasses, for example when running. The newer algorithm has been designed to be robust against this.

rob 18 August, 2026, 08:41:20

The team says that the older algorithm, found in that repo and as described in that whitepaper, had an a recall of ~95%. The newer algorithm has similar accuracy, but works better in more dynamic scenarios.

user-ebd8d5 18 August, 2026, 08:41:49

Thank you.

user-ebd8d5 18 August, 2026, 08:55:16

@rob thank you. One additional question: are blinks too close to each other merged or are they kept the same? For example, some libraries using 100ms as a thresholding distance under which blinks are merged

rob 18 August, 2026, 09:10:39

No, subsequent blinks are not merged, even when they occur in rapid succession.

user-ebd8d5 18 August, 2026, 09:11:30

@rob, thank you

user-3d5bd7 18 August, 2026, 09:47:34

@rob Hi Rob, We received our new "I can see clearly now" eyetracker last week. Our older eyetracker (same model) has an error or broken wire in the cable from the glasses near the USB-C port. Can you help me with the procedure for sending the old one in for repair? With the newer models we can no longer replace the cable ourselves because it is attached to the glasses. I hope you can let me know what steps to take so we have two functional glasses again soon. Thank you!

user-306f4e 19 August, 2026, 09:04:32

Hi, what phones do Neon support? Is it only Samsung Galaxy s25?

rob 19 August, 2026, 09:06:26

Hi @user-306f4e , the up-to-date list of supported phones and Android versions is here. The Samsung Galaxy S25 would be the optimal choice for Neon right now.

user-306f4e 19 August, 2026, 09:06:56

Thank you.

user-306f4e 19 August, 2026, 09:14:14

Also, if we have the Invisible glasses, can we use the same API with Neon glasses to query the raw data ?

rob 19 August, 2026, 09:17:52

I assume you mean can you use the Python Real-time API package with Neon? If so, then yes, and that is independent from having Pupil Invisible. In other words, the package works with both Pupil Invisible and Neon, regardless of whether you have both devices or only one of them.

user-5e1c18 19 August, 2026, 14:07:04

Question about unlimited storage: if our plan lapses do we lose access to our videos? If so, once we buy license again do we get access to them again?

user-d407c1 19 August, 2026, 14:10:17

@user-5e1c18 That’s correct! Once a license expires, recordings exceeding the quota get locked. Once the license is activated again, they become available again.

user-dbcfec 20 August, 2026, 12:01:48

Hi, we currently use the neon for a subject study and get a lot of complaints that it gets uncomfortable hot. Is there any fix for that? Maybe sticking some fabric on the back?

rob 20 August, 2026, 12:09:49

Hi @user-dbcfec , do you have a frame with a heatsink? It looks like a separate metal cover on the front. You can send a photo if you want.

If you have a heatsink, then the module can warm up to about 10C above ambient temperature, so if the weather has been warmer than usual in your area, then these effects will combine. In any event, if this is uncomfortable for some participants, then yes, you can put foam pads on the inside. Feel free to send an email to info@pupil-labs.com to request some.

user-dbcfec 20 August, 2026, 12:32:48

Thanks for the fast reply, we will try with the foam pads. We have those too versions.

Chat image

rob 20 August, 2026, 12:43:57

Thanks for the fast reply, we will try

user-1bdd27 20 August, 2026, 12:43:57

Pupil cloud is throwing “internal server error” and partial recording is showing Grayed

rob 20 August, 2026, 12:44:33

Hi @user-1bdd27 , as mentioned in the Support Ticket, we received your email and are communicating with you there. The Pupil Cloud team is aware of your issue and my colleague is handling it for you.

user-1bdd27 20 August, 2026, 12:44:53

Thanks! 🙏

user-f89b02 20 August, 2026, 13:44:26

Hi- I have a question about trimming recordings. What is the best practice if I have a recording that I would like to cut to ensure that all the data is still properly aligned. For example, we need to remove the last 30 minutes and/or the first 2 minutes of a recording for privacy reasons. Is there a suggested way to do this? We would like to completely discard those pieces of the recording. Thanks!

rob 20 August, 2026, 14:10:23

Hi @user-f89b02 , are you using Neon Player, Pupil Cloud, or pl-neon-recording? And you want to discard these parts before you share a copy with someone, or you want to completely alter the original recorded data itself?

user-f89b02 20 August, 2026, 14:15:40

I use pl-neon-recording. I want to completely remove these parts from our dataset (don’t want to keep unnecessary personal identifiable information potentially included in these sections of the video)

rob 20 August, 2026, 14:18:13

Ok, just first please note that if you alter the original recorded data and something goes wrong, it is less likely that we will be able to help, so perhaps run it on some pilot, test data first.

Since you use pl-neon-recording, do you want the data to stay in the raw, binary format, or is a CSV version of the data for archiving acceptable? I ask, because reproducing the raw, binary format is not a simple process.

user-f89b02 20 August, 2026, 14:20:45

Yes I would test out on a copy first before trying on the real video. Ideally I think the raw binary data - essentially if we could trim the video in a way that replicates if the user had pressed record start later and record end earlier

user-94700a 20 August, 2026, 19:26:12

Hello! I recorded the gaze and uploaded to Pupil Cloud and removed. Later, I wished to reupload the recording from my Neon device to the Pupil Cloud, but I couldn't see any upload button and couldn't reprocess the video anymore. Where is the reupload feature? Or is the reupload feature not allowed?

rob 20 August, 2026, 19:32:41

Hi @user-94700a , it is not possible to re-upload to Pupil Cloud after you have deleted the recording. Pupil Cloud should have shown a warning explaining this. If not, then the recording might still be in your Trash. You can find this by clicking the three button menu next to Add filter in the top left.

user-94700a 20 August, 2026, 19:43:00

Awww got it 🙁

rob 20 August, 2026, 19:46:22

If you still have the recording on the phone, you can load it into Neon Player

user-a9f703 21 August, 2026, 05:48:51

Hi all. I have a question regarding the pupil cloud. Even though I have not used all the storage my videos can not be loaded there. What should I do?

Chat image Chat image

user-a9f703 21 August, 2026, 06:20:16

I have also another question. Can we export the pupil data based on the maerker that we want via the pupil player?

user-d407c1 21 August, 2026, 06:34:39

I assume you mean Neon Player, since you're using Neon. Yes, you can export data from a specific section of the recording.

You can either drag the two trim markers at the top of the timeline or right-click on an event you've created and set it as the start or end trim marker. When you click Export, only the section between those trim markers will be exported.

The work range bar at the top of the timeline shows the section that will be exported.

user-d407c1 21 August, 2026, 06:32:37

Hi @user-a9f703 👋! The screenshot you shared already explains the issue. The device you own has exceeded its Pupil Cloud quota. You’ve uploaded over 6 hours of recordings, while the quota is 2 hours.

Recordings exceeding the quota won’t be accessible unless you activate an ⁠Unlimited Analysis plan or free up space in Pupil Cloud by deleting existing recordings.

If you choose to delete recordings, make sure they’re also removed from the trash. The quota they occupied will then be released, and as space becomes available, recordings that are currently locked will become accessible.

Please note that deleted recordings cannot be reuploaded. So, if you plan to analyze these recordings together or use enrichments and AOIs, I’d recommend activating an Unlimited Analysis plan.

user-a9f703 21 August, 2026, 07:53:16

Thank you very much. Yes I have recoring from the trash and I will remove them.

user-a9f703 21 August, 2026, 07:54:11

Yes sorry neon plyer. Ok then I can also use neon player for putting the marker and extract the pupil dilation without using pupil cloud?

rob 21 August, 2026, 07:55:40

Hi @user-a9f703 , yes, that is correct. You can find the relevant Documentation here and here.

user-a9f703 21 August, 2026, 09:21:48

Thank you very much. In this way I do not need the pupil cloud then if I undestan correctly

rob 21 August, 2026, 09:22:33

If that is all your analysis requires, then correct, you can simply use Neon Player.

rob 21 August, 2026, 09:23:01

Pupil Cloud has more advanced analysis tools that are not available in Neon Player and offers streamlined data logistics, sharing, and backup.

user-a9f703 21 August, 2026, 09:44:05

When I export the data in which file I can find the pupil dilation based on the events that I put? Thank you very much

user-a9f703 21 August, 2026, 09:41:05

No i do not need more advanced analysis and I just need the pupil dilation during some specific events

rob 21 August, 2026, 10:26:39

Hi @user-a9f703 , that is documented here. It is in the 3d_eye_states.csv file, just like with the Timeseries CSV data from Pupil Cloud.

user-a9f703 21 August, 2026, 11:14:06

Hi Rob. thank you very much for your help. I found it

user-94700a 24 August, 2026, 01:07:01

Hello! I was out of storage of Neon compatible device (Galaxy) and tried to use SD card, but there was no slot for it. Is there a way to use it? Or is it possible to store the video temporarily in the Google Drive and store it back and process later in Pupil Cloud?

user-d407c1 24 August, 2026, 06:06:47

Hi @user-94700a 👋! The Companion Device doesn’t support SD cards, so recordings need to be stored locally on the device during recording.

If you’re running low on storage, you can free up space by uploading existing recordings to Pupil Cloud and then removing the local copies from the Companion Device.

Alternatively, you can transfer recordings to a computer. From there, you can upload them to Google Drive if you wish and your ethics committee allows it.

Note, however, that restoring recordings to the Companion Device later or re-uploading them to Pupil Cloud from a computer aren’t supported workflows.

user-bd5142 24 August, 2026, 07:47:03

Hi Would you kindly recommend a brand and model for a dedicated router?

user-d407c1 24 August, 2026, 08:10:54

Hi @user-bd5142 ! We don’t recommend any particular brand or model, as availability depends on the region and country. Any modern router should work fine to stream data from Neon to your computer.

Kindly note that the S25 as Companion Device, supports Wi-Fi 7, so if your computer/client does also, you can benefit from that data speed and latency.

user-bd5142 24 August, 2026, 08:30:44

Thanks

user-c6dc34 25 August, 2026, 13:02:47

Hello! I found this Pupil Labs repo: pl-neon-usb. It looks like the Neon scene camera is basically an 8 MP UVC camera, and you can directly control parameters like exposure/gain at runtime. That would be super interesting for me because I could adapt the camera settings while driving to keep the image clear, and potentially connect the Neon directly to a Jetson AGX Orin.

The only thing I’m unsure about: it seems like in this setup you only get the raw scene/eye cameras + IMU, but no gaze output. Is there any way to recompute the gaze afterwards from the recorded eye cameras?

rob 25 August, 2026, 13:12:16

Hi @user-c6dc34 , NeonNet (i.e., the gaze estimation pipeline) only runs in the Neon Companion app on the phone and on Pupil Cloud. We do not provide methods to run it on the images obtained via pl-neon-usb. Rather, at run time, you can control the scene camera parameters, such as gain & exposure, via newly added commands to the Real-time API.

user-c6dc34 25 August, 2026, 13:13:27

That's amazing, thank you!

user-b57ada 25 August, 2026, 14:51:46

Hello! I was wondering where I can find the fixation detection algorithm that is used to create the fixations.csv datafile that I can export from Pupil Cloud?

rob 25 August, 2026, 14:56:46

Hi @user-b57ada , that is documented in the:

user-b57ada 25 August, 2026, 14:58:22

Brilliant, thank you very much!

user-a9f703 26 August, 2026, 15:03:11

Hi all . I have a recording with Neon and in the beginning the red circle was moving and showed where the participant is looking but after some second it was stuck and it did not move until the end of the study. Does anybody know the reason and is there any way that I can use the data eventhough the gaze is stuck?

rob 26 August, 2026, 15:21:48

Hi @user-a9f703 , would you be open to sharing the recording with [email removed] You can use any file sharing service you prefer. Then, we can provide better feedback.

user-a9f703 26 August, 2026, 15:25:37

It is the child data and due to the data protection I can not share it. I turn of the phone and turn it on and record with the next participant and there was no issue at all.

rob 26 August, 2026, 15:27:54

How young was the child? There is a chance that the headset slipped and lost tracking of the eyes. Can you inspect the eye videos from that recording and see if the eyes are always in view of the cameras, or if they slip out of view around the same time that the gaze circle stops moving?

user-a9f703 26 August, 2026, 15:32:11

I will check it and let you know. Should I write you here? After that I have also tried with one of my students and it was the same problem. After restarting the phone, there was no problem.

user-94700a 26 August, 2026, 21:10:42

A quick question (sorry I can't confirm myself right now!) Does the timeseries csv + scene video also include audio recording? Or does audio only included in the Native Recording Data?

user-56d535 27 August, 2026, 06:06:37

Hi I want an orientation on the device's use and data extraction. Could you please guide me to the right place?

user-2ea7d0 27 August, 2026, 06:06:57

Hi @user-ddae47 ! Which product do you have Pupil Core, Neon, or Pupil Invisible? Once we know that, we can guide you through the next steps.

If you recently purchased the product, you might also be eligible for an onboarding session. Please reach out to info@pupil-labs.com with your purchase order, and we’ll check your eligibility and arrange it.

user-a06d33 27 August, 2026, 06:07:05

Hi I borrowed Neon from another lab to see if it works for my study and want to buy one if it serves my purpose. Can I talk to someone from the company to also ask for some customizations?

user-d407c1 27 August, 2026, 06:15:16

Hi @user-ddae47 ! I’ve moved your messages to the Neon channel so we can continue the discussion here.

Yes, you can schedule a demo call to discuss your requirements and any customisations you might need. Please note though, that these calls are intended to demonstrate the system and discuss your requirements rather than provide onboarding. Before the call, could you let us know what you’d like to customise here or via [email removed] That way, we can prepare in advance.

Regarding onboarding, we typically offer a free 30-minute session with the purchase of a device. Since you’re borrowing this system, I’d recommend checking with the owner to see whether they’ve already used the onboarding session or would be happy for you to use it.

If you need additional support via video calls, we also offer support packages for more dedicated assistance.

In the meantime, our Neon documentation should help you get started, and we’re happy to answer specific questions here. For example, you can transfer recordings via USB and open them in Neon Player.

What kind of analysis are you looking to perform, and are you planning to use Pupil Cloud? That will help us point you in the right direction.

End of August archive